как настроить VPN в Ubuntu?

 
Начать новую тему   Ответить на тему    Список форумов -> Софт, железо, и всё, что связано с ним
керамин ::  
Автор Сообщение
metaljohny
Новичок


Зарегистрирован: 17.04.2010
Сообщения: 4

СообщениеДобавлено: Пт Май 16, 2011 11:24 am    Заголовок сообщения: как настроить VPN в Ubuntu? Ответить с цитатой

как настроить VPN в Ubuntu (+прописать роуты)?
Посмотреть профиль Отправить личное сообщение
Bart
^_^


Зарегистрирован: 02.08.2006
Сообщения: 1461

СообщениеДобавлено: Пт Май 16, 2011 5:37 pm    Заголовок сообщения: Ответить с цитатой

Для поднятия и настройки VPN-соединения нам потребуются всего две программы - ppp и pptp.

Проверяем работоспособность сети:
Код:
root@a:~# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:04:61:69:90:80 
          inet addr:172.18.28.9  Bcast:172.18.28.255  Mask:255.255.255.0
          inet6 addr: fe80::204:61ff:fe69:9080/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2210 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1231 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:1585495 (1.5 MB)  TX bytes:144200 (140.8 KB)
          Interrupt:16 Base address:0xa000

Если сеть работоспособна, должны пинговаться шлюз и VPN-сервер. Проверяем:
Код:
root@a:~# ping -c5 192.168.1.11
PING 192.168.1.11 (192.168.1.11) 56(84) bytes of data.
64 bytes from 192.168.1.11: icmp_seq=1 ttl=62 time=0.213 ms
64 bytes from 192.168.1.11: icmp_seq=2 ttl=62 time=0.167 ms
64 bytes from 192.168.1.11: icmp_seq=3 ttl=62 time=0.278 ms
64 bytes from 192.168.1.11: icmp_seq=4 ttl=62 time=0.218 ms
64 bytes from 192.168.1.11: icmp_seq=5 ttl=62 time=0.321 ms

Код:
root@a:~# ping -c5 192.168.1.112
PING 192.168.1.112 (192.168.1.112) 56(84) bytes of data.
64 bytes from 192.168.1.112: icmp_seq=1 ttl=62 time=0.272 ms
64 bytes from 192.168.1.112: icmp_seq=2 ttl=62 time=0.434 ms
64 bytes from 192.168.1.112: icmp_seq=3 ttl=62 time=0.634 ms
64 bytes from 192.168.1.112: icmp_seq=4 ttl=62 time=0.301 ms
64 bytes from 192.168.1.112: icmp_seq=5 ttl=62 time=0.153 ms

Добавляем в нашу таблицу роутинга статические маршруты на VPN и DNS сервера:
Код:
root@a:~# ip r a 192.168.1.11 via 172.18.28.1
root@a:~# ip r a 192.168.1.112 via 172.18.28.1

Удаляем маршрут по-умолчанию
Код:
route del default

Таблица маршрутизации будет выглядеть так:
Код:
root@a:~# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.1.112   172.18.28.1     255.255.255.255 UGH   0      0        0 eth0
192.168.1.11    172.18.28.1     255.255.255.255 UGH   0      0        0 eth0
172.18.28.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0

Проверка: мы должны успешно пинговать DNS и VPN сервера.
Код:
root@a:~# ping -c5 192.168.1.112
PING 192.168.1.112 (192.168.1.112) 56(84) bytes of data.
64 bytes from 192.168.1.112: icmp_seq=1 ttl=62 time=2.83 ms
64 bytes from 192.168.1.112: icmp_seq=2 ttl=62 time=0.224 ms
64 bytes from 192.168.1.112: icmp_seq=3 ttl=62 time=0.339 ms
64 bytes from 192.168.1.112: icmp_seq=4 ttl=62 time=0.268 ms
64 bytes from 192.168.1.112: icmp_seq=5 ttl=62 time=0.232 ms

Все параметры нашего VPN соединения мы запишем в файле /etc/ppp/peers/briz. Создадим его и наполним следующим содержанием:
Код:
pty "pptp 192.168.1.112 --nolaunchpppd"
user ЛОГИН_VPN
password "ПАРОЛЬ_VPN"
nodeflate
nobsdcomp
noauth
mtu 1492

Поднимаем VPN соединение:
Код:
root@a:~# pppd call briz debug nodetach

