Контактная информация

По всем интересующим вас вопросам связывайтесь при помощи контактной информации приведенной на этой странице!

skype: metsof
email: accusser@gmail.com

В социальных сетях...

Форма обратной связи

Авторизация

Статьи об операционной системе Linux

Сайдбар

Подключение VPN сервера с помощью РРТР

08 апр. 2014

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

Точка доступа WLAN подключается к серверу через специальный сетевой интерфейс. Конфигурация DHCP-сервера такова, что на этом интерфейсе компьютерам присваиваются адреса из адресного пространства 172.168.0.*.

Трафик, идущий через сетевой интерфейс WLAN, насколько это возможно, блокируется брандмауэром. Принимаются только те пакеты, которые необходимы для DHCP-конфигурации клиентов WLAN и для VPN.


Локальная сеть состоит из двух частей: защищенной (LAN) и незащищенной (WLAN):
192.168.0.* — обычная локальная сеть (частная); 172.16.0.* — беспроводная сеть (общедоступная, WLAN).

На сервере нужно оборудовать три сетевых интерфейса, которые будут работать при подобной конфигурации следующим образом: ethO — 10.0.0.1 (доступ в Интернет через ADSL-роутер); eth1 — 192.168.0.1 (LAN); eth2 — 172.16.0.1 (WLAN).

Сервер использует сеть WLAN только для работы с DHCP и VPN. Все остальные сетевые функции предоставляются клиентам WLAN через VPN-туннель. Клиенты WLAN через VPN подключаются к сети 192.168.0.*, таким образом, с помощью VPN они органично вплетаются в локальную сеть.

Проблемы, связанные с сервером имен. Принципиальное ограничение РРТР-VPN заключается в том, что хотя VPN-клиенты и могут использовать локальную сеть, их имена при этом остаются неизвестными. Причина этого проста: IP-адреса клиентам раздает не DHCP-сервер, а РРТР-сервер. А сервер имен (то есть bind) ничего об этом не узнает. В отличие от dhcpd, pptpd не поддерживает подобного обмена информацией с сервером имен. В результате сервер имен не может соотнести хост-имена VPN-клиентов и их IP-адреса.

Конфигурация сети на сервере



Теперь мы должны добавить к конфигурации сети, представленной в главе 17, третий сетевой интерфейс — eth2, который должен быть сконфигурирован статически и иметь IP-адрес 172.16.0.1. Если выработаете с Debian или Ubuntu, то строки в /etc/network/interfaces должны выглядеть так:

# Файл /etc/network/interfaces

# Интерфейс для подключения к точке доступа WLAN auto eth2

iface eth2 inet static address 172.16.0.1 netmask 255.255.255.0

Конфигурация DHCP.

Теперь DHCP-сервер должен обслуживать интерфейс WLAN eth2 и присваивать клиентам WLAN адреса из диапазона 172.16.0.*. Для этого необходимо отдельно сгруппировать настройки LAN в файле dhcpd.conf, а потом добавить в него вторую группу настроек, описывающих работу WLAN. Обратите внимание, что во второй сети не нужно настраивать параметры routers и domain-name-servers. WLAN в данном случае служит просто носителем для VPN, сам сетевой трафик и трафик из Интернета по ней не проходят. Информация о сервере имен и маршрутизации в данном случае лишь добавит вам проблем.

# /etc/dhcp3/dhcpd.conf

# Конфигурация для двух раздельных сетей

# Глобальные параметрь

# Сеть 1 (192.168.0.*) group { # LAN

option broadcast-address 192.168.0.255; option subnet-mask 255.255.255.0; option routers 192.168.0.1; option domain-name-servers 192.168.0.1;

# Динамическое адресное пространство subnet 192.168.0.0 netmask 255.255.255.0 {

range 192.168.0.2 192.168.0.239; }

}

# Сеть 2 (172.16.0.*) group { # WLAN

option broadcast-address 172.16.0.255; option subnet-mask 255.255.255.0;

# Динамическое адресное пространство subnet 172.16.0.0 netmask 255.255.255.0 {

