Авторизация

НАСТРОЙКИ DEBIAN JESSIE OPENVPN

для работы с сервисом VPNKI по протоколу OpenVPN

1. Обновимся
sudo apt-get update -y

 

2. Установим openvpn
sudo apt-get install -y openvpn

 

3. Скачайте ваш файл профиля (.ovpn) с личной страницы сайта при помощи браузера

 

4. Переименуйте этот файл в vpnki.conf и разместите в директории /etc/openvpn/

 

5. Попробуйте подключиться

sudo openvpn vpnki.conf

Введите имя пользователя и пароль когда запросит

 

6. Выполните пинг сервера VPNKI
ping 172.16.0.1

 

7. Отключите соединение (все соединения)

sudo killall openvpn

 

8. Сделаем автозапуск соединения openvpn к системе vpnki при автозагрузке системы. Создайте новый файл (vpnki_login), содержащий имя пользователя и пароль и сохраните его в /etc/openvpn/
sudo nano /etc/openvpn/vpnki_login

Вставьте только две строки:

userXXX

<пароль userXXX>

Сохранить Ctrl+X

 

9. Добавьте ссылку на созданный файл в файл конфигурации. Откройте vpnki.conf

sudo nano /etc/openvpn/vpnki.conf

И добавьте эту строку прямо перед тэгом <ca>:

auth-user-pass /etc/openvpn/vpnki_login

Сохранить Ctrl+X

 

10. Добавим автостарт самого openvpn при загрузке системы. Откройте этот файл

sudo nano /etc/defaut/openvpn

и раскомментируйте параметр AUTOSTART="all"

Сохраните Ctrl+X

 

11. Перезапустите систему и проверьте что соединение устрановлено автоматически:

ifconfig

в выводе команды вы должны увидеть интерфейс с имиеме tun0,

давайте выполним пинг сервера vpnki

ping 172.16.0.1

Комментарии   

0
Если ваш OpenVPN автоматически не переподключается после разрыва сессии, то имеет смысл проверить его версию. Выполните:

sudo openvpn --version


Если там например версия OpenVPN 2.3.4 то, увы, нужно обновлять. Например до 2.4.4.

Ниже идет описание процедуры обновления, которая собирает новый OpenVPN из исходников.


0. Удалите старый OpenVPN командой

sudo apt-get remove openvpn


1. Установить инструментарий для сборки.

apt-get update
apt-get install libssl-dev liblzo2-dev libpam0g-dev build-essential -y



2. Получаем ссылку на последний исходник отсюда:

https://openvpn.net/index.php/open-source/downloads.html

Щелкаем в табличке правой кнопкой мышки по openvpn-2.4.4.tar.gz и выбираем скопировать адрес ссылки, ну или как там оно у вас в браузере. Должно получиться что то типа:

https://swupdate.openvpn.org/community/releases/openvpn-2.4.4.tar.gz


3. Создаем временную папку /mnt/openvpn и переходим в нее:

sudo mkdir /tmp/openvpn
cd /tmp/openvpn

в нее мы скачаем наши исходники.


4. Скачиваем исходники:

wget https://swupdate.openvpn.org/community/releases/openvpn-2.4.4.tar.gz



5. Распакуем архив:

tar xf openvpn-2.4.4.tar.gz

(архив распакуется в папку: /tmp/openvpn/openvpn-2.4.4)



6. Перейдем в папку с исходниками:

cd openvpn-2.4.4



7. Создаем make файл:

./configure --prefix=/usr



8. Собственно собираем:

make



9. Устанавливаем:

sudo make install



10. Проверяем версию:

openvpn --version



11. На всякий случай передергиваем сервер:

sudo service openvpn restart


12. Проверяем коннект:

ping 172.16.0.1


Спасибо пользователю ovcher за этот мануал!
Блог о домашней автоматизации ovcher.com
+1
Сделал скрипт перезапуска OpenVPN клиента (почему то не переподключается при разрыве)

#!/bin/bash
# часы
date_time="`date +%H:%M:%S`"
# дата
date="`date +%d-%m-%Y`"
#Тестируемый адрес
testip="172.16.0.1"
kol=$(/bin/ping -c 4 $testip | grep "received" | awk '{print $4}')
if [ $kol == 0 ]
then
sleep 10
kol=$(/bin/ping -c 4 $testip | grep "received" | awk '{print $4}')
if [ $kol == 0 ]
then
sudo service openvpn restart
sudo echo $date $date_time Нет пинга. Начат перезапуск. >> /var/log/restartinet.log
exit 0
fi
fi

сохраняем например в /etc/resovpn
делаем в crontab проверку, в данном случае раз в 5 минут
crontab -e
*/5 * * * * service openvpn restart
0
с параметром connect-retry не запускается
+1
клиент не переподключается при разрыве, судя по мануалу в конфиге должен быть параметр:
connect-retry < seconds > - пробует переподключиться через указанное время в секундах, если соединение было разорвано.
не знаю нужен ли при этом параметр
connect-retry-max < n > - максимальное количество повторов если соединение было разорвано
я добавил в конфиг только connect-retry 10

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


Защитный код
Обновить