Для Ubuntu Trusty Server настроить PPTP клиент

Posted by

Задача: Хочу применительно к Ubuntu Trusty Server настроить клиент для связи с Mikrotik где поднят VPN PPTP.

Что-то я уже давно не публиковал на своем блоге, но я уже здесь и готов исправить текущую ситуацию. На этот раз я хочу показать, как настроить PPTP-клиент, но не на Desktop редакции системы Ubuntu, а на Server. Нужно это мне в первую очередь, если нужно иметь возможность копировать бекапы, как если бы я находился в локальной сети. Но одними резервными копиями все не ограничивается: — получается система которая посредством pptp подключилась к удаленному узлу (Mikrotik PPTP VPN) может иметь доступ, как внутри текущей сети, в удаленной и выход в интернет. Я хочу чтобы данная заметка имела место быть опубликованной на моем блоге — это же шпаргалка действий на основе поставленных задач с которыми я сталкиваюсь или буду сталкиваться в повседневности.

И так, обновляю систему в рамках текущего Ubuntu Trusty Server релиза:

ekzorchik@srv-trusty:~$ sudo rm -Rf /var/lib/apt/lists

ekzorchik@srv-trusty:~$ sudo apt-get update && sudo apt-get upgrade -y

Устанавливаю в систему клиент для организации подключения через pptp:

ekzorchik@srv-trusty:~$ apt-cache search pptp-linux

pptp-linux - Point-to-Point Tunneling Protocol (PPTP) Client

ekzorchik@srv-trusty:~$ sudo apt-get install pptp-linux -y

Создаю свою конфигурацию на подключение, а все другие не используемые удаляю:

ekzorchik@srv-trusty:~$ sudo rm /etc/ppp/peers/provider

ekzorchik@srv-trusty:~$ sudo vi /etc/ppp/peers/mikrotik

pty "pptp home.domain.ru --nolaunchpppd"

#имя соединения

remotename mikrotik

require-mschap-v2

require-mppe-128

#логин

user <user>

#пароль

password "<pass>"

nodeflate

nobsdcomp

noauth

#nodefaultroute  #отключаем маршрут по умолчанию,

#если он вам нужен - замените на defaultroute

defaultroute

#принудительно изменять маршрут по умолчанию

replacedefaultroute

#переподключаться при обрыве

persist

#количество попыток переподключения

maxfail 10

#интервал между переподключениями

holdoff 15

#номер ppp интерфейса

unit 1

Запускаю созданную конфигурацию:

ekzorchik@srv-trusty:~$ sudo pppd call mikrotik

Т.к. запуск конфигурации не сопровождается выводом какой-либо информации на консоль, то значит придется см. системные логи, а что говорится в них:

ekzorchik@srv-trusty:~$ tail -f /var/log/syslog

Dec 7 20:38:37 srv-trusty pppd[23445]: CHAP authentication succeeded

Dec 7 20:38:37 srv-trusty kernel: [ 1690.046189] PPP MPPE Compression module registered

Dec 7 20:38:37 srv-trusty pppd[23445]: MPPE 128-bit stateless compression enabled

Dec 7 20:38:38 srv-trusty pppd[23445]: replacing old default route to eth0 [155.55.55.1]

Dec 7 20:38:38 srv-trusty pppd[23445]: local IP address 171.29.100.2

Dec 7 20:38:38 srv-trusty pppd[23445]: remote IP address 171.29.100.1

Смотрю текущий ip адрес у активированных интерфейсов в системе:

ekzorchik@srv-trusty:~$ ip r

default dev ppp1 scope link

<EXTERNAL_IP_VPN> via 155.55.55.1 dev eth0 src 155.55.55.6

171.29.100.1 dev ppp1 proto kernel scope link src 171.29.100.2

155.55.55.0/24 dev eth0 proto kernel scope link src 155.55.55.6

Проверяю, а вижу ли я ресурсы за Mikrotik:

ekzorchik@srv-trusty:~$ ping <INTERNAL_IP_ADDRESS>

PING <INTERNAL_IP_ADDRESS> (<INTERNAL_IP_ADDRESS>) 56(84) bytes of data.

64 bytes from <INTERNAL_IP_ADDRESS>: icmp_seq=1 ttl=64 time=9.98 ms

64 bytes from <INTERNAL_IP_ADDRESS>: icmp_seq=2 ttl=64 time=16.0 ms

ответ да вижу и локальные в своей сети я также вижу:

ekzorchik@srv-trusty:~$ ping <LOCAL_IP_IN_NETWORK>

PING <LOCAL_IP_IN_NETWORK> (<LOCAL_IP_IN_NETWORK>) 56(84) bytes of data.

