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

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

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

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

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

# sudo apt-get install openvpn
# sudo cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz /etc/openvpn
# cd /etc/openvpn/
# sudo gunzip server.conf.gz

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

# ee /etc/openvpn/server.conf

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

push “redirect-gateway def1 bypass-dhcp”
push “dhcp-option DNS 192.168.244.134″
push “dhcp-option DNS 192.168.244.134″

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

# 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

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

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

# Это значения по умолчанию для полей
# Которые будут размещены в сертификате.
# Не оставляйте любое из этих полей пустым.

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”

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

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

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

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

# cd /etc/openvpn/easy-rsa/
# source vars
# ./pkitool hostname

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

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

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

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

# sudo /etc/init.d/openvpn restart

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

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

/etc/openvpn/easy-rsa/keys/ca.crt
/etc/openvpn/easy-rsa/keys/lvpsbl.crt
/etc/openvpn/easy-rsa/keys/lvpsbl.key

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

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

#Простой 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

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

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

2 thoughts on “Как установить и настроить OpenVPN на OpenVZ

  1. «iptables -t nat -A POSTROUTING -s 192.168.244.0/24 -j SNAT —to-source your_server_ip» — исправьте, перед to-source два тире (double dash).

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.