Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
serverguide-precise-ru.pdf
Скачиваний:
77
Добавлен:
03.05.2015
Размер:
1.86 Mб
Скачать

VPN

основы для аутентификации клиента. Чтобы использовать этот метод аутентификации, сначала добавьте директиву auth-user-pass для настройки клиента. Это укажет клиенту OpenVPN запросить у пользователя "имя пользователя/пароль" для передачи на сервер по защищенному TLS-каналу.

# client config! auth-user-pass

Это заставит сервер OpenVPN проверить имя пользователя/пароль, полученный от клиента, используя логин PAM-модуля. Полезно, если у вас есть централизованная аутентификация, например Kerberos.

plugin /usr/lib/openvpn/openvpn-auth-pam.so login

Пожалуйста, ознакомьтесь с дополнительными мерами безопасности в руководстве по усиленной безопасности1 OpenVPN.

1.6.2. Расширенная настройка VPN на сервере в режиме сетевого моста

OpenVPN может быть установлен либо для маршрутизации либо в режиме моста VPN. Иногда это называют OSI Layer-2 по сравнению с Layer-3 VPN. В режиме моста VPN все кадры Layer-2, например все Ethernet кадры отправляются в VPN канал, а в режиме маршрутизации в VPN канал отправляются Layer-3 пакеты. В режиме моста весь трафик, включая трафик локальной сети, как Broadcast, DHCP-запросы, ARP запросы и т.д., направляются в VPN канал, тогда как в режиме маршрутизации он будет отфильтрован.

1.6.2.1. На сервере предварительно сконфигурируйте интерфейс для режима моста

Убедитесь, что у вас установлен пакет bridge-utils:

sudo apt-get install bridge-utils

Перед вами настройки для OpenVPN в режиме моста, вы должны изменить ваши настройки интерфейса. Давайте предположим, что ваш сервер имеет интерфейс eth0 подсоединен к Интернет и интерфейс eth1 подключен

к локальной сети, вы хотите, чтобы он работал в режиме моста. Ваш файл конфигурации должен быть выгляжеть примерно так /etc/network/ interfaces:

auto eth0

1 http://openvpn.net/index.php/open-source/documentation/howto.html#security

432

VPN

iface eth0 inet static address 1.2.3.4

netmask 255.255.255.248 default 1.2.3.1

auto eth1

iface eth1 inet static address 10.0.0.4 netmask 255.255.255.0

Эта простая конфигурация должна быть изменена для режима моста, где конфигурация интерфейса eth1 переходит на новый интерфейс br0. Плюс мы настроим, что br0 будет привязан к интерфейсу eth1. Мы также

должны убедиться, что интерфейс eth1 всегда в «неразборчивом» режиме, в котором сетевая плата позволяет принимать все пакеты независимо от того, кому они адресованы.

auto eth0

iface eth0 inet static address 1.2.3.4

netmask 255.255.255.248 default 1.2.3.1

auto eth1

iface eth1 inet manual

up ip link set $IFACE up promisc on

auto br0

iface br0 inet static address 10.0.0.4 netmask 255.255.255.0 bridge_ports eth1

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

sudo /etc/init.d/network restart

1.6.2.2. Подготовить конфигурацию сервера для режима моста

Отредактируйте /etc/openvpn/server.conf изменяя следующие настройки на:

;dev tun dev tap

up "/etc/openvpn/up.sh br0 eth1" ;server 10.8.0.0 255.255.255.0

server-bridge 10.0.0.4 255.255.255.0 10.0.0.128 10.0.0.254

433

VPN

Далее, создайте вспомогательный скрипт, чтобы добавить tap интерфейс к мосту, и обеспечте, чтобы интерфейс eth1 был в «неразборчивом» режиме.

Создайте /etc/openvpn/up.sh:

#!/bin/sh

BR=$1

ETHDEV=$2

TAPDEV=$3

/sbin/ip

link

set

"$TAPDEV" up

/sbin/ip

link

set

"$ETHDEV" promisc on

/sbin/brctl addif

$BR $TAPDEV

Затем сделайте его исполняемым:

sudo chmod 755 /etc/openvpn/up.sh

После настройки сервера, перезапустите openvpn, введя:

sudo /etc/init.d/openvpn restart

1.6.2.3. Настройка клиента

Сначала установите openvpn на стороне клиента:

sudo apt-get install openvpn

После окончания конфигурирования сервера и копирования клиентского сертификата в папку /etc/openvpn/, создайте файл конфигурации клиента, используя приведенный пример. В окне терминала на клиентской машине введите:

sudo cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf /etc/openvpn

Теперь отредактируйте /etc/openvpn/client.conf, изменив следующие параметры:

dev tap ;dev tun

Наконец, перезапустите openvpn:

sudo /etc/init.d/openvpn restart

Теперь вам должна быть доступна возможность подсоединения к удалённой сети через VPN.

434

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]