Как выполнить несколько скриптов при установке OpenVPN?

Как выполнить несколько скриптов при установке OpenVPN?

Я используюубунту 12.04для подключения к серверу OpenVPN.

Два сценария,обновление-resolv-confиvpn-up.sh, в /etc/openvpn должен быть выполнен после установки соединения.

В файл конфигурации добавляются следующие команды:клиент.ovpnчтобы заставить два скрипта запускаться при подключении OpenVPN и останавливаться при отключении OpenVPN:

script-security 2
up /etc/openvpn/update-resolv-conf
up /etc/openvpn/vpn-up.sh
down /etc/openvpn/vpn-down.sh
down /etc/openvpn/update-resolv-conf

Однако при подключении выполняется только первый скрипт. И каждый раз мне приходится запускать скриптvpn-up.shпо отдельности вручную. Поэтому я хочу знать, как заставить их работать оба, когда установлен туннель OpenVPN?

решение1

Быстрый способ — вызвать второй скрипт с конца предыдущего:

Просто добавьте следующее в конец скрипта «/etc/openvpn/update-resolv-conf»:

/etc/openvpn/vpn-up.sh

Я уверен, что здесь найдутся более элегантные способы сделать это.

решение2

Просто для справки. Если у вас есть несколько скриптов и время не имеет решающего значения, вы также можете использовать другой параметр для выполнения скриптов.

Script Order of Execution

--up
Executed after TCP/UDP socket bind and TUN/TAP open.
--tls-verify
Executed when we have a still untrusted remote peer.
--ipchange
Executed after connection authentication, or remote IP address change.
--client-connect
Executed in --mode server mode immediately after client authentication.
--route-up
Executed after connection authentication, either immediately after, or some number of seconds after as defined by the --route-delay option.
--client-disconnect
Executed in --mode server mode on client instance shutdown.
--down
Executed after TCP/UDP and TUN/TAP close.
--learn-address
Executed in --mode server mode whenever an IPv4 address/route or MAC address is added to OpenVPN's internal routing table.
--auth-user-pass-verify
Executed in --mode server mode on new client connections, when the client is still untrusted.

https://openvpn.net/index.php/open-source/documentation/manuals/65-openvpn-20x-manpage.html

решение3

up '/bin/bash -c "/etc/openvpn/update-resolv-conf; /etc/openvpn/vpn-up.sh"'

Связанный контент