Данной статьей мы продолжим тему настройки коммутируемых соединений в среде Ubuntu Server. Сегодня рассмотрим настройку PPTP подключений, которые могут использоваться как для подключения к интернету, так и для организации корпоративных сетей. Несмотря на то, что материал рассчитан в первую очередь на системных администраторов, он будет полезен всем пользователям Linux.
Онлайн-курс по устройству компьютерных сетей
На углубленном курсе "Архитектура современных компьютерных сетей" вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.
Для работы Ubuntu Server в качестве PPTP-клиента необходимо установить пакет pptp-linux:
sudo apt-get install pptp-linux
Основные настройки пакета, применяемые ко всем PPTP соедниненям по умолчанию хранятся в /etc/ppp/options.pptp, в большинстве случаев менять их нет необходимости, однако вы можете добавить какие-то свои опции, общие для всех соединений.
Для настройки подключения создадим в /etc/ppp/peers файл настроек с его именем:
sudo touch /etc/ppp/peers/test-vpn
Откроем его и внесем следующее содержимое:
pty "pptp vpn.server.local --nolaunchpppd" #тип и адрес сервера
name vpnuser #логин
remotename TEST #имя соединения
require-mppe-128 #включаем поддержку MPPE
nodefaultroute #не создавать маршрут по умолчанию
unit 12 #номер ppp интерфейса
persist #переподключаться при обрыве
maxfail 10 #количество попыток переподключения
holdoff 15 #интервал между подключениями
file /etc/ppp/options.pptp
ipparam $TUNNEL
В нашем примере создано PPTP подключение для корпоративной сети, поэтому мы добавили опцию "не создавать маршрут по умолчанию", если вы настраиваете соединение для доступа в интернет, то нужно наоборот разрешить создание нулевого маршрута, для этого укажите опции:
defaultroute #создавать маршрут по умолчанию
replacedefaultroute #принудительно изменять маршрут по умолчанию
Опция "включаем поддержку MPPE" не является обязательной и требуется только тогда, когда сервер использует этот тип шифрования. Номер ppp интрефейса создает для подключения всегда один и тот же сетевой интерфейс, в нашем случае это будет ppp12.
Отдельно стоит остановиться на наборе опций для автоматического переподключения. Мы настоятельно советуем ограничить количество попыток (0 - неограничено) разумным числом и не ставить слишком маленький промежуток времени. Это позволит ограничить нагрузку на VPN-сервер в случае проблем с подключением (например нет денег на балансе или изменились учетные данные).
Если вы подключаетесь к доменной сети, то имя пользователя следует указывать следующим образом:
name DOMAIN\\vpnuser
Теперь укажем авторизационные данные для нашего пользователя, для этого в файл /etc/ppp/chap-secrets добавим следующую строку:
"vpnuser" TEST "vpnpassword"
которая предусматривает использование указанных учетных данных, где vpnpassword -пароль соединения, для удаленного соеднинения TEST (это имя мы указали в опции remotename). Для доменного пользователя строка будет выглядеть так:
"DOMAIN\\vpnuser" TEST "vpnpassword"
Теперь самое время проверить наше соединение. Первый раз лучше запустить его в интерактивном режиме, тогда все сообщения об ошибках и ходе подключения вы будете видеть прямо в консоли:
pon test-vpn nodetach
В консоли сервера также видим подключившегося клиента:
В дальнейшем управлять соединением можно при помощи команд pon и poff (подключить и отключить соответственно).
Чтобы автоматически поднимать соединение при запуске системы в файл /etc/network/interfaces добавим секцию:
auto tunnel
iface tunnel inet ppp
provider test-vpn
Для доступа в корпоративную сеть может понадобиться добавление статических маршрутов, это тоже можно делать автоматически, для этого в конец созданой секции добавим строку:
up route add -net 192.168.0.0 netmask 255.255.255.0 gw 192.168.0.222
Мы привели реальный маршрут используемый в нашем случае, вы должны указать здесь свои данные, если они не известны - уточните их у системного администратора.
Перезапустим сеть и убедимся что все работает правильно:
sudo /etc/init.d/networking restart
Для получения списка маршрутов воспользуйтесь командой route, также можно пропинговать какой-нибудь внутренний хост.
При подключении к сети интернет через PPTP бывают ситуации, когда, несмотря на указанные опции, нулевой маршрут через туннель не устанавливается. В этом случае можно в конец соответсвующей секции в /etc/network/interfaces добавить:
up route del default
up route add default dev ppp12
где ppp12 - имя вашего ppp интерфейса.
Онлайн-курс по устройству компьютерных сетей
На углубленном курсе "Архитектура современных компьютерных сетей" вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.
Последние комментарии