Создание VPN сервера
В данной статье будет рассмотрен один из способов организации VPN(pop-top) сервера на базе ОС Linux, с поддержкой mppe.
Сразу оговорюсь, что для того, чтоб не замарачиваться на сторонних проблемах я буду использовать ядро с уже включённым в него модулем ppp_mppe, тобишь ядро 2.6.15 или старше... Сами процессы сборки в данной статье описаны не будут, ввиду разных вкусов сборки, единственное что быдет описываться, так это какие параметры при сборке пакетов просто обязаны присутствовать... Вобщем начнём. Нам понадобятся: ядро, ppp, pptpd Собираем ядро с поддержкой mppe шифрования. Далее собираем ppp, также с потдержкой mppe(параметр включен по умолчанию), и только после этого собираем pptpd :)... После сборки и установки переходим к редактированию конфигов... pptpd.conf: debug #очень полезная опция на стадии отладки option /etc/ppp/options.pptpd # путь до следующего конфига localip 192.168.2.254 #адрес сервера внутри VPN remoteip 192.168.2.2-252 #диапазон адресов для удалённых машин options.pptpd: auth debug #полезная опция на стадии отладки require-chap require-mschap require-mschap-v2 local defaultroute 192.168.2.254: ms-dns XX.XX.XX.XX #адрес локального, либо глобального DNS сервера require-mppe #включаем потдержку шифрования require-mppe-40 require-mppe-128 chap-secrets: # имя юзера - сервер - пароль - адресс по умолчанию test * test * стартуем сервис pptpd и проверяем возможность подключения: под хрёй создаём подключение на рабочем столе и смотрим на результат, при первой попытке конекта может вылезти ошибка 800, не обращая на неё внимания закрываем все окна, открываем заново окно подключения и пробуем снова... Если не получилось подключиться смотрим логи... Далее надо перерулять трафик... echo "1" > /proc/sys/net/ipv4/ip_forward echo "1" > /proc/sys/net/ipv4/conf/all/rp_filter echo "1" > /proc/sys/net/ipv4/ip_dynaddr iptables -A INPUT -p ALL -j ACCEPT iptables -A FORWARD -p ALL -j ACCEPT iptables -A OUTPUT -p ALL -j ACCEPT iptables -t NAT -A POSTROUTING -o eth0 -j MASQUERADE # куда перенаправляем трафик iptables -I POSTROUTING 1 -t NAT -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --set-mss 1024 # для большей совместимости с хрёй Вот вроде и всё... Конечно сюда не мешало бы прикрутить какой нить биллинг, но это уже как нить в следующий раз... PS: Данная статья не притендует на полноту описания и его коректность, но, на данный момент, у меня нет возможности всё это расписать более подробно и коректно... :( Со временем эта статья будет подправляться и дополняться, а сейчас... просто рабочие конфиги... |
©2006 ДиниSoft