понедельник, 24 февраля 2014 г.

Ускоряем Интернет с помощью локального кэширующего DNS-сервера - PDNSD

Не секрет, что скорость открытия web-страниц в браузере зависит от ширины Вашего Интернет-канала.
Однако не меньшее влияние на этот процесс имеет работа DNS-серверов. Если предоставляемый Вам провайдером DNS-сервер сбоит или отвечает с большой задержкой - то никакой сверхширокий канал не улучшит ситуацию. Решить проблему можно установив свой локальный кэширующий DNS-сервер.

В качестве такого сервера мы будем использовать лёгкий и быстрый PDNSD. Установим его командой в терминале:

sudo apt-get install pdnsd
 

Перед Вами должно появиться окно с запросом о способе настройки pdnsd. Если такое окно не появилось - то скорее всего Вы уже устанавливали пакет pdnsd и удалили его через sudo apt-get remove pdnsd (при этом конфигурационные файлы пакета остались). В таком случае необходимо запустить перенастройку пакета командой в терминале:

sudo dpkg-reconfigure pdnsd


Итак, перед нами окно с запросом о способе настройки pdnsd.
  

 Т.к. мы хотим получить быстрое, стабильное и независящее от DNS-провайдеров решение - нам нужно использование корневых серверов. Перемещаемся клавишей <Tab> на пункт <Ok> и жмём <Enter>.


На следующем окне выбираем выбираем пункт "использовать корневые серверы" и затем клавишей <Tab> перемещаемся на пункт <Ok> и жмём <Enter>.

Проверим настройки запуска pdnsd. Набираем в терминале:

cat /etc/default/pdnsd
  

Проверяем наличие опций START_DAEMON=yes и AUTO_MODE=recurse.
  

В данном режиме пакет pdnsd будет брать настройки не из файла /etc/pdnsd.conf, а из файла /usr/share/pdnsd/pdnsd-recurse.conf
Откроем файл настроек pdnsd командой в терминале:

sudo nano /usr/share/pdnsd/pdnsd-recurse.conf



Мы увидим следующее:


Параметр perm_cache определяет сколько памяти в килобайтах будет отводиться под кеш (по умолчанию 2048).
Если Ваша система обслуживает целую сеть - рекомендуется увеличить это значение, например до 65536.
Ещё один важный для нас параметр server_ip (по умолчанию 127.0.0.1) - он определяет интерфейс на котором pdnsd будет принимать запросы. Для одиночного ПК можно оставить 127.0.0.1, но если Вы планируете быть быстрым DNS-сервером для своей сети - нужно указать Ваш сетевой интерфейс, например eth0.


Сохраняем настройки нажав <Ctrl> + <o> и выходим нажав <Ctrl> + <x>.

По-умолчанию в Ubuntu применяется DNS-сервер dnsmasq. Его отличия от pdnsd в том, что он использует dns-сервера из файла /etc/resolv.conf и кэш держит только в оперативной памяти (при перезагрузке кэш теряется). Перед запуском pdnsd нам необходимо удалить dnsmasq, т.к. они оба по-умолчанию используют порт 53. Для удаления dnsmasq выполним в терминале:

sudo apt-get remove dnsmasq
 
 
Теперь нам нужно указать пакету resolvconf (именно он формирует файл /etc/resolv.conf) наш новый быстрый DNS-сервер. Для этого выполним в терминале:

sudo nano /etc/resolvconf/resolv.conf.d/base
 
 
Вписываем nameserver и IP-адрес (если Вы указываели server_ip=eth0 в файле /usr/share/pdnsd/pdnsd-recurse.conf) или 127.0.0.1 (если Вы указываели server_ip=127.0.0.1 в файле /usr/share/pdnsd/pdnsd-recurse.conf).
  
 
Сохраняем настройки нажав <Ctrl> + <o> и выходим нажав <Ctrl> + <x>.

Обратите внимание:
- в файле настроек сетевых интерфейсов /etc/network/interfaces не должно быть строк с параметром dns-nameservers;
- в описываемой статье подразумевается использование статического IP-адреса на Вашем ПК.

Для чистоты эксперимента рекомендуется полностью перезагрузить ПК.

