SDB:Настройка VPN

Перейти к: навигация, поиск
VPN - виртуальная частная сеть, позволяющая объединить одно или несколько сетевых соединений поверх доступной сети с помощью специального канала (туннель). Благодаря чему осуществляется высокая и надежная защита передаваемой информации, средствами безопасности (IPSec, OpenVPN, PPTP) и шифрованием, например, MS MPPE для PPTP (Microsoft VPN) или IPSec для L2TP.

Настройка VPN соединения требует общего понятия о сетях и в некоторых случаях специальных знаний, например, настройка таблицы маршрутизации, межсетевых экранов и VPN протоколов.

Для того, чтобы использовать VPN соединения в Linux Вам необходимо убедится в поддержке определенного протокола VPN соответствующими пакетами, которые возможно потребуется доустановить. На сегодняшний момент в openSUSE поддерживается следующие виды реализации VPN туннеля:

По степени защищенности:

Защищённые:
PPTP (Microsoft VPN) - туннельный протокол, позволяющий создавать защищенное соединения с сервером с помощью специального туннеля в стандартной, незащищённой сети.
OpenVPN - реализация виртуальной частной сети с открытым исходным кодом.
IPSec - набор протоколов для обеспечения защиты данных при транспортировке IP-пакетов, работающих на третьем сетевом уровне OSI.
Доверительные:
L2TP - протокол туннелирования второго уровня, объединяющий протокол L2F, разработанный компанией Cisco, и протокол PPTP корпорации Microsoft.

По способу реализации:

Cisco VPN - специальное программное обеспечение, предназначенное для создания IPSec-туннелей с сервером Cisco Easy VPN.
Novell VPN - программное обеспечение VPN IPSec, позволяющие безопасно обмениваться данными через сеть интернет с сетью, защищенной сервером Novell VPN.

Далее будут рассмотрены различные методы настройки VPN соединения с помощью графических инструментов.

Настройка VPN с помощью YaST

Внимание: Данный вид настройки доступен только в дистрибутивах openSUSE < 13.2. Для других версий openSUSE воспользуйтесь другими способами настройки VPN.
На сегодняшний момент для подключения к виртуальной частной сети с помощью YaST возможно только по протоколу PPTP. В случае возникновения трудностей Вы всегда можете обратиться к странице руководства "Справка" , что находится в нижней части окон.

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

Для настройки VPN соединения пройдите: YaST → Сетевые устройства → DSL:

  • В открывшимся окне "Обзор настройки DSL" в нижней части окна: "Добавить"
    • Режим РРР: "Point to Point Tonneling Protocol"
    • Ethernet плата: если карт больше, чем одна, тогда "Изменить устройство" на то, что смотрит в локальную сеть
    • Имя или IP адрес сервера: "IP адрес VPN-сервера"
    • Включить устройство: "По желанию"
    • Разрешить управление устройством пользователям не-администраторам через K/Qinternet: "По желанию"
    • Перейдите: "Настроить сетевые карты"
      • В открывшимся окне, вкладки "Общие параметры" выберите: "Традиционный методом ifup"
      • Чтобы начать конфигурацию локальной сети перейдите в раздел вкладки "Обзор"
      • В нижней части окна выберите: "Редактировать"
        • В разделе "Настройка сетевой карты" вкладки "Адрес", присвойте Статический IP-адрес или Динамический адрес "DHCP", если получение IP-адреса осуществляется посредством DHCP-клиента
        • ... и "Далее"
      • В разделе "Настройки сети" вкладки "Имя узла/DNS" впишите: 1-ый и 2-ой адрес сервера имен DNS, в случае, если адреса не присваиваются автоматически посредством DHCP
      • На следующей вкладке "Маршрутизация" впишите: IP-адрес шлюза локальной сети для соответствующего устройства и в случае необходимости маршруты в "Таблице маршрутизации"
      • ... и, наконец, "OK"
    • В разделе "Настройка DSL" выберите: "Далее"
    • В открывшемся окне "Выбор интернет провайдера (ISP)" выберите подходящего провайдера или создайте нового, выбрав: "Новый"
    • В открывшемся окне "Параметры провайдера" впишите имя своего провайдера. Это необходимо только для Вас, чтобы в последующем было легче ориентироваться. Также заполните поля: "Имя пользователя", выданный Вам вашим провайдером или администратором частной сети, и по желанию свой пароль, для этого нужно убрать галочку с метки "Всегда запрашивать пароль". После чего станет доступным для ввода поле: "Пароль".
    • ... и "Далее"
    • В разделе "Параметры соединения" оставьте настройки по умолчанию или отредактируйте, согласно Вашим требованиям. Пункт "Подробности IP" - оставьте по умолчанию или настройте, согласно требованиям администрации виртуальной частной сети
    • ... и, наконец, "Далее"
  • ..."OK"

Поздравление! Настройка закончена. Теперь Вы можете подключиться, выполнив:

