Настройка 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="[email protected]"

# инициализируем переменные и чистим папку 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/

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

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