Связаться со мной:
3 заметки с тегом

openvpn

При выходе из ждущего режима пропадает соединение OpenVPN

Сделаем автоматический перезапуск OpenVPN на системах с systemd. В debian 9 создаем файл /etc/systemd/system/resume.openvpn.service с содержимым:

[Unit]
Description=Run openvpn after suspend
After=suspend.target

[Service]
ExecStart=/usr/sbin/service openvpn restart

[Install]
WantedBy=suspend.target

Затем выполняем

# systemctl enable resume.openvpn.service

Теперь при выходе из ждущего режима будет автоматически перезапускаться OpenVPN.

2017   debian   openvpn   suspend

Простая установка OpenVPN сервера с помощью QuickOpenVPN.

QuickOpenvpn тулза для быстрого разворачивания OpenVPN сервера и генерации клиентских конфигов, сертификатов и ключей. Адрес на github https://github.com/shmulya/quickopenvpn

Рассмотрим установку на Ubuntu 14.04.
Заходим на сервер по ssh и устанавливаем нужные пакеты

# apt-get install python-pip openssl openvpn git
# pip install pyyaml

Скачаем установщик тулзы

# git clone https://github.com/shmulya/quickopenvpn.git

Переходим в каталог установщика и запускаем установку

# cd quickopenvpn
# python install.py

Установщик задаст несколько вопросов(email, где разместить ключи, пароль для веб-морды и т.д), отвечаем на них и дожидаемся генерации всех ключей и завершения установки. Также если вы используете именно Ubuntu 14.04 тулза спросит переместить ли конфиг в /etc/openvpn и запустить ли vpn-сервер. На других дистрах эта функция не реализована и придется все делать вручную, поэтому рекомендую именно Ubuntu 14.04. Также спросит разрешить ли форвардинг пакетов и добавить ли правило натирования в iptables. Отвечаем на все «y», и по окончанию работы тулзы мы получим полностью настроенный и работающий OpenVPN сервер.
Для старта веб-морды выполняем

./start

И заходим на https://ip_сервера:4443/ там логинимся с паролем который мы указали при установке

Жмакаем «Add» для добавления клиентского сертификата, указываем имя сертификаты. И после генерации мы сможем скачать архив со всем необходимым для подключения к серверу.

Жмакаем «Download» и получаем архив. На клиенте устанавливаем OpenVPN, распаковываем архив в /etc/openvpn. Не забываем в конфиге клиента поправить пути к ключам и сертификату. И стартуем сервис.
Видим что появился новый интерфейс и сервер пингуется. Значит все работает.

2016   openvpn   quickopenvpn   ubuntu

Установка openvpn сервера на debian/ubuntu.

Кому нужно быстро установить vpn-сервер, а также для новичков в линуксе будет полезна вот эта утилита http://anikin.pw/all/prostaya-ustanovka-openvpn-servera-s-pomoschyu-quickopenvpn/

Установка сервера

Установим пакет openvpn.

# apt-get install openvpn -y

Установим пакет easy-rsa для генерации ключей

# apt-get install easy-rsa -y

Копируем файлы для генерации ключей в /etc/openvpn/easy-rsa

# mkdir /etc/openvpn/easy-rsa
# cp -r /usr/share/easy-rsa /etc/openvpn/easy-rsa
# mv /etc/openvpn/easy-rsa/easy-rsa /etc/openvpn/easy-rsa/2.0

Переходим в дирректорию и редактируем файл vars

# cd /etc/openvpn/easy-rsa/2.0
# nano vars

В первую очередь установим длину ключа 2048 бит, чтобы шифрование было максимальным.

export KEY_SIZE=2048

Затем в самом низу файла заполняем

export KEY_COUNTRY=""
export KEY_PROVINCE=""
export KEY_CITY=""
export KEY_ORG=""
export KEY_EMAIL="" 
export KEY_EMAIL=
export KEY_CN=
export KEY_NAME=
export KEY_OU=
export PKCS11_MODULE_PATH=
export PKCS11_PIN=

Копируем:

# cp openssl-1.0.0.cnf openssl.cnf

Загружаем переменные из vars, очищаем от старых сертификатов и создаем новый сертификат

# . ./vars
# ./clean-all
#./build-ca

Генерируем ключ сервера

# ./build-key-server server

Генерируем ключ dh2048

# ./build-dh

Копируем ключи

# cp -r /etc/openvpn/easy-rsa/2.0/keys/ /etc/openvpn/

Создаем кофиг нашего сервера

# nano /etc/openvpn/openvpn.conf
port 1194
proto tcp
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh2048.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
client-config-dir ccd
push "dhcp-option DNS 8.8.8.8"
keepalive 10 120
comp-lzo
persist-key
persist-tun
status openvpn-status.log
verb 3
log /var/log/openvpn.log

Запускаем openvpn

# service openvpn restart

Разрешим ip-forwarding. Раскомментируем строку net.ipv4.ip_forward=1 в /etc/sysctl.conf, а затем выполним

# sysctl -p

Выполним команду натирования, чтобы пустить наших клиентов в интернет.

# iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

Также стоит прописать её куда-нибудь в автозагрузку, например, в /etc/rc.local перед директивой exit 0. Чтобы не выполнять её каждый раз вручную после перезагрузки.

Установка клиента(на примере debian/ubuntu)

На клиенте установим openvpn

# apt-get install openvpn

На сервере сгенерируем ключи для клиента.

# cd /etc/openvpn/easy-rsa/2.0
# source vars
# ./build-key client
Теперь копируем любым удобным для нас способов на клиента получившиеся файлы:
ca.crt, client.crt, client.key. Копируем в каталог /etc/openvpn/keys/

Создаем конфиг клиента.

# nano /etc/openvpn/client.conf
client

# Внеший IP, за которым находится ваш сервер
remote xxx.xxx.xxx.xxx 1194
# Внешний порт, который роутер на стороне сервера направит на сервер OpenVPN.

proto tcp

dhcp-option DNS 8.8.8.8
redirect-gateway def1

ca /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/client.crt
key /etc/openvpn/keys/client.key
ns-cert-type server

#use virtual interface 'tap'
dev tun

#keep trying indefinitely to resolve the host name of the OpenVPN server.
resolv-retry infinite

#most clients don't need to bind to a specific local port number.
nobind

#try to preserve some state across restarts
persist-key
persist-tun

#enable compression on the VPN link
comp-lzo
log /var/log/openvpn.log
#set log file verbosity.
verb 4

#silence repeating messages
mute 20

Затем запускаем клиент openvpn

# service openvpn restart

И проверяем работу

# ping 10.8.0.1

Если пинг есть значит openvpn работает. Если нет, то идем смотреть логи.

2014   openvpn