Появятся логи соединения. Если все прошло успешно, они будут выглядеть примерно так:
Код:
root@a:~# pppd call briz debug nodetach
using channel 1
Using interface ppp0
Connect: ppp0 <--> /dev/pts/1
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0x6f238c85> <pcomp> <accomp>]
rcvd [LCP ConfReq id=0x1 <accomp> <pcomp> <asyncmap 0x0> <mru 1500> <magic 0x531fa46b> <auth pap>]
sent [LCP ConfAck id=0x1 <accomp> <pcomp> <asyncmap 0x0> <mru 1500> <magic 0x531fa46b> <auth pap>]
rcvd [LCP ConfAck id=0x1 <asyncmap 0x0> <magic 0x6f238c85> <pcomp> <accomp>]
sent [LCP EchoReq id=0x0 magic=0x6f238c85]
sent [PAP AuthReq id=0x1 user="light" password=<hidden>]
rcvd [LCP EchoReq id=0x0 magic=0x531fa46b 59 4e 4f 54 00 00 00 00]
sent [LCP EchoRep id=0x0 magic=0x6f238c85 59 4e 4f 54 00 00 00 00]
rcvd [LCP Ident id=0x0 magic=0x531fa46b "user-ppp 3.4.2 (built Aug  8 2010)"]
rcvd [LCP EchoRep id=0x0 magic=0x531fa46b]
rcvd [PAP AuthAck id=0x1 "Greetings!!"]
Remote message: Greetings!!
PAP authentication succeeded
sent [IPCP ConfReq id=0x1 <compress VJ 0f 01> <addr 0.0.0.0>]
rcvd [CCP ConfReq id=0x1]
sent [CCP ConfReq id=0x1]
sent [CCP ConfAck id=0x1]
rcvd [IPCP ConfReq id=0x1 <addr 194.143.137.7> <compress VJ 0f 01> <ms-dns1 194.143.137.7> <ms-dns3 194.143.136.1>]
sent [IPCP ConfRej id=0x1 <ms-dns1 194.143.137.7> <ms-dns3 194.143.136.1>]
rcvd [LCP Ident id=0x1 magic=0x531fa46b "user-ppp 3.4.2 (built Aug  8 2010)"]
rcvd [IPCP ConfNak id=0x1 <addr 213.231.28.155>]
sent [IPCP ConfReq id=0x2 <compress VJ 0f 01> <addr 213.231.28.155>]
rcvd [CCP ConfAck id=0x1]
rcvd [IPCP ConfReq id=0x2 <addr 194.143.137.7> <compress VJ 0f 01>]
sent [IPCP ConfAck id=0x2 <addr 194.143.137.7> <compress VJ 0f 01>]
rcvd [IPCP ConfAck id=0x2 <compress VJ 0f 01> <addr 213.231.28.155>]
Cannot determine ethernet address for proxy ARP
local  IP address 213.231.28.155
remote IP address 194.143.137.7
Script /etc/ppp/ip-up started (pid 6310)
Script /etc/ppp/ip-up finished (pid 6310), status = 0x0

На соседнем терминале убедимся, что VPN-соединение установлено. Должен появиться сетевой интерфейс ppp0:
Код:
root@a:~# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:04:61:69:90:80 
          inet addr:172.18.28.9  Bcast:172.18.28.255  Mask:255.255.255.0
          inet6 addr: fe80::204:61ff:fe69:9080/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:67 errors:0 dropped:0 overruns:0 frame:0
          TX packets:112 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:11717 (11.4 KB)  TX bytes:11348 (11.0 KB)
          Interrupt:16 Base address:0xa000

lo        Link encap:Local Loopback 
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:1018 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1018 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:50900 (49.7 KB)  TX bytes:50900 (49.7 KB)

ppp0      Link encap:Point-to-Point Protocol 
          inet addr:213.231.28.155  P-t-P:194.143.137.7  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1492  Metric:1
          RX packets:7 errors:0 dropped:0 overruns:0 frame:0
          TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:3
          RX bytes:564 (564.0 B)  TX bytes:72 (72.0 B)

Добавим маршрут по-умолчанию через интерфейс ppp0 в нашу таблицу маршрутизации
Код:
route add default dev ppp0

Теперь попробуем пропинговать какой-нибудь интернет-хост:
Код:
root@a:~# ping -c5 ya.ru
PING ya.ru (213.180.204.8) 56(84) bytes of data.
64 bytes from ya.ru (213.180.204.8): icmp_seq=1 ttl=56 time=94.6 ms
64 bytes from ya.ru (213.180.204.8): icmp_seq=2 ttl=56 time=96.7 ms
64 bytes from ya.ru (213.180.204.8): icmp_seq=3 ttl=56 time=95.1 ms
64 bytes from ya.ru (213.180.204.8): icmp_seq=4 ttl=56 time=95.2 ms
64 bytes from ya.ru (213.180.204.8): icmp_seq=5 ttl=56 time=95.4 ms

Работает!

