Для работы 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 pptp-l2tp-vpn-russia-1.atomintersoft.com --nolaunchpppd"
defaultroute
Номер ppp интрефейса создает для подключения всегда один и тот же сетевой интерфейс, в нашем случае это будет ppp12.
Отдельно стоит остановиться на наборе опций для автоматического переподключения. Мы настоятельно советуем ограничить количество попыток (0 - неограничено) разумным числом и не ставить слишком маленький промежуток времени. Это позволит ограничить нагрузку на VPN-сервер в случае проблем с подключением (например нет денег на балансе или изменились учетные данные).
Теперь укажем авторизационные данные для нашего пользователя, для этого в файл /etc/ppp/chap-secrets добавим следующую строку:
"vpnuser" TEST "vpnpassword"
которая предусматривает использование указанных учетных данных, где vpnpassword -пароль соединения, для удаленного соеднинения TEST (это имя мы указали в опции remotename).
Теперь самое время проверить наше соединение. Первый раз лучше запустить его в интерактивном режиме, тогда все сообщения об ошибках и ходе подключения вы будете видеть прямо в консоли:
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 интерфейса.