Как запустить контейнер DOCKER в котором будет поднят openvpn? Всем привет! Необходимо создать контейнер на docker в котором будет поднимать клиентское соединение openvpn, при этом контейнер в интернет должен всегда выходить только через него, когда vpn соединение обрывается, то контейнер сообщает об этом в zabbix и доступ в интернет пропадает. Подскажите как лучше всего реализовать ? Я так понимаю помимо сборки контейнера с volume конфига vpn, ещё нужно настраивать ipset.
Для мониторинга и отправки уведомлений о потере соединения с VPN в Zabbix, вы можете добавить проверку в Zabbix и использовать скрипт проверки соединения с VPN. Как только VPN соединение обрывается, скрипт может отправить уведомление в Zabbix.
Надеюсь, это поможет вам реализовать необходимую функциональность.
Для запуска контейнера с openvpn и настройки выхода в интернет через vpn, вы можете использовать следующий Dockerfile:
FROM debian:latestRUN apt-get update && apt-get install -y openvpn iproute2
COPY your-openvpn-config.ovpn /etc/openvpn/client.conf
CMD openvpn --config /etc/openvpn/client.conf
Далее, для того чтобы контейнер всегда выходил в интернет через vpn, можно использовать iptables:
docker run -d --privileged your-openvpn-containerVPNCONTAINER_ID=`docker ps -q -l`
iptables -t nat -A POSTROUTING -s `docker inspect --format '{{ .NetworkSettings.IPAddress }}' $VPNCONTAINER_ID` -j MASQUERADE
Для мониторинга и отправки уведомлений о потере соединения с VPN в Zabbix, вы можете добавить проверку в Zabbix и использовать скрипт проверки соединения с VPN. Как только VPN соединение обрывается, скрипт может отправить уведомление в Zabbix.
Надеюсь, это поможет вам реализовать необходимую функциональность.