Редактируем файл /etc/ppp/ip-up:
Код:
#!/bin/sh
#
# This script is run by pppd when there's a successful ppp connection.
#
ip r a 192.168.1.11 via 172.18.28.1
ip r a 192.168.1.112 via 172.18.28.1
route del default
route add default dev ppp0
ip r a 172.18.0.0/16 via 172.18.28.1
ip r a 172.17.0.0/16 via 172.18.28.1
ip r a 192.168.1.0/24 via 172.18.28.1

Редактируем файл /etc/ppp/ip-down
Код:
#!/bin/sh
#
# This script is run by pppd after the connection has ended.
#
route add default gw 172.18.28.1


Запускать и прерывать соединение можно командами
Код:
pon briz
poff briz
Посмотреть профиль Отправить личное сообщение
mutabor
Продвинутый


Зарегистрирован: 08.09.2006
Сообщения: 122

СообщениеДобавлено: Ср Окт 08, 2011 5:13 pm    Заголовок сообщения: Ответить с цитатой

Застопорился на этом:
Цитата:

Добавляем в нашу таблицу роутинга статические маршруты на VPN и DNS сервера:
Код:
root@a:~# ip r a 192.168.1.11 via 172.18.28.1
root@a:~# ip r a 192.168.1.112 via 172.18.28.1

Пишет нет такого процесса.

p.s. накрутил, теперь уже и локалка не работает. А те роуты что там изначально были, не катят? Кажется такой там 172.18.141.1

вот что ipconfig в Винде показывает


Что на что нужно поменять? Здесь:
root@a:~# ip r a 192.168.1.11 via 172.18.28.1
root@a:~# ip r a 192.168.1.112 via 172.18.28.1
чтобы правильно было.

В Винде роуты после установки не прописывал, и так все работает, не знаю даже как это делается. Может и в Убунте не нужно было их трогать, а просто VPN настроить?

Вот что на данный момент выдает route -n
Код:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
172.18.141.0    0.0.0.0         255.255.255.0   U     0      0        0 eth0
169.254.0.0     0.0.0.0         255.255.0.0     U     1000   0        0 eth0
0.0.0.0         172.18.141.1    0.0.0.0         UG    0      0        0 eth0
Посмотреть профиль Отправить личное сообщение
Bart
^_^


Зарегистрирован: 02.08.2006
Сообщения: 1461

СообщениеДобавлено: Ср Окт 08, 2011 8:43 pm    Заголовок сообщения: Ответить с цитатой

root@a:~# ip r a 192.168.1.11 via 172.18.141.1
root@a:~# ip r a 192.168.1.112 via 172.18.141.1
Посмотреть профиль Отправить личное сообщение
mutabor
Продвинутый


Зарегистрирован: 08.09.2006
Сообщения: 122

СообщениеДобавлено: Чт Окт 09, 2011 6:58 pm    Заголовок сообщения: Ответить с цитатой

Пробовал, не выходит.

После удаления дефолта таблица маршрутов не из трех а из четырех строк, но первые три как надо, все совпадает.

Далее все пингуется и 192.168.1.11 и 192.168.1.112

Файл сохранил, кстати пароль ВПН в кавычках так и надо? Я в кавычках написал.

А вот дальше после этой команды

root@a:~# pppd call briz debug nodetach

результат такой:

sh: pptp: not found
Couldn't get channel number: Input/output error
Script pptp 192.168.1.112 --nolaunchpppd finished (pid 6016), status = 0x7f

Кстати после смены роутов локалка перестает работать, до перезагрузки, если не менять - работает.
Посмотреть профиль Отправить личное сообщение
Bart
^_^


Зарегистрирован: 02.08.2006
Сообщения: 1461

СообщениеДобавлено: Чт Окт 09, 2011 9:56 pm    Заголовок сообщения: Ответить с цитатой

http://www.ubuntu.com/
http://ubuntu.ru/
http://linuxforum.ru/
Посмотреть профиль Отправить личное сообщение
mutabor
Продвинутый


Зарегистрирован: 08.09.2006
Сообщения: 122

СообщениеДобавлено: Пт Окт 10, 2011 8:33 am    Заголовок сообщения: Ответить с цитатой

Ну и что я там буду делать если я толком не знаю своих настроек?
Посмотреть профиль Отправить личное сообщение
Bart
^_^


Зарегистрирован: 02.08.2006
Сообщения: 1461

СообщениеДобавлено: Пт Окт 10, 2011 4:10 pm    Заголовок сообщения: Ответить с цитатой

А я по-твоему родился со знаниями о настройке впн? Ищи, читай, спрашивай у людей, которые не первый год люнипсом занимаются.
Посмотреть профиль Отправить личное сообщение

Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов -> Софт, железо, и всё, что связано с ним
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы можете редактировать свои сообщения
Вы можете удалять свои сообщения
Вы не можете голосовать в опросах