четверг, 28 октября 2010 г.

l2tp - начало

Расплодилось у меня много всяких vpn-соединений ppp и openvpn. Решил все унифицировать с достаточной степенью безопасности. Выбор пал на l2tp, так как есть IPsec, а клиент в любом Windows есть по умолчанию, плюс все это хозяйство должно работать под Linux.

Так как решил использовать Gentoo в качестве сервера, то наиболее распространенное решение это xl2tpd и OpenSwan.

Начало =).

Сначала настраивают xl2tpd. Настройка, как и все в Gentoo, делается элементарно. Основной конфигурационный файл xl2tpd /etc/xl2tpd/xl2tpd.conf. Привожу минимальное содержимое этого файла с которым Windows-клиент соединяется с настройками по умолчанию. Естественно речь идет о Window 7.

; l2tpd.conf
;
[global]

; Номер порта UDP на котором работает сервер l2tp
port = 1701

[lns default]

; Диапазон выдаваемых IP-адресов клиентам
ip range = 192.168.0.10-192.168.0.20

; IP-адрес для сервера
local ip = 192.168.0.1

; Запрет более 1 соединения на клиента
exclusive = yes

; Обязательная авторизация
require authentication = yes

; На время отладки полезная опция
ppp debug = yes

; Файл с опциями pppd для соединения
pppoptfile = /etc/ppp/options.l2tpd

Соответственно дальше можно резвиться, опций у xl2tpd навалом =), но нам нужно настроить точно также по минимуму pppd через /etc/ppp/options.l2tpd

#/etc/ppp/options.l2tpd
# Разрешаем устанавливать адреса при соединении
ipcp-accept-local
ipcp-accept-remote

# Устанавливаем Dns для Windows-клиентов
ms-dns 192.168.1.21

# На всякий случай отключаем компрессию, ибо с ней могут быть проблемы (не тестировал)
noccp

# Требовать авторизацию
auth

# Аппратное управление потоком (не тестировал)
crtscts

# Таймаут соединения в секундах
idle 180

# С размерами пакетов тоже все ясно
mtu 1480
mru 1480

# Просим не мучить клиентов маршрутом по умолчанию
nodefaultroute

# Подробные логи в syslog, после настройки можно отключить
debug

# Создать файл блокировок
lock

# Добавляет адрес в arp таблицу
proxyarp

# Для согласования соединения, в миллисекундах, по умолчанию 1000,
# но для надежности я выставил 5000
connect-delay 5000

# Ждать пока клиент не определится с соединением lcp
silent

# Разрешаем соединяться с использованием PAM, но при этом все равно нужна запись
# в pap-secrets, а пароль будет проверяться через PAM. Работает только для PAP
# при CHAP обязательно указание паролей в chap-secrets
login


Так как Windows по умолчанию не использует PAP, то надо настраивать через CHAP. Для авторизации пишем имя и пароль в chap-secrets

# client server secret IP addresses
user * password 192.168.0.0/24


Вот и все, первая часть, настройка самого xl2tpd готова. Запускаем и тестируем.

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