BSDPORTAL.RU

На этом сайте обсуждаются вопросы использования ОС FreeBSD
 Портал  •  Статьи  •  Форум  •  Wiki  •  Поиск  •  FAQ  •  Обои  •   Официальная документация  •  Новые темы 

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
 Заголовок сообщения: L2TP: глухое молчание
СообщениеДобавлено: Вс 11 июн, 2017 3:56 pm 
Не в сети

Зарегистрирован: Чт 03 янв, 2008 3:16 pm
Сообщения: 168
Откуда: Москва
Привет тебе, достопочтенный All!

Буду краток. Есть машинка с FreeBSD 11.0-RELEASE-p1. Пытаюсь соорудить на ней VPN-сервер с шифрованным каналом связи. Для этих целей за неимением лучшего выбрал L2TP + IPSec. Ставил по этой инструкции, но, говоря честно, ядро не пересобирал, потому что обновления у меня бинарные и очень стрёмно всё это трогать... mpd5 и racoon ставил из портов (с помощью portmaster); полагаю, что все нужные патчи там применились.

В /etc/pf.conf прописаны правила:

Код:
pass in on $ext_if proto tcp from any to any port 1723 keep state
pass in on $ext_if proto { tcp, udp } from any to any port 1701 keep state
pass in on $ext_if proto udp from any to any port isakmp keep state
pass in on $ext_if proto udp from any to any port 4500 keep state
pass in on $ext_if proto esp from any to any keep state


На роутере тоже всё как надо прописано. Доступность всех этих портов из инета проверял open port checker'ом.

А теперь картина маслом. Пытаюсь из-под клиента (Windows 7) законнектиться по VPN к серверу. Подключение виснет на стадии "Установка связи с ... с использованием "WAN Miniport (L2TP)"". Висит, висит, а потом вываливает ошибку 809: мол, удалённый сервер не отвечает.

Смотрю ситуацию с клиентской и серверной стороны. С клиентской - Wireshark'ом. И вот что я вижу.

Изображение

Изображение

Непрерывная долбёжка от клиента с пакетами SCCRQ (запрос на начало контрольного соединения). А в ответ - ни ответа, ни привета.

Может, на самом деле пакеты не доходят? Но нет. Вот tcpdump на серверной стороне:
Код:
$ sudo tcpdump -i nfe0 -vv "host xxx.yyy.zz.aa and not port 22"
tcpdump: listening on nfe0, link-type EN10MB (Ethernet), capture size 262144 bytes
15:27:43.700152 IP (tos 0x0, ttl 118, id 27197, offset 0, flags [none], proto UDP (17), length 128)
    client.host.ru.l2f > 192.168.1.100.l2f: [udp sum ok]  l2tp:[TLS](0/0)Ns=0,Nr=0 *MSGTYPE(SCCRQ) *PROTO_VER(1.0) *FRAMING_CAP(S) *BEARER_CAP() FIRM_VER(1537) *HOST_NAME(User-) VENDOR_NAME(Microsoft) *ASSND_TUN_ID(7) *RECV_WIN_SIZE(8)
15:27:44.702122 IP (tos 0x0, ttl 118, id 27201, offset 0, flags [none], proto UDP (17), length 128)
    client.host.ru.l2f > 192.168.1.100.l2f: [udp sum ok]  l2tp:[TLS](0/0)Ns=0,Nr=0 *MSGTYPE(SCCRQ) *PROTO_VER(1.0) *FRAMING_CAP(S) *BEARER_CAP() FIRM_VER(1537) *HOST_NAME(User-) VENDOR_NAME(Microsoft) *ASSND_TUN_ID(7) *RECV_WIN_SIZE(8)
15:27:46.714435 IP (tos 0x0, ttl 118, id 27203, offset 0, flags [none], proto UDP (17), length 128)
    client.host.ru.l2f > 192.168.1.100.l2f: [udp sum ok]  l2tp:[TLS](0/0)Ns=0,Nr=0 *MSGTYPE(SCCRQ) *PROTO_VER(1.0) *FRAMING_CAP(S) *BEARER_CAP() FIRM_VER(1537) *HOST_NAME(User-) VENDOR_NAME(Microsoft) *ASSND_TUN_ID(7) *RECV_WIN_SIZE(8)
15:27:50.722921 IP (tos 0x0, ttl 118, id 27206, offset 0, flags [none], proto UDP (17), length 128)
    client.host.ru.l2f > 192.168.1.100.l2f: [udp sum ok]  l2tp:[TLS](0/0)Ns=0,Nr=0 *MSGTYPE(SCCRQ) *PROTO_VER(1.0) *FRAMING_CAP(S) *BEARER_CAP() FIRM_VER(1537) *HOST_NAME(User-) VENDOR_NAME(Microsoft) *ASSND_TUN_ID(7) *RECV_WIN_SIZE(8)
15:27:58.726083 IP (tos 0x0, ttl 118, id 27213, offset 0, flags [none], proto UDP (17), length 128)
    client.host.ru.l2f > 192.168.1.100.l2f: [udp sum ok]  l2tp:[TLS](0/0)Ns=0,Nr=0 *MSGTYPE(SCCRQ) *PROTO_VER(1.0) *FRAMING_CAP(S) *BEARER_CAP() FIRM_VER(1537) *HOST_NAME(User-) VENDOR_NAME(Microsoft) *ASSND_TUN_ID(7) *RECV_WIN_SIZE(8)
15:28:08.741420 IP (tos 0x0, ttl 118, id 27223, offset 0, flags [none], proto UDP (17), length 128)
    client.host.ru.l2f > 192.168.1.100.l2f: [udp sum ok]  l2tp:[TLS](0/0)Ns=0,Nr=0 *MSGTYPE(SCCRQ) *PROTO_VER(1.0) *FRAMING_CAP(S) *BEARER_CAP() FIRM_VER(1537) *HOST_NAME(User-) VENDOR_NAME(Microsoft) *ASSND_TUN_ID(7) *RECV_WIN_SIZE(8)


(192.168.1.100 - это адрес внешнего интерфейса сервера; и клиент, и сервер сидят за своими NAT'ами)
(client.host.ru - доменное имя клиента (разумеется, изменено), ему соответствует белый IP-адрес)

Итак, пакеты от клиента до сервера доходят. Но они не обрабатываются. Притом что:
Код:
$ tail /var/log/mpd5.log
Jun 10 13:11:22 server mpd: Multi-link PPP daemon for FreeBSD
Jun 10 13:11:22 server mpd:
Jun 10 13:11:22 server mpd: process 44442 started, version 5.8 (root@server.int 22:45  7-Jun-2017)
Jun 10 13:11:22 server mpd: CONSOLE: listening on 127.0.0.1 5005
Jun 10 13:11:22 server mpd: web: listening on 0.0.0.0 5006
Jun 10 13:11:22 server mpd: L2TP: waiting for connection on 192.168.1.100 1701


Почему mpd никак не реагирует на поступающие пакеты? Что я делаю не так?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: L2TP: глухое молчание
СообщениеДобавлено: Вт 13 июн, 2017 9:14 pm 
Не в сети

Зарегистрирован: Чт 03 янв, 2008 3:16 pm
Сообщения: 168
Откуда: Москва
Братцы, неужели никто не настраивал VPN-сервер на Фре?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: L2TP: глухое молчание
СообщениеДобавлено: Ср 14 июн, 2017 2:01 pm 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: Вт 10 авг, 2004 2:24 am
Сообщения: 3263
Откуда: Харьков
проблема точно не в фаерволе? обычно лучше отключить его вообще для начала.

попробуй для начала соединиться без ipsec
для этого нужно в реестр изменение внести и ребутнуться
Код:
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Rasman\Parameters]
"ProhibitIpSec"=dword:00000001


