PDF Печать E-mail

 

Настраиваем VPN + локальную сеть

 

Для начала отрубаем ненавистный network-manager, иначе будет все портить, network-manager - то немногое что меня бесит в убунту:

 

sudo /etc/init.d/NetworkManager stop # или

sudo /etc/init.d/network-manager stop # в зависимости от дистрибутива

 

Лучше самим посмотреть в /etc/init.d/ как он зовется.

 

Настраиваем локалку:

 

sudo nano /etc/network/interfaces

 

 

И заполняем примерно следующим образом:

 

auto lo

iface lo inet loopback

iface eth0 inet static

address 10.9.2.156

netmask 255.255.255.0

gateway 10.9.2.1

auto eth0

 

Прописываем dns:

 

sudo nano /etc/resolv.conf

 

nameserver 10.0.1.1

 

Перезапускаем сеть после внесения изменений:

 

sudo /etc/init.d/networking restart

 

Пингуем шлюз:

 

ping 10.9.2.1

 

Если все нормально - идем дальше, к настройке маршрутизации.

 

Записи маршрутизации можно посмотреть командой:

 

netstat -n -r

 

Добавляем необходимые маршруты чтобы локальные ресурсы были доступны даже при установленном VPN-соединении (данные узнаем у провайдера):

 

sudo route add -net 10.0.0.0 netmask 255.0.0.0 gw 10.9.2.1 eth1

 

sudo route add -net 172.21.0.0 netmask 255.255.0.0 gw 10.9.2.1 eth1

 

Далее настраиваем VPN.

 

Ставим пакет:

 

sudo aptitude install pptp-linux #Point-to-Point Tunneling Protocol (PPTP) Client

 

или качаем с любого компьютера с выходом в интернет этот пакет и ставим:

 

sudo dpkg -i pptp-linux

 

Также нужен ppp, но он скорее всего уже стоит.

 

Создаем подключение и запускаем:

 

sudo pptpsetup --create VPN --server 10.0.1.1 --username you_user --password you_pass --start

 

Если выдаст ошибку:

 

sh: strings: command not found

/usr/sbin/pptpsetup: couldn't find MPPE support in pppd.

 

(Microsoft Point-to-Point Encryption (MPPE) — протокол шифрования данных, используемый поверх соединений PPP)

 

То надо установить binutils:

 

sudo apt-get install binutils

 

(если нет альтернативного канала,  качаем из интернета)

 

( Binutils является набором средств разработки, содержащим компоновщик, ассемблер и другие средства для работы с объектными файлами и архивами.)

 

И снова пробуем:

 

sudo pptpsetup --create VPN --server 10.0.1.1 --username you_user --password you_pass --start

 

Если пишет что-то типа "Cannot determine ethernet address for proxy ARP !" то (ARP (англ. Address Resolution Protocol — протокол определения адреса) — использующийся в компьютерных сетях протокол низкого уровня, предназначенный для определения адреса канального уровня по известному адресу сетевого уровня.) :

 

 

sudo nano /etc/ppp/peers/VPN

 

и добавляем туда:

 

defaultroute # автоматическое добавление маршрута

replacedefaultroute

 

Для автоматического подключения при разрыве соединения туда же можно добавить (5000 попыток подключения с интервалом в 10 сек.):

 

 

persist

maxfail 5000

holdoff 10

connect /bin/true

 

 

И еще раз пробуем:

 

sudo pptpsetup --create VPN --server 10.0.1.1 --username you_user --password you_pass --start

 

С третьей попытки соединение установилось, пинг во внешнюю сеть пошел)

 

Теперь для запуска соединения пишем:

 

sudo pon VPN

 

Для остановки:

 

sudo poff VPN

 

И последний штрих, добавляем запуск подключение, маршрутизацию и отключение network-manager в автозагрузку:

 

sudo nano /etc/rc.local

 

/etc/init.d/network-manager stop

route add -net 10.0.0.0 netmask 255.0.0.0 gw 10.9.2.1 eth1

route add -net 172.21.0.0 netmask 255.255.0.0 gw 10.9.2.1 eth1

pon VPN