Автоматический запуск openvpn и obfsproxy

После настройки openvpn и obfsproxy в предыдущей части, необходимо допилить всё до красивого состояния. А именно: автоматизировать запуск obfsproxy, openvpn и восстановление настроек iptables после поднятия соединения.

Итак, для автоматического запуска клиента openvpn и подключения к серверу нам необходимо:

  1. Скопировать конфигурационный файл openvpn в директорию /etc/openvpn и переименовать его в client.conf
  2. Раскомментировать строку AUTOSTART=»all» в файле /etc/default/openvpn
  3. Разрешить автозапуск сервиса:
sudo systemctl enable openvpn@client.service

После этих действий openvpn будет автоматически стартовать и пытаться установить подключение. Но для подключения ему необходим obfsproxy (весь трафик идет через него).

Настроим автозапуск obfsproxy:

1. Создадим конфигурационный файл для сервиса:

sudo nano /etc/systemd/system/obfsproxy.service

2. Поместим в него следующие строки:

[Unit]
Description=Obfsproxy Server

[Service]
ExecStart=/usr/bin/obfsproxy --log-min-severity=info obfs2 --shared-secret=<some-random-key> socks 127.0.0.1:10194

[Install]
WantedBy=multi-user.target

3. Выполним перезагрузку юнитов с диска:

sudo systemctl daemon-reload

4. Разрешим автозапуск сервиса и запустим его:

sudo systemctl start obfsproxy.service
sudo systemctl enable obfsproxy.service

Obfsproxy запущен, openvpn подключился. Осталось активировать NAT через iptables:

iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE

И, желательно, делать это автоматически. Для этого:

1. В конфигурационный файл openvpn добавляем:

script-security 2
up /etc/openvpn/up.sh

2. Создаем скрипт /etc/openvpn/up.sh с содержимым:

#!/bin/sh
/sbin/iptables-restore < /etc/iptables.rules

3. Сохраняем текущие настройки iptables при помощи:

iptables-save > /etc/iptables.rules

4. Не забываем сделать скрипт исполняемым.

После всех этих действий после рестарта у вас должен автоматически подняться обфусцированный openvpn-туннель и через него можно будет отправлять любых клиентов, которым необходим доступ к тем ресурсам, которые недоступны без него.

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

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