После перезагрузки убеждаемся, что в /etc/resolv.conf указан именно наш новый DNS-сервер. Выполним в терминале:

cat /etc/resolv.conf
 
 
Должен быть только наш DNS-сервер:
 
 
С помощью команды dig проанализируем ускорение dns-запросов. Выполним в терминале:

dig mail.ru
 
 
Получим вывод:
  

Затем ещё раз выполним тот же запрос:

dig mail.ru
 
 
И увидим другой результат:
 
 
Время запроса значительно сократилось. Аналогично можно попробовать потестировать обращения к другим доменам. После попадания запроса в кэш - ответ получается гораздо быстрее.

Текущее состояние и заполненность кэша pdnsd можно узнать выполнив в терминале:

sudo pdnsd-ctl status
 
 
Поднявшись в начало вывода можно увидеть данные о заполненности кэша: 
 
  
В приведённом примере это всего 62 записи, занявшие 0.0246% от выделенных нами под кэш 65536Кб.

Содержимое кэша pdnsd можно увидеть выполнив в терминале:

sudo pdnsd-ctl dump
 
 
Получим что-то вида:
 
 
Сбросить (очистить) кэш можно командой в терминале:

sudo pdnsd-ctl empty-cache
 
 
Но делать это просто так не стоит, т.к. именно накопленный кэш - ускоряет наши dns-запросы.

пятница, 21 февраля 2014 г.

Как легко пробросить порт с удалённого хоста на локальный через ssh?

Для упрощения организации проброса порта с удаленного хоста на локальный через ssh-туннель создан скрипт - portssh.

Данный скрипт выполняет проброс порта RPORT удаленного хоста HOSTNAME через ssh-туннель на порту SSHPORT под пользователем USERNAME на локальный порт LPORT.

Использование:
portssh [USERNAME@]HOSTNAME RPORT LPORT SSHPORT

Для работы скрипта на удалённом хосте должен быть установлен openssh-server.

Скопируйте скрипт в удобное Вам место, сделайте его исполняемым и создайте на него линк в папке /usr/bin. Например, если Вы расположили скрипт portssh.sh в папке /home/valery/MyScripts, то выполните в терминале:

chmod +x /home/valery/MyScripts/portssh.sh
cd /usr/bin
sudo ln -s /home/valery/MyScripts/portssh.sh portssh

Для получения справки по использованию скрипта запустите его просто набрав в терминале:

portssh

суббота, 15 февраля 2014 г.

Отключаем "Waiting up to 60 more seconds for network configuration..."

Если Вы в Ubuntu столкнулись с паузой "Waiting up to 60 more seconds for network configuration..." при старте ПК - то её можно отключить. Часто причиной появления данной паузы является невозможность получить сразу при старте ПК IP-адрес на одном из интерфейсов. Если ОС у Вас нормально работает с сетью и раздражает только пауза при её старте, то решение таково:

Запускаем терминал и комментируем в файле /etc/init/failsafe.conf две строчки с параметрами "sleep 40" и "sleep 59":

sudo nano /etc/init/failsafe.conf


Должно получиться так:
 

пятница, 10 мая 2013 г.

Настройка сети в Ubuntu через терминал

Нередко возникает необходимость настройки сети в Ubuntu через терминал. Делается это следующим образом.

Необходимо отредактировать файл /etc/network/interfaces в котором описываются настройки сетевых интерфейсов. Для редактирования этого файла в терминале нужно выполнить команду:

sudo nano /etc/network/interfaces


Для настройки единственного сетевого соединения eth0 с динамическим IP-адресом вносим в файл следующие значения: 

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet dhcp
 

Для настройки единственного сетевого соединения eth0 с фиксированным IP-адресом 192.168.1.3, маской 255.255.255.0 и шлюзом 192.168.1.1 вносим в файл следующие значения: 

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
address 192.168.1.3
netmask 255.255.255.0
gateway 192.168.1.1
 

После завершения редактирования файла сохраняем результат нажав <Ctrl + O> и выходим из редактора нажав <Ctrl + X>.

Чтобы изменения вступили в силу выполняем в терминале команду:

