Не работает VPN

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС.

Модераторы: SLEDopit, Модераторы разделов

Tokra
Сообщения: 399

Не работает VPN

Сообщение Tokra »

Всем добрый день. У меня такая проблема. Прочитав кучу инфы по iproute2, я решил поднять при помощи него тунели. Остановил свой выбор на GRE. Зо основу взял приведенный скрипт конфигурации, подправил его под свои нужды. Для всего этого удовольствия я выделил 4 машины. На двух винда - рабочии станции, на вторых двух Slackware 10.2.

Получилась такая тополигия:

Раб.стан.1 - Сервак1 - Сервак2 - Раб.стан.2

Со стороны раб.стан.1 айпи 192.168.54.2 - сервак1 192.168.54.1
Сервак1 192.168.0.5 - сервак2 192.168.0.5
Раб.стан.2 192.168.52.2 - сервак2 192.168.52.1.

Надо связать сеть 192.168.54.0 с сетью 192.168.52.0 в оба конца.

Поднимаем тунели.

Со стороны сервак1:
#!/bin/sh
insmod ip_gre
tnl=tnl0
remote=192.168.0.6
local=192.168.0.5
ip=192.168.100.1
range=192.168.52.0
# ip tunnel del $tnl
ip tunnel add $tnl mode gre local $local remote $remote ttl 255
ip addr add $ip dev $tnl
ip link set $tnl up
ip route add $range dev $tnl

Со стороны сервак2:
#!/bin/sh
insmod ip_gre
tnl=tnl0
remote=192.168.0.5
local=192.168.0.6
ip=192.168.100.2
range=192.168.54.0
# ip tunnel del $tnl
ip tunnel add $tnl mode gre local $local remote $remote ttl 255
ip addr add $ip dev $tnl
ip link set $tnl up

Тунель вроде поднят, но достучаться по нему к удаленной сетке не могу, что с той, что с др. стороны.

Вывод ifconfig на сервак1:
tnl0 Link encap:UNSPEC HWaddr 51-19-E0-CA-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:192.168.100.1 P-t-P:192.168.100.1 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MTU:1476 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
Смущает, почему P-t-P:192.168.100.1, а не P-t-P:192.168.100.2

Вывод ifconfig на сервак2:
tnl0 Link encap:UNSPEC HWaddr 51-19-E0-CA-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:192.168.100.2 P-t-P:192.168.100.2 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MTU:1476 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
Смущает, почему P-t-P:192.168.100.2, а не P-t-P:192.168.100.1.

В таблице маршрутизации появилась такая запись:
сервак1
192.168.52.0 dev tnl0 scope link

сервак2
192.168.54.0 dev tnl0 scope link.

Кто подскажет в чем дело?
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: Не работает VPN

Сообщение sash-kan »

добавь на сервере1:

Код: Выделить всё

peer=192.168.100.2
соответвственно на сервере2:

Код: Выделить всё

peer=192.168.100.1

и вместо этой строки
(Tokra @ Jan 24 2006, в 10:33) писал(а):ip addr add $ip dev $tnl

на обоих серверах напиши

Код: Выделить всё

ip addr add $ip peer $peer dev $tnl


и еще. командой
(Tokra @ Jan 24 2006, в 10:33) писал(а):ip route add $range dev $tnl

ты видимо, хочешь дать доступ к сети. а маска тогда где? наверно, надо было так -
на сервере1:

Код: Выделить всё

range=192.168.52.0/24
и на сервере2:

Код: Выделить всё

range=192.168.54.0/24

кстати, в скрипте на сервере2 этой самой команды (ip r a ...) нету. надеюсь, ты просто пропустил строчку, создавая пост, а то иначе откуда бы взялось
(Tokra @ Jan 24 2006, в 10:33) писал(а):сервак2
192.168.54.0 dev tnl0 scope link.

? (:
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Tokra
Сообщения: 399

Re: Не работает VPN

Сообщение Tokra »

sash-kan, да я пропустил эту строчку. А тебе большое спасибо!!!! Все забегало!!!!!!!!!!!!java script:emoticon(':)', 'smid_3')
Спасибо сказали:
Tokra
Сообщения: 399

Re: Не работает VPN

Сообщение Tokra »

Вопрос в догонку. Необходимо ли в файле rc.firewall производить маскарадинг для ВПН сидещего на внешнем канале.
Что-то типа такого:

iptables -t nat -A POSTROUTING -o eth$-интерфейс смотрящий во внешний мир -j MASQUERADE

или

iptables -t nat -A POSTROUTING -o tnl0 -j MASQUERADE ?

Или ядро само знает, что делать?
Однозначного ответа я так и не нашел.
Спасибо сказали:
Tokra
Сообщения: 399

Re: Не работает VPN

Сообщение Tokra »

Неужели никто не знает? Все, выше написаное, я делал в эксперементальном порядке, во внутренней локалке. А теперь это же надо сделать в реале.
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: Не работает VPN

Сообщение sash-kan »

Tokra
если под "ВПН" подразумеваются вышеупомянутые туннели, то никаких дополнительных настроек iptables не требуется. впрочем, я думаю, ты и сам это заметил, раз
(Tokra @ Jan 26 2006, в 13:41) писал(а):во внутренней локалке
все заработало. так в чем вопрос?
p.s. iptables, конечно, понадобятся, но не для поддержания работы туннелей, а для вящей безопасности - порезать все, что не нужно.
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Tokra
Сообщения: 399

Re: Не работает VPN

Сообщение Tokra »

Спасибки. Я уже начал писать rc.firewall. Вот этот вопрос и выплыл. Еще раз спасибки
Спасибо сказали: