Ноя 052012
 


Знакомый попросил меня установить и настроить VPN сервер ему.
Покопавшиcь в интернете я понял, что в его случае подойдет OpenVPN server.
У меня был опыт его настройки на linux.
Настройка не сильно сложная.
Приступим.

# cd /usr/ports/security/openvpn && make install clean

Добавим автозагрузку сервера.

# echo "openvpn_enable="YES" " >> /etc/rc.conf
# echo "openvpn_configfile="/usr/local/etc/openvpn/server.conf" " >> /etc/rc.cconf

так добавим поддержку загрузки модуля tum.

# echo "if_tun_load="YES" " >> /etc/rc.conf

Что бы не перезагружать наш сервер, выполним команду загрузки модуля.

# kldload if_tun

Теперь скопируем диретокрию easy-rsa

# cd /usr/local/share/doc/openvpn/easy-rsa/

Теперь отредактируем файл vars, редактируем такие переменные:

export KEY_COUNTRY="RU"
export KEY_PROVINCE="MSK"
export KEY_CITY="MOSCOW"
export KEY_ORG="OpenVPN-MY-KOMPANY"
export KEY_EMAIL="root@local.locg"

Теперь добавим права на файл.

# chmod +w vars

Запустим файл проверки настроек для генерации скриптов.

. ./vars

Теперь с генерируем ключи для сервера.

./clean-all && ./build-ca && ./build-dh && ./build-key-server VPNserver

Теперь нам нужно отредактировать конфигурационный файл впн сервера.

# nano /usr/local/etc/openvpn/server.conf
port 1194
Порт сервера.

local 77.221.151.8

proto udp-server
Какой протокол использовать.

mode server
OpenVPN запускаем в режиме сервера.

dev tun0 
Интерфейс который будет использовать.

tls-server
Использовать TLS-шифрование.

auth MD5
Включаем шифрацию пакетов с использованием алгоритма симметричного шифрования Blowfish.

ca /usr/local/etc/openvpn/keys/ca.crt
cert /usr/local/etc/openvpn/keys/server.crt
key /usr/local/etc/openvpn/keys/server.key
dh /usr/local/etc/openvpn/keys/dh1024.pem
Пути к сертификатам.

push "route 10.8.3.1 255.255.255.0 10.8.1.1"
маршруты для клиентов.

client-config-dir /usr/local/etc/openvpn/ccd
Клиентская директория, в корой будут находится конфигарации для клиентов.

ifconfig 10.8.3.0 255.255.255.0
Настройка для виртуального интерфейса.

push "dhcp-option DNS 10.8.3.1"
push "dhcp-option WINS 10.8.3.1"

keepalive 10 120
Надстройка для поддержки соединения.

client-to-client
Разрешим трафик между клиентов.

comp-lzo
Сжатие.

max-clients 35
Укажим тот максимум клиентов , который будут обрабатываться сервером.

persist-key
Укажим, что бы не перечитывались ключевые файлы при пере-подключении клиентов.

persist-tun
Запретим пересоздавать виртуальный интерфейс.

verb 3
Уровень логирования, рекомендую после настройки выставить в 0.

log-append /var/log/openvpn.log
Где храним лог.

Теперь создадим нашему стаду сертификаты.
Перейдем в директорию с ключами.

# cd /usr/local/etc/openvpn/easy-rsa

Установим необходимые переменные окружения.

. ./vars

Сгенерим ключ для пользователя ira:

./build-key ira

Добавит конфигурационный файл.

# nano /usr/local/etc/openvpn/ccd/ira
ifconfig-push 10.8.3.1 255.255.255.0

Теперь можно запустить сервер openvpn.

# service openvpn start

Осталось только скопировать созданные ранее сертификаты: ca.crt, client.crt, client.key, dh1024.pem, ta.key.

 Leave a Reply

(required)

(required)

37 Запросов к базе. 0,433 Генерации страницы, 36MB Использование памяти.
Вы зашли с IP: 54.227.6.156