sudo /etc/init.d/networking restart
 

среда, 24 августа 2011 г.

Автоматическая смена обоев рабочего стола

Если Вы любите периодически обновлять обои на рабочем стол, то удобно это делать используя автоматическую смену обоев рабочего стола. В Ubuntu эту задачу можно решить так.

Среди различных способов организовать автоматическую смену обоев рабочего стола мы воспользуемся пакетом desktopnova (DesktopNova Background Chander). Он позволяет автоматически изменять обои через заданное время, по вращению колеса мыши и при каждом запуске ПК. Поддерживает графические форматы png, jpg, jpeg, bmp, svg, gif, tif. Доступен в репозиториях Ubuntu 10.10 и выше.
Для установки в Ubuntu 10.10 и выше необходимо выполнить команду в терминале:

sudo apt-get install desktopnova

Для установки в Ubuntu 10.04 необходимо добавить в конец файла /etc/apt/source.list репозиторий. Для этого в терминале выполнить:

sudo nano /etc/apt/source.list

Добавить в конец файла строки:

deb http://ppa.launchpad.net/haliner/ppa/ubuntu lucid main
deb-src http://ppa.launchpad.net/haliner/ppa/ubuntu lucid main


И выйти с сохранением - <Ctrl>+<O>, затем <Ctrl>+<X>.

Добавить ключ:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 6F6C4A3C045B9062

Обновить данные из репозиториев:

sudo apt-get update

И установить командой:

sudo apt-get install desktopnova

четверг, 23 декабря 2010 г.

Интернет через Саровтелеком (Multinex) с авторизацией 802.1x

Не все пользователи провайдера Саровтелеком (подключение по Ethernet - проект Мультинекс) переведены на PPPoE. Настройка подключения к Интернет с авторизацией 802.1x выполняется следующим образом.

Для подключения к Интернет через Саровтелеком (Multinex) с авторизацией 802.1x - используем пакет wpasupplicant (в Ubuntu он ставится по умолчанию).

Создаем файл /etc/wpa_supplicant.conf выполняя команду в терминале:

sudo nano /etc/wpa_supplicant.conf
 

Вносим в файл следующее содержимое:

ap_scan=0
network={
    key_mgmt=IEEE8021X
    eap=MD5
    identity="ЛОГИН"
    password="ПАРОЛЬ"
    }


 где вместо ЛОГИН и ПАРОЛЬ вписываем выданные провайдером значения. Кавычки должны остаться.
Сохраняем файл нажав <Ctrl + O> и выходим из редактора нажав <Ctrl + X>.


Затем открываем на редактирование файл /etc/network/interfaces выполнив в терминале:

sudo nano /etc/network/interfaces



Вносим изменения в файл приводя его к виду:

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet dhcp
   wpa-driver wired
   wpa-conf /etc/wpa_supplicant.conf

 


Сохраняем файл нажав <Ctrl + O> и выходим из редактора нажав <Ctrl + X>.

Теперь отключаем сетевой интерфейс командой в терминале:

sudo ifdown eth0


и снова его включаем командой:

sudo ifup eth0

 Соединение должно установиться.

Для удобства отключения/подключения можно сделать на рабочем столе два ярлыка: "Интернет ОТКЛ" и "Интернет ВКЛ" с командами sudo ifdown eth0 и sudo ifup eth0 соответственно.

понедельник, 6 сентября 2010 г.

Как включить NumLock при старте Gnome?

На стационарных ПК удобно использовать дополнительный блок клавиш для ввода цифр. Для этого необходимо включить режим NumLock. По умолчанию при старте Gnome - он выключен. Решить проблему можно так:

Устанавливаем в терминале пакет numlockx командой:
sudo apt-get install numlockx


Затем открываем на редактирование файл /etc/gdm/Init/Default командой в терминале:

sudo nano /etc/gdm/Init/Default


В конце файла перед последней строчкой "exit 0" добавляем строки:

if [ -x /usr/bin/numlockx ]; then
/usr/bin/numlockx on
fi



Сохраняем файл нажав <Ctrl + O> и выходим из редактора нажав <Ctrl + X>.

При следующей загрузке ПК - NumLock будет включён.