# ifup dslX 

где dslX - имя созданного подключения, например, dsl0.

Для разрыва соединения, воспользуйтесь командой:

# ifdown dslX 

Если же, Вы во время настройки отметили флажок "Разрешить управление устройством пользователям не-администраторам через K/Qinternet", тогда для появления звонилки в трее, воспользуйтесь комбинацией клавиш Alt+F2 и пропишите qinternet или kinternet. Щелкните правой клавишей мышки по значку в трее, и в меню для соединения с VPN выберете провайдера, который Вы прописали ранее.

Возможные проблемы

Yastvpn10.png
br>

Частой ошибкой при настройке VPN соединения является то, что после соединения становится недоступны VPN или DNS сервера. Это происходит из-за того, что маршруты до этих серверов заданы как шлюз по умолчанию. Убедитесь, в том, что существующие маршруты до VPN и DNS серверов, прописаны явно, а не как шлюз по умолчанию. Для настройки необходимых маршрутов, воспользуйтесь "Таблицей маршрутизации", что находится: YaST → Сетевые настройки → Маршрутизация .


После настройки таблицы маршрутизации, Вы должны увидеть приблизительно следующие:

~> /sbin/route -n
Kernel IP routing table
Destination   Gateway       Genmask           Flags  Metric Ref    Use  Iface
0.0.0.0       10.167.0.17   0.0.0.0           UG     0      0      0    eth0
10.167.0.0    0.0.0.0       255.255.0.0       U      0      0      0    eth0
195.14.50.21  10.167.0.17   255.255.255.255   UGH    0      0      0    eth0
195.14.50.1   10.167.0.17   255.255.255.255   UGH    0      0      0    eth0
195.14.38.8   10.167.0.17   255.255.255.255   UGH    0      0      0    eth0

После соединения с VPN сервером, маршрут по умолчанию будет автоматически перезаписан.

Если соединение установлено, но не происходит передача данных или идет большой поток входящего трафика, то следует проверить доступность VPN и DNS серверов провайдера, путем посылания ping пакетов.

$ ping -c5 IP-адрес

Часто для подключения к провайдерам, которые используют в качестве VPN сервера Windows Server 2k или 2k3, требуется включить шифрование MS MPPE. Для этого в файл VPN-соединения /etc/sysconfig/network/ifcfg-dsl0 (или другой) необходимо добавить строку :

PPPD_OPTIONS='refuse-chap refuse-mschap refuse-eap refuse-pap require-mppe' 

В вышеприведенном примере, используется шифрование MPPE по протоколу аутентификации MS-CHAP v2, т.е.отбрасываются все методы аутентификации "refuse-chap|mschap|eap|pap", кроме нужной "mschap-v2". Возможные методы шифрования, а также др. параметры PPPD_OPTIONS, Вы можете посмотреть обратившись к странице руководства:

$ man pppd 

Если это не помогает, то в дальнейшей диагностике проблем поможет строка:

PPPD_OPTIONS='debug' 

После внесения изменений в файл соединения, необходимо запустить в терминале :

# tail -f /var/log/messages 

...и попытаться подключиться.

Простой способ настройки VPN c помощью kvpnc (KDE)

Если Вы используете KDE, то Вы можете настроить VPN соединение с помощью пакета kvpnc с DVD или из основного репозитория.

Запустив эту программу, Вы увидите простой мастер настройки, схожий с аналогичным мастером в MS Windows.

На первом шаге необходимо создать профиль и выбрать тип VPN соединения.

Список поддерживаемых протоколов Вы найдете на официальном сайте проекта.

Простой способ настройки VPN с помощью NetworkManager

Если сеть управляется с помощью NetworkManager (YaST -> Сетевые настройки -> Общие параметры -> Управляемый пользователем NetworkManager), то VPN соединение можно легко настроить через графический интерфейс.

  • Перейдите в настройки NetworkManager выбрав "Сетевые параметры" в контекстном меню апплета.
  • Перейдите на вкладку VPN, для того, чтобы вкладка была доступна должен быть установлен хотя бы один из следующих пакетов, в зависимости от того какую реализацию VPN Вы хотите использовать для соединения:
    • NetworkManager-novellvpn
    • NetworkManager-openconnect
    • NetworkManager-openvpn
    • NetworkManager-pptp
    • NetworkManager-vpnc
  • Создайте новое соединение указав необходимые параметры.

Самый простой способ настройки VPN в любом DE

Начиная с версии vpnpptp >= 0.3.9 поддерживаются только следующие дистрибутивы: Mageia, MagicOS, EduMagic.

Самый простой способ настроить VPN соединение в любом DE - установить пакет vpnpptp с сайта http://sourceforge.net/projects/vpnpptp/.

Запустив эту программу, Вы увидите простой мастер настройки, схожий с аналогичным мастером в MS Windows.

Дополнительные источники

Перевод: man pppd

Настройка VPN из командной строки