Установка OpenVPN на Ubuntu

Установка и настройка OpenVPN на UbuntuИтак, самый надежный и быстрый VPN, по мнению многих, но и самый трудоемкий по установке.

Один пакет для сервера и клиента:

apt-get install openvpn easy-rsa

Затем пишем это:

cp -R /usr/share/easy-rsa /etc/openvpn
cd /etc/openvpn/easy-rsa

Далее делаем символьную ссылку конфига ssl:

ln -s openssl-1.0.0.cnf openssl.cnf

Загружаем переменные следующей строкой:

source vars

Далее папку keys нужно очистить от старых сертификатов и ключей, а также создать серийный и индексные файлы для новых ключей:

./clean-all

Дальше создаем сертификат:

./build-ca

Создаем ключи сервера и клиента:

./build-key-server server
./build-key client

Генерируем ключ Диффи Хельмана:

./build-dh

Далее нужно скопировать сертификаты и ключи сервера в директорию OpenVPN:

cd keys
cp ca.crt ca.key dh2048.pem server.crt server.key /etc/openvpn

Далее необходимо скопировать и распаковать пример конфига в директорию OpenVPN:

cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz /etc/openvpn/
cd /etc/openvpn
gunzip -d /etc/openvpn/server.conf.gz

Редактируем конфиг файл сервера nano /etc/openvpn/server.conf

Надо найти строчку с «dh dh1024.pem» и сменить её на:

dh dh2048.pem

В конце допишем или расскоментируем:

push "redirect-gateway def1 bypass-dhcp"

push "dhcp-option DNS 10.8.0.1" + apt-get install dnsmasq

service openvpn start

Сетевые настройки

В /etc/sysctl.conf добавляем:

net.ipv4.ip_forward=1
sysctl -p

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE

или

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j SNAT --to-source IP_ВАШЕГО_сервера

На VPS на базе OpenVZ вместо первой команды надо выполнить:

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o venet0 -j SNAT --to-source IP_ВАШЕГО_сервера

Это правило iptables стоит добавить в /etc/rc.local, иначе оно слетит после перезагрузки сервера. Также файлу /etc/rc.local надо присвоить бит исполнения, иначе при загрузке система не сможет выполнить содержащиеся в нём команды.

chmod +x /etc/rc.local

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

client
remote IP VPN сервера 1194
proto udp
ca ca.crt
cert client1.crt
key client1.key
dev tun
dev-type tun
resolv-retry infinite
nobind
persist-key
persist-tun
comp-lzo
verb 4
mute 20

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

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