Schwarze Liste für Einwahlzertifikate
Selbstverständlich hat der Administrator die Möglichkeit, ein Zertifikat vor dem Ablauf seiner Gültigkeit zu sperren. Dafür kann es mehrere Gründe geben, zum Beispiel, dass ein Anwender die Firma verlässt oder der Verdacht besteht, dass ein spezieller Zugang kompromittiert wurde. Lesen Sie dieses Kapitel bitte bis zum Ende. Der Administrator muss sämtliche Schritte durchführen, um eine unerwünschte Einwahl zu verhindern.
Um das entsprechende Zertifikat unwirksam zu machen, begeben wir uns wieder in das Verzeichnis easy-rsa. In unserem Beispiel ist das /etc/openvpn/examples/easy-rsa/2.0. Dort rufen Sie zunächst wieder . ./vars auf. Wollen Sie nun ein Zertifikat unwirksam machen, geben Sie den Befehl ./revoke-full <client>
. Die Ausgabe error 23 am Ende des Scripts ist korrekt, da der Server das Zertifikat nicht mehr findet.
Das revoke-Script hat nun eineCRL-Datei (crl.pem - Certificate Revocation List) im Unterverzeichnis keys generiert. Diese kopieren Sie an die Stelle, an der sie der Server lesen kann. In unserem Beispiel nehmen wir /etc/openvpn. Danach sagen Sie dem Server, dass er diese Liste verwenden soll, indem Sie in der Datei server.conf die Zeile crl-verify crl.pem einfügen. Sehr wichtig ist, dass sie den OpenVPN-Dienst nun neu starten, um die Änderungen wirksam zu machen. Erst jetzt verweigert der Server eine Einwahl des unerwünschten Zertifikats.
Die CRL-Datei wird übrigens jedes Mal ausgelesen, wenn sich ein Client mit dem Server verbindet. Somit können Sie diese Datei aktualisieren, auch wenn der OpenVPN-Server läuft. Sollte der Client, dessen Zertifikat Sie sperren wollen, bereits verbunden sein, haben Sie zwei Möglichkeiten.
Entweder Sie starten den OpenVPN-Dienst neu und werfen alle verbundenen Clients raus, oder Sie verbinden sich via telnet zur Managementkonsole und deaktivieren nur den gewünschten Anwender. Wollen sie die Managementschnittstelle nutzen, müssen Sie diese via server.conf und der Syntax management <IP-Adresse> <port> <Passwort-Datei> starten.