суббота, 13 июня 2009 г.

Настройка VPN подключения в Ubuntu GNU/Linux

Я использую интернет через VPN от маленького провайдера в маленьком городе. Мануалов и хоу-ту в интернете пруд пруди, но все на примерах больших провайдеров, с кучей серверов. И поэтому пришлось выкидывать половину советов :) После установки себе Ubuntu 8.04, более года назад, я столкнулся с тем, что не знаю как подключить интернет. Ось зла тогда еще оставалась второй системой и я полез гуглить на тему VPN в Ubuntu.



Что нарыл, перелопатил и получил долгожданный интернет под Ubuntu. А вот собственно говоря и рецепт.
Установил пакет pptp-linux командой

$ sudo apt-get install pptp-linux

создал файл в директории
$ sudo nano /etc/ppp/peers/имя_файла

и заполнил его следующим содержимым
pty "pptp IP_VPN_SERVER --nolaunchpppd"
user VPN_LOGIN
password "VPN_PASSWORD"
nodeflate
nobsdcomp
noauth
defaultroute
replacedefaultroute

напомню что для вставки из буфера используется комбинация Shift+Insert, а для выхода из nano Ctrl+x и Y чтобы сохранить изменения.
Для подключения в консоли
$ sudo pon имя_файла

Для отключения
$ sudo poff имя_файла

Для подключения и отключения одним кликом можно использовать простой скрипт. Создать файл в например
$ nano /home/NAME/internet

где NAME это имя учетной записи, со следующим содержимым
#!/bin/bash
if [ -n "$(ifconfig | grep ppp0)" ]; then
poff имя_файла
exit 1
else
pon имя_файла
exit 1
fi

потом создать кнопку запуска назначить иконку и вписать команду
gksudo bash /home/NAME/internet

для GNOME и Xface, а для KDE
kdesudo bash /home/NAME/internet

Теперь просто тыкаем мышкой по только-что созданной кнопке, вводим пароль и наслаждаемся интернетом в любимой OS.

После этих всех манипуляций я заметил что соединение иногда рвется, а обратно не подымается. И тогда прикрутил скрипт для переподнятия VPN соединения, скрипт прилагается
$ nano /home/NAME/script_vpn_reconnect

#!/bin/bash
if ping -c 2 www.google.com
then echo "Connection Good"
else
echo "Connection lost, restart ppp"
poff имя_файла
sleep 3
pon имя_файла
fi
sleep 20
exec /home/NAME/script_vpn_reconnect
exit 0

запуск скрипта
$ ./script_vpn_reconnect

При копировании материалов
ссылка на источник обязательна!


Комментариев нет:

Отправить комментарий