64 bytes from <LOCAL_IP_IN_NETWORK>: icmp_seq=1 ttl=64 time=7.37 ms

64 bytes from <LOCAL_IP_IN_NETWORK>: icmp_seq=2 ttl=64 time=2.36 ms

Только не вижу интернет:

ekzorchik@srv-trusty:~$ ping ya.ru

^C

Для решения проблемы с доступом в интернет: — в процессе…

Либо подключать к PPTPсерверу через настроенный клиент и отключать можно так:

ekzorchik@srv-trusty:~$ sudo pon

The file /etc/ppp/peers/provider does not exist. Please create it or use

a command line argument to use another file in the /etc/ppp/peers/ directory.

ekzorchik@srv-trusty:~$ sudo pon mikrotik

ekzorchik@srv-trusty:~$ sudo plog

Dec 7 21:01:14 srv-trusty pppd[2013]: CHAP authentication succeeded

Dec 7 21:01:14 srv-trusty pppd[2013]: MPPE 128-bit stateless compression enabled

Dec 7 21:01:15 srv-trusty pppd[2013]: replacing old default route to eth0 [155.55.55.1]

Dec 7 21:01:15 srv-trusty pppd[2013]: local IP address 171.29.100.2

Dec 7 21:01:15 srv-trusty pppd[2013]: remote IP address 171.29.100.1

ekzorchik@srv-trusty:~$ ifconfig | grep P-t-P

inet addr:171.29.100.2 P-t-P:171.29.100.1 Mask:255.255.255.255

ekzorchik@srv-trusty:~$ sudo poff mikrotik

ekzorchik@srv-trusty:~$ sudo plog

Dec 7 21:01:35 srv-trusty pppd[2013]: Sent 0 bytes, received 0 bytes.

Dec 7 21:01:35 srv-trusty pppd[2013]: restoring old default route to eth0 [155.55.55.1]

Dec 7 21:01:35 srv-trusty pppd[2013]: MPPE disabled

Dec 7 21:01:35 srv-trusty pppd[2013]: Child process pptp host.domain.ru --nolaunchpppd (pid 2014) terminated with signal 15

Dec 7 21:01:35 srv-trusty pppd[2013]: Modem hangup

Dec 7 21:01:35 srv-trusty pppd[2013]: Connection terminated.

Dec 7 21:01:35 srv-trusty pppd[2013]: Exit.

Убить/завершить подключение через pptpклиент:

ekzorchik@srv-trusty:~$ sudo killall pppd

ekzorchik@srv-trusty:~$ ip r

default via 155.55.55.1 dev eth0

<EXTERNAL_IP_VPN> via 155.55.55.1 dev eth0 src 155.55.55.6

155.55.55.0/24 dev eth0 proto kernel scope link src 155.55.55.6

итого: я подключаюсь к VPN, вижу локальную сеть и за сеть за VPN но не вижу интернет с текущей системы.

Разобрал как с системы получить доступ в интернет и необходимые сети:

ekzorchik@srv-trusty:~$ sudo vi /etc/ppp/peers/mikrotik

pty "pptp host.domain.ru --nolaunchpppd"

#имя соединения

remotename mikrotik

require-mschap-v2

require-mppe-128

#логин

user <user>

#пароль

password "<password>"

nodeflate

nobsdcomp

noauth

#переподключаться при обрыве

persist

#количество попыток переподключения

maxfail 10

#интервал между переподключениями

holdoff 15

#номер ppp интерфейса

unit 1

ekzorchik@srv-trusty:~$ sudo vi /etc/ppp/ip-up.d/route-traffic

#!/bin/bash

NET1="<LAN_NETWORK_ZA_VPN_MIKROTIK>"

NET2="<LAN_NETWORK_ZA_VPN_MIKROTIK>"

NET3="<LAN_NETWORK_ZA_VPN_MIKROTIK>"

IFACE="ppp1"

route add -net ${NET1} dev ${IFACE}

route add -net ${NET2} dev ${IFACE}

route add -net ${NET3} dev ${IFACE}

ekzorchik@srv-trusty:~$ sudo pon mikrotik

Чтобы удалить данный клиент с системы:

ekzorchik@srv-trusty:~$ sudo apt-get remove pptp-linux --purge -y

ekzorchik@srv-trusty:~$ sudo rm -Rf /etc/ppp /usr/share/ppp /usr/share/doc/ppp

Итого, я сделал/рассмотрел в шагах, что и как нужно сделать дабы моя Server (серверная) редакция Ubuntu Trusty смогла подключиться к моей сети находящейся за VPN подключением.

Работает. На этом у меня всё, с уважением автор блога Олло Александр aka ekzorchik.