Es wird recht schwer sein ein Ereignis von OpenVPN heraus serverseitig auszulösen. Mir sind keine Einstellungen seitens OpenVPN bekannt, die es erlauben würden bei einer bestehenden Verbindung irgendwelche Ereignisse auszulösen.
Generell unter Linux behilft man sich in solchen Situationen damit, dass man die Log-Dateien analysiert, auswertet und bei einer Übereinstimmung etwas bestimmtes ausführt. Solche Analyse-Tools gibt es teilweise als Fertiglösungen, um z.B. Passwort-Ausprobierer und ähnliche Hacker zu blocken. Ich kenne allerdings keine fertige Lösung, die deinen Bedürftnissen entsprechen würde.
Fertige Lösungen muss man auch nicht haben. Oft würde grep und sed genügen, um Logs nach bestimmten Muster durchzusuchen. Die Aktion könnte man dan im gleichen Shell-Skript einleiten. Allerdings musst du wissen:
a) Nach was du suchen musst, um eindeutig festzustellen, dass DEINE VPN-Verbindung steht
b) Wo du suchen musst
Alternativ kann man noch die Ecke mit tun/tap-Devices ausprobbieren. Vielleicht kann man dadurch irgendwie erkennen, ob eine Verbindung steht. Allerdings würde ich nicht empfehlen ifconfig per cron alle 5 Sekunden durchlaufen zu lassen und per grep/sed nach dem entsprechenden tun/tap suchen. Das würde deine Box lahm legen.
Viel einfacher wäre, wenn du nach dem Aufbauen deiner Verbindung irgendwas in dein Netz mit dem Server hinschickst. Auf der Box könnte man dann auf einem Port etwas lauschen lassen und als Reaktion einen WOL-Paket im lokalen Netzwerk absetzen lassen. Da wir inetd fast auf allen Boxen mittlerweile als Standard-Einstellung haben, brauchst du sogar keinen Listener, um auf dem Port zu lauschen. Es würde eine simple Zeile in inetd-config reichen, die zu deinem Aufweckskript führen würde. Im Aufweckskript überprüfst du die Korrektheit der Anfrage und löst eine Aufwachung mittels etherwake aus.
MfG