Além do que @quanta sugeriu:
- Use a interface de gerenciamento do OpenVPN e seu comando "status".
"man openvpn" lhe dirá como configurar e usar essa interface (procure por "--management")
O OpenVPN no modo ponto-a-ponto (1.x), servidor (2.x) e cliente (2.x) produz saídas diferentes, mas permite que você veja se está conectado. No modo de servidor, listará todos os clientes conectados.
-
O OpenVPN pode descarregar seu status para o arquivo de texto a cada n segundos. Novamente, "man openvpn" (procure por "--status"). O conteúdo do arquivo será exatamente o mesmo que o comando de status de gerenciamento produz.
-
O OpenVPN pode executar scripts arbitrários quando a conexão é estabelecida, fechada, daemon iniciado ou antes do desligamento, etc., na prática, você pode criar scripts em quase todos os movimentos. Nada proíbe você de usar, digamos, a notificação da área de trabalho do script de gancho.
Procure por "SCRIPTING" em "man openvpn".
É claro que cada uma dessas opções pode ser adicionada ao arquivo de configuração openvpn, se você omitir o "-".
Em geral, eu recomendo strongmente que você leia a página do manual completamente, apenas para estar ciente do que poderia fazer e quais são as conseqüências.