В какой-то момент в фирме, где работает автор этих строк, встала задача - убрать PPTP-сервер под управлением Windows и заменить его на PPTP-сервер под управлением Linux.
Предложение автора использовать OpenVPN вместо PPTP было (справедливо) отвергнуто с аргументом о нежелании кардинально менять настройки клиентских машин. Тем более что поскольку большинство из них работает под управлением Windows и PPTP-клиент у них является встроенным в систему, чего не скажешь про OpenVPN.
Эта статья описывает установку и настройку того самого PPTP-сервера под управлением Linux. В качестве исходных данных будем использовать: офисный интернет-шлюз под управлением Ubuntu Server 7.10 с адресом в локальной сети 192.168.1.1.
Для начала устанавливаем всё необходимое:
apt-get install ppp pptpd
Далее приступаем к настройке. Всё достаточно просто. Первым делом открываем в редакторе файл /etc/pptpd.conf и дописываем в конец следующие строки:
# IP-адрес сервера в локальной сети localip 192.168.1.1 # Диапазон адресов для клиентов PPTP-сервера remoteip 192.168.1.200-254
Следующим шагом дописываем в файл /etc/ppp/pptpd-options следующие две строчки:
# требуем авторизацию у клиентов auth # Используем шифрование require-mppe
Ну и наконец открываем в редакторе файл /etc/ppp/chap-secrets и заполняем строчками вида:
# Если пользователь должен динамически получать IP-адрес # из диапазона remoteip в pptpd.conf: user1 pptpd password1 "*" # Если мы хотим привязать определённый IP к логину: user2 pptpd password2 "192.168.1.101"
После этого перезапускаем pptpd:
/etc/init.d/pptpd restart
Скорее всего на сервере стоит файрволл. Добавим в скрипт iptables несколько строк:
# Разрешаем протокол GRE для всех; iptables -A INPUT -p gre -j ACCEPT # Разрешаем соединение с PPTP-сервером для всех; iptables -A INPUT -m tcp -p tcp --dport 1723 -j ACCEPT
На этом настройка PPTP-сервера заканчивается. Для подключения из под Windows можно воспользоваться мастером настройки сети. В качестве сервера ("шлюза") нужно указать внешний адрес нашего сервера. Настроить PPTP-соединение в Linux поможет PPTP Client HowTo.
Автор надеется (но не обещает!) что эта статья будет полезной читателю.
tierpunk 2008-03-07 12:27:57 (#)