Как установить и настроить OpenVPN на OpenVZ

Как установить и настроить OpenVPN на OpenVZ

Это руководство покажет вам, как установить OpenVPN внутри вашей VPS с OpenVZ на Ubuntu. OpenVZ поддерживается в VPN с помощью ядра TUN / модуля TAP.

Первое, что вам нужно сделать, это разрешить TUN / TAP, если вы еще не сделали это:
Перейдите Hypanel->Machine Settings -> Enable TUN/TAP

Установку буду делать на Ubuntu.
Во-первых, установить OpenVPN пакет:

sh
4 lines
# sudo cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz /etc/openvpn
# cd /etc/openvpn/
# sudo gunzip server.conf.gz
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Это позволит скопировать и распаковать пример конфигурации сервера. Пример конфигурации использует диапазон IP 192.168.244.0 и подсеть 255.255.255.255
Измените файл server.conf в своем любимом редакторе:

sh
1 lines
# ee·/etc/openvpn/server.conf
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Теперь вам нужно раскомментировать следующее (удалить «;» впереди):

sh
3 lines
pushredirect-gateway def1 bypass-dhcp
pushdhcp-option DNS 192.168.244.134
pushdhcp-option DNS 192.168.244.134
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Скопируйте необходимые файлы в создадим наши сертификаты:

sh
3 lines
# sudo mkdir /etc/openvpn/easy-rsa/
# sudo cp -r /usr/share/doc/openvpn/examples/easy-rsa/2.0/* /etc/openvpn/easy-rsa/
# cd /etc/openvpn/easy-rsa
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Нам нужно настроить файл VARS, который содержит настройки для сертификатов.
Пожалуйста, имейте в виду, что поле «country» может содержать только 2 буквы.

Откройте файл VARS и перейдите до конца.
Файл по умолчанию содержит:

sh
9 lines
# Это значения по умолчанию для полей
# Которые будут размещены в сертификате.
# Не оставляйте любое из этих полей пустым.
export KEY_COUNTRY=UA
export KEY_PROVINCE=RU
export KEY_CITY=Kiev
export KEY_ORG=Fort-Funston
export KEY_EMAIL=captain@192.168.244.134
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Вы можете изменить эти значения, если хотите.
После этого создадим сертификаты для сервера:

sh
5 lines
# cd /etc/openvpn/easy-rsa/
# source vars
# ./clean-all
# ./pkitool –initca
# ./pkitool –server server
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Это поможет укрепить ваши соответствующие сертификаты, основанные файлы примеров немного поправив их. Я рекомендую это для не-продвинутых пользователей и новичков.

Создание клиентских сертификатов:

sh
3 lines
# cd /etc/openvpn/easy-rsa/
# source vars
# ./pkitool hostname
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Не забудьте заменить имя хоста с именем клиента на котором вы хотите  подключиться. Это может быть использовано в качестве идентификатора, например, «client1»

Вы должны будете сделать 1 вещь, чтобы исправить маршрутизацию. То есть направлять трафик от tun0 к интерфейсу, который обеспечивает интернет (venet0:0 по умолчанию).

sh
2 lines
# iptables -t nat -A POSTROUTING -s 192.168.244.0/24 -j SNAT --to-source your_server_ip
# iptables-save
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Поскольку мы не можем использовать команду MASQUERADE, мы должны использовать SNAT. Также только полные интерфейсы поддерживаются (Так venet0: 0 не совместим с опцией-O). Вот почему я использую статическую конфигурацию на основе IP. Это будет маршрут весь сетевой трафик будет   на 192.168.244.0 к интерфейсу internet-supplying.

sh
1 lines
#·sudo /etc/init.d/openvpn restart
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Настройте ваш VPN клиент  на вашем компьютере

The client will need the following files (Клиенту понадобятся следующие файлы )

sh
3 lines
/etc/openvpn/easy-rsa/keys/ca.crt
/etc/openvpn/easy-rsa/keys/lvpsbl.crt
/etc/openvpn/easy-rsa/keys/lvpsbl.key
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Создайте конфигурационный файл, например lvpsbl.ovpn и изменить настройки сертификатов (включите указанные выше файлы:

В строке «имя удаленного хоста 1194 (remote hostname 1194)» измените «хост» с вашим VPS хостом и с соответствующим сертификатом.
Также изменить настройки SSL в случае, если вы использовали другое имя для клиентских сертификатов:

sh
65 lines
#Простой config файл
client
dev tun
# необходим имя адаптера для TAP-Win32·
# С панели Сетевые подключения
# Если у вас есть больше чем один. На XP SP2,
# Вам может понадобиться отключить брандмауэр
# для адаптера TAP.
;dev-node MyTap
# Ли мы подключились к TCP или·
# UDP сервер? Используйте те же настройки, как
# как на server-е.
;proto tcp
proto udp
# ИмяИП hostname/IP и порт сервера.
# Вы можете иметь несколько удаленных записей·
# Для балансировки нагрузки между серверами.
remote hostname 1194
;remote my-server-2 1194
# ·Выбрать случайный host с удаленного
# Списка для балансировки нагрузки. в противном случае·
# Попробовать hosts в указанном порядке.
;remote-random
resolv-retry infinite
# Большинство клиентов не нужно связываться с·
# Конкретным номером локального порта.
nobind
;user nobody
;group nobody
# Старайтесь сохранить некоторое состояние при перезапуске.
persist-key
persist-tun
;http-proxy-retry # retry on connection failures
;http-proxy [proxy server] [proxy port #]
;mute-replay-warnings
# SSL/TLS сертификаты.
ca ca.crt
cert ilvpsbl.crt
key lvpsbl.key
# Verify server certificate by checking
ns-cert-type server
# If a tls-auth key is used on the server
# then every client must also have the key.
;tls-auth ta.key 1
# Select a cryptographic cipher.
# If the cipher option is used on the server
# then you must also specify it here.
;cipher x
# Enable compression on the VPN link.
# Don’t enable this unless it is also
# enabled in the server config file.
comp-lzo
# Set log file verbosity.
verb 3
# Silence repeating messages
;mute 20
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Когда это будет сделано, импортируйте файлы клиента в ваш любимый клиент OpenVPN и все должно быть готовы к работе.
Для проверки соединения можно попробовать проверить связь с сервером локально (192.168.244.1) или подключиться к интернету через веб-браузер.

Как установить и настроить OpenVPN на OpenVZ полностью раскрыта.

Was this helpful?

0 / 0