How-to`s — Установка PPTP (VPN) соединения
Некоторые ресурсы инфраструктуры нашего офиса не доступны через веб (некоторые по соображениям безопасности, некоторые потому что еще настраиваются). Но необходимость пользоваться ими время от времени возникает. В частности, нужно было из офиса воспользоваться системой усправления задачами (которая пока не доступна через веб по второй причине). Благо PPTP-сервер в офисе установлен и настроен. В убунте (которая является моей основной системой) можно поставить плагин к нетворк-манагеру, что я и сделал, но он так и не захотел подключаться, по непонятным для меня причинам. Унывал я не долго, ибо раньше инет получал только таким способом и решил по старинке настроить все руками, чтобы наверняка =)
Первое что нам понадобится - это пакет pptp-linux (в случае с убунтой он не установлен по умолчанию, но на CD есть).
После установки пакета можно приступать к настройке.
В данном случае я оставил совсем без изменений настройки pptp соединения, которые можно покрутить в /etc/ppp/options.pptp (в тех немногих случаях когда приходилось пользоваться пптп всегда все работало с настройками по умолчанию).
Теперь, если попытаться попинговать адрес из локалки сети, к которой мы подключились у нас ничего ен получится =) А все дело в том, что соединение то мы установили, но не сказали системе, что к локалке нужно ходить именно через это соединение. При установке пптп соединения интерфейс ррр получает 2 ип-адреса - локальный (т.е. адрес нашего компа в удаленной сети) и удаленный (т.е. локальный адрес пптп сервера). Если вы подключались с параметром nodetach, то последние 2 строки лога подключения должны были выглядеть примерноследующим образом
где первый адрес - это наш, а второй - адрес сервера. Если же подключались с возвращением управления, то можно просто посмотреть состояние интерфейса ppp (в большинстве случаем его имя будет ppp0), выполнив ifconfig. В моем случае первые 2 строки выглядят так:
Собственно в моем случае адрес моей машины - 192.168.10.220 (это нам не интересно), а локальный адрес сервера пптп 192.168.10.210 (а вот это то что нужно). Посему мне нужно указать системе ходить в локальную сеть именно через этот шлюз. Делается это просто
route add -net 192.168.10.0 netmask 255.255.255.0 gw 192.168.10.210
Для вашего случая конечно же нужно указать свой адрес сети и маску подсети.
После этх несложных манипуляций появляется пинг до машин локальной сети моего офиса, и можно свободно пользоваться в браузере системой управления задачами (ради которой я все это и затевал =)).
UPD:
Благодаря каментам пользователя dr_magnus все вышеописаное можно реализовать без настройки конфигов, выполнив пару команд:
Интерфейс в большинстве случаев будет ppp0
Первое что нам понадобится - это пакет pptp-linux (в случае с убунтой он не установлен по умолчанию, но на CD есть).
После установки пакета можно приступать к настройке.
- Создаем в /etc/ppp/peers файл с именем соединения (в моем случае это dmserver) и вбиваем туда следующее:
1
2
3
4
5
6
7
8
9pty "pptp <адрес-сервера> --nolaunchpppd"
name <имя-пользователя>
remotename <имя-соединения>
require-mppe-128
file /etc/ppp/options.pptp
- Открываем на редактирование файл /etc/ppp/chap-secrets и вбиваем туда следующую строку:
<имя-пользователя> <имя-соединения> <пароль> *
- Устанавливаем соединение выполнив pon <имя-соединения>, или pon <имя-соединения> nodetach, чтобы управление не возвращалось после установления соединения
- После завершения работы разрываем соединение poff <имя-соединения>, либо просто Ctrl-C, если не возвращали управление
В данном случае я оставил совсем без изменений настройки pptp соединения, которые можно покрутить в /etc/ppp/options.pptp (в тех немногих случаях когда приходилось пользоваться пптп всегда все работало с настройками по умолчанию).
Теперь, если попытаться попинговать адрес из локалки сети, к которой мы подключились у нас ничего ен получится =) А все дело в том, что соединение то мы установили, но не сказали системе, что к локалке нужно ходить именно через это соединение. При установке пптп соединения интерфейс ррр получает 2 ип-адреса - локальный (т.е. адрес нашего компа в удаленной сети) и удаленный (т.е. локальный адрес пптп сервера). Если вы подключались с параметром nodetach, то последние 2 строки лога подключения должны были выглядеть примерноследующим образом
1 2 3 |
local IP address 192.168.10.220 |
где первый адрес - это наш, а второй - адрес сервера. Если же подключались с возвращением управления, то можно просто посмотреть состояние интерфейса ppp (в большинстве случаем его имя будет ppp0), выполнив ifconfig. В моем случае первые 2 строки выглядят так:
1 2 3 |
ppp0 Link encap:Point-to-Point Protocol |
Собственно в моем случае адрес моей машины - 192.168.10.220 (это нам не интересно), а локальный адрес сервера пптп 192.168.10.210 (а вот это то что нужно). Посему мне нужно указать системе ходить в локальную сеть именно через этот шлюз. Делается это просто
route add -net 192.168.10.0 netmask 255.255.255.0 gw 192.168.10.210
Для вашего случая конечно же нужно указать свой адрес сети и маску подсети.
После этх несложных манипуляций появляется пинг до машин локальной сети моего офиса, и можно свободно пользоваться в браузере системой управления задачами (ради которой я все это и затевал =)).
UPD:
Благодаря каментам пользователя dr_magnus все вышеописаное можно реализовать без настройки конфигов, выполнив пару команд:
1 2 3 |
sudo pptp <адрес-сервера> user <имя-пользователя> password <пароль> require-mppe-128 |
Интерфейс в большинстве случаев будет ppp0