Как сделать killswitch для клиента OpenVPN, работающего на сервере, который позволяет SSH-соединениям на сервере?

Краткое описание

Напишите набор правил брандмауэра для сервера, на котором работает клиент OpenVPN, который работает как killswitch, то есть разрешает доступ в Интернет только через VPN IP. Обратите внимание, что подключение к VPN на сервере сделает его невосприимчивым к соединениям SSH, поэтому включите в правила брандмауэра исключение для SSH, чтобы SSH-соединение с сервером все еще возможно, когда сервер подключен к VPN.

Длинное описание (и мои попытки)

У меня есть сервер, на котором я пытаюсь настроить клиент OpenVPN . Это само по себе не сложная задача - команда для соединения - это просто sudo openvpn configuration_file.ovpn.

Что было труднее было сделать killswitch, то есть программу, которая предотвращает соединение, выполняемое с помощью IP-адреса, отличного от VPN, в случае, если туннели VPN отключены по какой-либо причине. Я нашел этот скрипт на рабочем столе и протестировал его на рабочем столе:

sudo ufw default deny outgoing sudo ufw default deny incoming sudo ufw allow out on tun0 from any to any sudo ufw allow in on tun0 from any to any sudo ufw allow out from any to VPN.SERVER.IP.ADDRESS sudo ufw enable

Однако на сервере возникает другая проблема - если сервер подключается к VPN, он перестает отвечать на SSH. Я нашел этот скрипт, протестировал его на сервере, и он сработал - он поддерживал реакцию сервера через SSH, когда он был подключен к VPN:

echo "201 novpn" >> /etc/iproute2/rt_tables ip rule show | grep fwmark ip rule add fwmark 65 table novpn ip route add default via GATEWAY.IP.ADDRESS dev eth0 table novpn ip route flush cache iptables -t mangle -A OUTPUT -p tcp --sport 22 -j MARK --set-mark 65

Теперь мне нужно объединить эти два сценария (или написать новый с нуля), т. е. имеют набор правил брандмауэра, которые реализуют killswitch для клиента OpenVPN, работающего на сервере, а также разрешают соединения SSH с сервером / с сервером. Как выглядит такой скрипт?

0
задан 13 February 2018 в 20:54

0 ответов

Другие вопросы по тегам:

Похожие вопросы: