network-manager-openvpn não fornece essa funcionalidade, você precisa usar openvpn diretamente.
Passe --script-security 2 --up /path/to/your/script para ele quando se conectar. Se você estiver usando um arquivo de configuração localizado em /etc/openvpn/ , anexe as próximas linhas ao seu arquivo de configuração:
script-security 2
# run /etc/openvpn/up.sh when the connection is set up
up /etc/openvpn/up.sh
Na página de manual do OpenVPN :
--script-security level [method]
This directive offers policy-level control over OpenVPN’s usage
of external programs and scripts. Lower level values are more
restrictive, higher values are more permissive. Settings for
level:
0 -- Strictly no calling of external programs.
1 -- (Default) Only call built-in executables such as ifconfig,
ip, route, or netsh.
2 -- Allow calling of built-in executables and user-defined
scripts.
3 -- Allow passwords to be passed to scripts via environmental
variables (potentially unsafe).
--up cmd
Shell command to run after successful TUN/TAP device open (pre
--user UID change). The up script is useful for specifying
route commands which route IP traffic destined for private
subnets which exist at the other end of the VPN connection into
the tunnel.
Script Order of Execution
--up Executed after TCP/UDP socket bind and TUN/TAP open.
--down Executed after TCP/UDP and TUN/TAP close.
Existem mais eventos para a execução de scripts, que podem ser encontrados na página de manual .
Crie /etc/openvpn/up.sh e conceda permissões de execução (digamos, 755 ou 700). Exemplo de conteúdo para adicionar um endereço e rota IPv6 (mostrado para fins educacionais, não copie diretamente):
#!/bin/sh
# add an IPv6 address to device $dev (environment variable)
ip -6 addr add 2001:db8::1:2/112 dev $dev
# and the IPv6 route for this net using gateway 2001:db8::1
ip -6 route add 2001:db8::1:0/112 via 2001:db8::1 dev $dev
Observe que esse script up é executado como root. Se você não tiver especificado uma configuração User e Group , o OpenVPN também executará scripts como down como root.