range 172.16.0.2 172.16.0.254; }

}

Внесенные изменения активизируются следующей командой: root# /etc/init.d/dhcp3-server restart

ВНИМАНИЕ


Вместо точки доступа к WLAN вы можете использовать WLAN-роутер, но для этого нужно деакти-визировать DHCP-сервер!

Несмотря на долгие эксперименты, мне не удалось заставить РРТР-сервер работать вместе с dnsmasq. Причина в том, что конфигурация недостаточно приспособлена к решению таких задач, кhttp://www.modx.cc/manager/?a=resource/create&class_key=Article&parent=982&context_key=web&template=30ак объединение двух сетей (LAN и WLAN) с разными конфигурационными параметрами.

Настройка PPTPD-сервера


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

Файл pptpd.conf


В /etc/pptpd.conf содержатся важнейшие настройки для pptpd. Обязательно нужно указать локальный IP-адрес сервера и адресное пространство VPN-клиента. В данном случае речь идет об адресах, которые нужно соединить друг с другом посредством VPN. Если вы используете в локальной сети и DHCP-сервер, убедитесь, что динамические адресные пространства серверов DHCP и РРТР не пересекались. При необходимости откорректируйте dnsmasq.conf.

# /etc/pptpd.conf

option /etc/ppp/pptpd-options # Параметры pptptd localip 192.168.0.1 remoteip 192.168.0.240-253 listen 172.16.0.1

Параметры pptpd


В /etc/ppp/pptpd-options содержатся все РРР-специфичные параметры. Название этого файла, в принципе, может быть любым, но обязано совпадать с командой option в/etc/pptpd.conf.

# /etc/ppp/pptpd-options

name pptpd# Такое же название должно быть указано

# во втором столбце файла chap-secrets

lock

require-mschap-v2

require-mppe-128

refuse-pap

refuse-chap

refuse-mschap

proxyarp

ms-dns 192.168.0.1 # PPTP-клиенты должны использовать этот DNS

Необходимо более подробно объяснить значение параметров pptpd: настройка name отвечает за верную интерпретацию логина и пароля РРР. Указанное здесь имя должно совпадать с именем, указанным во втором столбце файла chap-secrets.

Благодаря различным командам require и refuse для идентификации может применяться только протокол mschap версии 2, разработанный Microsoft. Применяя его вместе с настройкой require-mppe-128 (128-битное шифрование), мы гарантируем максимально надежное исполнение РРТР.

Благодаря параметру proxyarp IP-адрес клиента VPN вносится в таблицу ARP (протокол разрешения адресов) сервера, поэтому всем остальным компьютерам, находящимся в сети, открывается доступ к VPN-клиенту.

С помощью ms-dns указывается адрес того сервера имен, которым VPN-клиенты должны пользоваться для разрешения сетевых имен. Хотя название этого параметра и начинается с ms (Microsoft), он действует и для клиентов, использующих Linux.

СОВЕТ



Не забывайте, что РРР-демон pppd также учитывает все параметры, содержащиеся в /etc/ррр/ options (но параметры из /etc/ppp/pptpd-options имеют приоритет). Если возникнут проблемы с конфигурацией РРТР-сервера, в первую очередь посмотрите файл /etc/ppp/options. В нашем примере предполагается, что файл /etc/ppp/options пуст.

Если появятся проблемы с VPN-соединением, добавьте в pptpd-options еще одну строку с ключевым словом debug. Тогда pptpd и pppd будут записывать в /var/log/messages подробные статусные сообщения и сообщения об ошибках.

Файл chap-secrets


Последний конфигурационный файл называется /etc/ppp/chap-secrets. В нем содержатся имена и пароли, по которым РРТР-сервер опознает клиентов VPN. В этом файле четыре столбца. В первом находится логин, в третьем — пароль. Чтобы пароль был достаточно надежным, его длина не должна быть менее 12 символов.