ну и так методом исключений понять в где проблема... возможно ядро таки придётся пересобирать


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: L2TP: глухое молчание
СообщениеДобавлено: Чт 15 июн, 2017 12:58 am 
Не в сети

Зарегистрирован: Чт 03 янв, 2008 3:16 pm
Сообщения: 168
Откуда: Москва
Это уже пробовал... Однохренственно...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: L2TP: глухое молчание
СообщениеДобавлено: Пн 19 июн, 2017 4:30 pm 
Не в сети

Зарегистрирован: Чт 03 янв, 2008 3:16 pm
Сообщения: 168
Откуда: Москва
Продолжение истории... В общем, до mpd дело не доходит. Всё застревает на racoon. Поэтому я привожу конфиги и куски из лога с нижайшей просьбой к сведущим людям взглянуть и подсказать, где грабельки...

/var/log/racoon.log прицеплен отдельным вложением.
178.254.254.254 - vpn-сервер
217.99.99.99 - vpn-клиент
(ip-адреса изменены)
Оба под nat'ом.
Аутентификацию пытаюсь провернуть по парольной фразе.

/usr/local/etc/racoon/racoon.conf
Код:
path pre_shared_key "/usr/local/etc/racoon/psk.txt";
log debug;

padding
{
        maximum_length 20; # maximum padding length.
        randomize off; # enable randomize length.
        strict_check off; # enable strict check.
        exclusive_tail off; # extract last one octet.
}

listen
{
        isakmp 192.168.1.100;
        isakmp_natt 192.168.1.100 [4500];
        #isakmp 192.168.1.100 [500];
        #admin [7002]; # administrative port for racoonctl.
        #strict_address; # requires that all addresses must be bound.
}

timer
{
        # These value can be changed per remote node.
        counter 5; # maximum trying count to send.
        interval 20 sec; # maximum interval to resend.
        persend 1; # the number of packets per send.
        # maximum time to wait for completing each phase.
        phase1 30 sec;
        phase2 15 sec;
}

remote anonymous
{
        exchange_mode main, aggressive;
        situation identity_only;
        lifetime time 24 hour;
        nonce_size 16;
        initial_contact on;
        proposal_check obey; # obey, strict, or claim
        ike_frag on;
        #generate_policy on;
        nat_traversal on;
        proposal {
                encryption_algorithm 3des;
                hash_algorithm sha1;
                authentication_method pre_shared_key;
                dh_group 2;
        }
}

sainfo anonymous
{
        pfs_group 2;
        encryption_algorithm 3des, des;
        authentication_algorithm hmac_sha1, hmac_md5;
        compression_algorithm deflate;
}


/usr/local/etc/mpd5/mpd.conf
Код:
startup:
        # configure mpd users
        set user admin password
        # configure the console
        set console self 127.0.0.1 5005
        set console open
        # configure the web server
        set web self 0.0.0.0 5006
        set web open
        log +ALL -EVENTS -FRAME

default:
        load l2tp_server

l2tp_server:
        set ippool add priv_access 192.168.1.200 192.168.1.250
        create bundle template C
        set iface enable proxy-arp
        set iface idle 1800
        set iface enable tcpmssfix
        set ipcp yes vjcomp
        set ipcp ranges 192.168.1.200/30 ippool priv_access
        set ipcp dns 192.168.10.254
        set ccp yes mppc
        set mppc yes e40
        set mppc yes e128
        set mppc yes stateless
        create link template N l2tp
        set link action bundle C
        set link enable multilink
        set link yes acfcomp protocomp
        set link no pap chap
        set link enable chap
        set link keep-alive 10 60
        set link mtu 1460
        set l2tp self 192.168.1.100
        set link enable incoming


Не оставьте в беде...


Вложения:
Комментарий к файлу: Лог-файл.
racoon.txt [100.17 КБ]
Скачиваний: 36
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 5 ] 

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Зарегистрированные пользователи: Bing [Bot], Google [Bot], Yahoo [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB
Яндекс.Метрика