вторник, 29 июня 2010 г.

Настройка VPN соединения в GNU/Linux

Многие провайдеры предоставляют доступ во внешний мир посредствомм VPN.

Я расскажу о том как настроить pptp соединение в операционной системе Linux.


  1. Все действия мы будем выполнять с привилегиями суперпользователя, зайдем в рутову консоль
    $ sudo bash
  2. Теперь нам необходимо установить клиент pptp-linux
    Для Ubuntu/Debian
    # apt-get install pptp-linux
  3. От провайдера получаем следующую информацию:
       YOUR_IP - твой айпишник
       YOUR_GATEWAY - твой шлюз
       YOUR_LOGIN_NAME - имя пользователя
       YOUR_PASSWORD - пароль
       YOUR_DNS_1 и YOUR_DNS_2 адреса DNS серверов
       Метод авторизации, в моем случае это CHAP
  4. Настраиваем локальную сеть:
    Открываем файл /etc/network/interfaces
    и вставляем туда текст:
    auto lo
    iface lo inet loopback
    auto eth0

    iface eth0 inet static
    address YOUR_IP
    netmask 255.255.255.192 # вместо 255.255.255.192 маска подсети которую указал провайдер
    gateway YOUR_GATEWAY

    up route add -net 10.0.0.0 netmask 255.0.0.0 gw YOUR_GATEWAY
    up route add -host 195.98.64.65 gw YOUR_GATEWAY
    up route add -host 195.98.64.66 gw YOUR_GATEWAY
    up route add -net 192.168.149.0/24 gw YOUR_GATEWAY # вместо 192.168.149.0/24 имя pptp сервера

  5. Открываем файл /etc/resolv.conf и прописываем туда DNS:
    nameserver YOUR_DNS_1
    nameserver YOUR_DNS_2



  6. Настраиваем VPN соединение:
  7. Открываем файл /etc/ppp/options.pptp и вставляем туда текст:
    lock
    noauth
    nobsdcomp
    nodeflate



  8. Открываем файл /etc/ppp/chap-secrets и вставляем туда
    YOUR_LOGIN_NAME PPTP YOUR_PASSWORD

  9. Создаем файл /etc/ppp/peers/vpn и вставляем туда текст
    pty '/usr/sbin/pptp pptp.server --nolaunchpppd' # вместо pptp.server имя своего pptp сервера
    name YOUR_LOGIN_NAME
    remotename PPTP
    # debug
    lock
    require-chap
    noauth
    # nodetach
    noproxyarp
    defaultroute
    replacedefaultroute
    mtu 1400
    # Чтобы восстанавливалась связь после обрывов
    persist
    holdoff 10
    maxfail 0


  10. Пробуем!
    # pon vpn debug dump logfd 2 nodetach
    Если в конце вы увидите следующие строки

    Script /etc/ppp/ip-up started (pid 9658)
    Script /etc/ppp/ip-up finished (pid 9658), status = 0x0

    это означает, что подключение успешно выполнено. В противном случае попробуйте еще пару раз. Возможно просто произошел какой-то сбой при подключении.

    Для запуска в штатном режиме вводите
    $ sudo pon vpn
    Для остановки:
    $ sudo poff vpn

  11. И чтобы соединение запускалось автоматически при загрузке операционной системы, добавим его в файл сетевых интерфейсов /etc/network/interfaces
    auto ppp0
    iface ppp0 inet ppp
    provider vpn



Комментариев нет:

Отправить комментарий