Во втором столбце располагается опознавательный код для сервера (см. настройку name в pptpd-options). В четвертом столбце можно указать либо звездочку, либо IP-адрес. В первом случае РРТР-сервер присвоит клиенту IP-адрес из диапазона remoteip, во втором — применит указанный IP-адрес, который должен находиться вне диапазона remoteip во избежание конфликтов.

# /etc/ppp/chap-secrets

# Логин Имя pptpd Пароль IP-адрес клиента «vpnclient» «pptpd» «vpntestpassw» *

Измененная конфигурация вступает в силу после перезапуска РРТР-сервера:

root# /etc/init.d/pptpd restart

Чтобы демон pptpd автоматически запускался и завершал работу при начале и окончании работы компьютера, нужно создать соответствующие ссылки для системы Init-V, которые будут отличаться в зависимости от дистрибутива.

Статус


Теперь клиентский компьютер должен установить соединение с РРТР-сервером. При каждом удачном соединении на сервере создается новый ppp-интерфейс, то есть рррО, ppp1 и т. д.

Состояние этих интерфейсов можно узнать с помощью команды ifconfig. В следующих строках кратко обобщены интерфейсы, работающие на компьютере mars.sol. В данном примере lo — это петлевой интерфейс, ethO — интерфейс для соединения с Интернетом, eth1 — интерфейс для LAN, eth2 — интерфейс для WLAN, а рррО — VPN-интерфейс для первого клиента РРТР.

root# ifconfig lo Protocol:Local loop

inet Addr:127.0.0.1 Mask:255.0.0.0

ethO Link encap:Ethernet-Hardware-Address 00:16:17:cd:c3:81 inet Adr:10.0.0.1 Bcast:10.0.0.255 Mask:255.255.255.0

ethl Link encap:Ethernet-Hardware-Address 00:14:6c:8e:d9:71

inet Adr:192.168.0.1 Bcast:192.168.0.255 Mask:255.255.255.0

eth2 Link encap:Ethernet-Hardware-Address 00:4f:4e:0f:8e:a0 inet Adr:172.16.0.1 Bcast:172.16.255.255 Mask:255.255.0.0

pppO Link encap:Point-to-Point-Connection

inet Adr:192.168.0.1 P-z-P:192.168.0.240 Mask:255.255.255.255

Конфигурация брандмауэра для РРТР-сервера



Из соображений безопасности рекомендуется закрыть интерфейс WLAN для всего трафика, кроме абсолютно необходимого. Следующие команды пропускают через интерфейс WLAN только пакеты DHCP и РРТР. DHCP использует протокол UDP на портах 67 и 68. РРТР использует протокол TCP на порте 1723, а также собственный протокол GRE (общая инкапсуляция маршрутов).

Требуемые правила брандмауэра легко встраиваются в сценарий, показанный в начале раздела 18.4: для этого сначала нужно дополнить /etc/default/myfirewall и указать в его переменной MFW WLAN название интерфейса WLAN:

# Файл etc/default/myfirewall MFW_WLAN=eth2



Кроме того, добавьте в файл /etc/myfirewall/myfirewall-start.conf следующие команды:

<code># Файл etc/myfirewall/myfirewall-start.conf

# Принять порты 67 и 68 для UDP (DHCP)</code>


Конфигурация брандмауэра для РРТР-клиента



Для того чтобы исключить возможность того, что сетевые службы, работающие на клиентских компьютерах (например, Samba или сервер MySQL), передадут через WLAN важные данные, можно защитить интерфейс WLAN брандмауэром. Правила очень похожи на правила для сервера, представленные выше. Отличия есть только в том, как осуществляется обмен данными.
Читайте так же:
Создание сетевого фильтра с помощью Squid и DansGuardian






Подпишитесь на рассылку! Никакого спама, только обновления!!!

Комментарии (0)


    Услуги по MODX Revolution

    Посмотреть все услуги

    Техническая оптимизация сайта

    Подробнее & Заказать

    Создание сайта на MODX Revolution

    Подробнее & Заказать

    Перенос сайта на MODX Revolution

    Подробнее & Заказать

    Продвижение сайта на MODX

    Подробнее & Заказать