Categories: linuxubuntu

Настройка OpenVPN в Ubuntu с использованием OpenVZ / openvpn ubuntu openvz

Как настроить настройка OpenVPN в Ubuntu с использованием OpenVZ /openvpn ubuntu openvz

apt-get install openvpn

cd /usr/share/doc/openvpn/examples/easy-rsa/2.0/

# редактируем переменные

nano ./vars
# меняем строки
export KEY_SIZE=1024 # Длинна ключа
export KEY_EXPIRE=3650 # Срок действия ключа в днях

# описание сертификатов по-умолчанию
export KEY_COUNTRY="RU"
export KEY_PROVINCE="RU"
export KEY_CITY="Moscow"
export KEY_ORG="http://"
export KEY_EMAIL="org@11.com"

# инициализируем переменные и чистим папку keys и создаем сертификаты
. ./vars
. ./clean-all

./build-ca # корневой сертификат
./build-key-server server # сертификат сервера
./build-dh # ключ Диффи Хельман

# если вы планируете использовать tls-auth, который позволит скрыть порт на котором сервер слушает vpn подключения, защитить от DoS атак и кое чего еще, то выполните еще и эту строку:
openvpn —genkey —secret ./keys/ta.key

# Включили tls-auth? Тогда не забудьте передать ta.key клиентам, его надо будет положить рядом с сертификатом пользователя.

# перенесем полученные сертификаты в рабочую папку

cp ./keys/ca.crt /etc/openvpn
cp ./keys/server.crt /etc/openvpn
cp ./keys/server.key /etc/openvpn
cp ./keys/dh1024.pem /etc/openvpn

# Для tls-auth, выполните и эту строку:
cp ./keys/ta.key /etc/openvpn

# настроим сервер
zcat /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz > /etc/openvpn/server.conf
nano /etc/openvpn/server.conf
# все настройки по-умолчанию нас устроят, меняем, раскомментируем:
local IP_АДРЕС_ВАШЕГО_СЕРВЕРА
push "redirect-gateway def1"
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
client-to-client # раскомментируйте, если хотите иметь доступ между клиентами внутри вашего VPN

# Для включения tls-auth, необходимо добавить (без #)
# tls-auth ta.key 0

Для OpenVZ возможно необходимо изменить MTU

tun-mtu 1200

# Если хотите спрятать сервер от китайских ботов и ФСБ, поменяйте стандартный порт, на любой другой. Только не забудьте прописать этот же порт в настройках клиента.
port 1194
# применим настройки файрвола через rc.local, можно сделать иначе, но я остановился на этом варианте.
nano /etc/rc.local

# добавляем строки до exit 0
iptables -A FORWARD -s 10.8.0.0/24 -j ACCEPT
iptables -A FORWARD -m state —state RELATED,ESTABLISHED -j ACCEPT
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE

для openvz другое
iptables -t nat -A POSTROUTING -o venet0 —j SNAT -–to адрес_сервера
iptables -A FORWARD -i venet0 -o tun0 -m state —state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i tun0 -o venet0 -j ACCEPT

nano /etc/sysctl.conf

net.ipv4.ip_forward=1

Всё, серверная часть готова. Можно подключаться. Для перехода к следующим этапам, надо выгрузить с нашего сервера сертификаты из папки:
/usr/share/doc/openvpn/examples/easy-rsa/2.0/keys/

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

1. Скачиваем и устанавливаем клиент:
2. Создаем файл конфигурации myvpnconfig.ovpn (обычный текстовый файл):

remote IP_вашего_сервера 1194
client
dev tun
ping 10
comp-lzo
proto udp
tls-client
remote-cert-tls server
pkcs12 vpn.windows.p12
verb 3
pull
# Если вы включили tls-auth на сервере, добавьте в конфиг эту строку:
tls-auth ta.key 1

3. Создаем batch скрипт (start_my_vpn.cmd) для запуска VPN сессии:

cd C:\some\path\openvpn\
"C:\Program Files\OpenVPN\bin\openvpn.exe" —config C:\some\path\openvpn\myvpnconfig.ovpn

4. Скрипт и конфиг ложим в одну папку, в эту же папку кидаем vpn.windows.p12 сертификат, брать его тут
/usr/share/doc/openvpn/examples/easy-rsa/2.0/keys/vpn.windows.p12

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

Для не параноиков или автостарта туннеля без ввода пароля, можно вместо p12 использовать связку сертификатов ca.crt, vpn.windows.key и vpn.windows.crt, выглядит это так,
вместо
pkcs12 vpn.windows.p12
пишем:
ca ca.crt
cert vpn.windows.crt
key vpn.windows.key

Файлы брать все там же
/usr/share/doc/openvpn/examples/easy-rsa/2.0/keys/
и положить в папку с myvpnconfig.ovpn и start_my_vpn.cmd.

http://habrahabr.ru/post/153855/

http://habrahabr.ru/post/188474/

http://www.lissyara.su/articles/freebsd/security/openvpn+pkcs-12/

admin

Recent Posts

How to back up and restore the ESXi host configuration

Original https://kb.vmware.com/s/article/2042141 Backing up ESXi host configuration data To synchronize the configuration changed with persistent…

11 месяцев ago

vCenter Converter Standalone download

vCenter Converter Standalone 6.6.0 download (далее…)

12 месяцев ago

VMware remote console (VMRC) 12 download

VMware remote console (VMRC) 12.0.5 download Last version: VMware Remote Console 12.0.5  28 NOV 2023…

2 года ago

Mysql calculate row size for all tables

SELECT col_sizes.TABLE_SCHEMA, col_sizes.TABLE_NAME, SUM(col_sizes.col_size) AS EST_MAX_ROW_SIZE FROM ( SELECT cols.TABLE_SCHEMA, cols.TABLE_NAME, cols.COLUMN_NAME, CASE cols.DATA_TYPE WHEN…

2 года ago

Mysql change date format in database

UPDATE DB SET column = DATE(STR_TO_DATE(column, '%Y-%d-%m')) WHERE DATE(STR_TO_DATE(column, '%d-%m-%Y')) <> '0000-00-00'

2 года ago

esxi debian lvm extend partition

echo 1 > /sys/class/block/sda/device/rescan #maybe run under root> sudo fdisk /dev/sda2 > d > 2…

2 года ago