Adicione uma regra ao arquivo sudoers
que conceda à conta do convidado a permissão para obter privilégios de root, mas somente execute o comando que inicia a VPN e, possivelmente, o comando que interrompe a VPN.
Execute visudo
e adicione linhas como as seguintes:
guest ALL = /usr/sbin/service openvpn start
guest ALL = /usr/sbin/service openvpn stop
Como alternativa, se aplicável, você poderia vincular o serviço VPN à interface de rede para conectividade geral com a Internet. Por exemplo, se sua interface de rede for eth0
, adicione um arquivo em /etc/network/if-up.d/
contendo
#!/bin/sh
if [ "$IFACE" = "eth0" ]; then
service openvpn start
fi
e em /etc/network/if-down.d/
contendo
#!/bin/sh
if [ "$IFACE" = "eth0" ]; then
service openvpn stop
fi
Se você usa o OpenVPN e sua interface de rede está configurada em /etc/network/interfaces
ao invés de via NetworkManager, você pode configurar uma VPN OpenVPN para começar por aí.
iface eth0 inet dhcp
OPENVPN=trustconnect
Pode haver uma maneira de fazer isso com o NM, mas não sei como.