Opennet CA/CA Cert Renewal 2023

Aus Opennet
Wechseln zu: Navigation, Suche

Inhaltsverzeichnis

Situation

TODO Liste 2022/2023

Aktueller Prozess - Resign mit vorhandenen Keys:


  • Opennet Gateway Server aktualisieren ( a) Zertifikat des Server erneuern + aktualisierte certchain einspielen per ansible (hier sollten alle VPN Verbindungen weiter funktionieren weil private Key der CAs unverändert ist) )
    • (✔️) gai, megumi, erina
    • (⚠️) subaru
  • (?) service discovery hat damals https genutzt (mit unserer ca) aber wollten wir auf http (unencrypted) umstellen
  • (✔️) jetzt können wir neue Server Zertifikate ausstellen und in Betrieb nehmen
  • Firmware Aktualisieren oder alte Firmware mit neuem on-certificates Paket versorgen
  • Opennet Server + Client Zertifikate erneuern/austauschen
  • einige Opennet User-AP/UGW-AP Zertifikate erneuern/austauschen
  • Beginn großflächig Nutzer-APs umstellen. Anleitung erstellt.
  • wir haben beschlossen, nicht alle VPN Zertifikate neu zu generieren. Wir werden es aufteilen:
    • bei allen VPN APs muss ein aktualisiertes on-certificates Paket installiert werden
    • ein neues Zertifikat wird nur ausgestellt, wenn es "passt" und schnell geht. Wir müssen aber in Zukunft einen Prozess erstellen, welcher User warnt bevor ihr VPN Zertifikat abläuft. TODO
  • (erledigt) testen, ob bei alten+neuen Firmware der "Generate" Button für neue Schlüsselerzeugung funktioniert, trotz vorhandenem Key
  • Idee: Felder vorausfüllen (Emailadresse & co)

Prozedur zum Testen neuer Zertifikate

Voraussetzung:

  • SSH Zugriff auf Server gai
  • Zugriff auf ein UGW (mit neuem und altem Zertifikat)


Ablauf:

  • ssh into Server gai
 cd /etc/openvpn/opennet_ugw_2022_test
 vim ../opennet_ugw_2022_test.conf
 /usr/sbin/openvpn --config ../opennet_ugw_2022_test.conf  # this starts OpenVPN in foreground on port 16999
  • ssh into your UGW
 # create config file
 cat > mesh_openvpn_gai_opennet_initiative_de_16999_udp.conf <<EOF
 #!/bin/sh
 remote gai.opennet-initiative.de 16999 udp
 ca /etc/ssl/certs/opennet-initiative.de/opennet-server_bundle.pem  # try new ca bundles here
 remote-cert-tls server
 cd /etc/openvpn/opennet_ugw
 cert on_ugws.crt                                                   # try new ugw cert here
 key on_ugws.key
 client
 nobind
 explicit-exit-notify 1
 persist-tun
 persist-key
 mute-replay-warnings
 dev tap
 dev-type tap
 txqueuelen 1000
 EOF
 
 # start openvpn tunnel via
 openvpn --config mesh_openvpn_gai_opennet_initiative_de_1602_udp.conf

Testfälle

#Test	UGW-Server			UGW-Client			Szenario
	certchain	cert		certchain	cert		
-------------------------------------------------------------------------------------------
1	alt		alt		alt		alt		alles alt, wie bisher
2	neu		neu		alt		alt		nur Server aktualisiert und Clients noch nicht
3	neu		neu		neu		neu		auch UGW aktualisiert

Ergebnis

zu 1) geht
zu 2) geht
zu 3) geht

Liste Cert (zum identifieren in Datei)

Last Chars  CN                      Expire date    Comment
-------------------------------------------------------
7wzA93Y=    opennet-vpn-ugw.ca.on - 2023 	- old
VgUYebE=    opennet-vpn-ugw.ca.on - 2032 	- new  

ziWuGw==    opennet-server.ca.on  - 2024        - old
CTPgmM6y    opennet-server.ca.on  - 2032        - new

TALI5FU=    opennet-root.ca.on    - 2033 	- old
RSWnxw==    opennet-root.ca.on    - 2037 	- cert is defect because of signing problems
DCkOeU0=    opennet-root.ca.on    - 2038 	- new fixed cert
 
IRZ3CMQ==   2.1.ugw.on            - 2025       - old
JWGzI1rI=   2.50.ugw.on           - 2033	- new

Replace Cert of UGW Server

   openssl req -days 3650 -nodes -new -newkey rsa:2048 -keyout erina2023.key -out erina2023.csr -config openssl-oni-server.cnf
    • upload neues Zertifikat
    • revoke altes Zertifikat
    • sign neues Zertifikat
      • ggf. in opennetca.sh zwei Zeilen kommentiert + index.txt.attr geändert
    • crt runterladen auf lokalen rechner
  • how many clients are connected?
  • configure new cert + chain
    • copy new crt + key to Gateway Server
   scp erina2023.key erina:/etc/ssl/private/opennet-initiative.de/erina.opennet-initiative.de.key-2023
   scp server_erina.opennet-initiative.de_db68e1ff.crt erina:/etc/ssl/private/opennet-initiative.de/erina.opennet-initiative.de.crt-2023
    • rename files to final name
   mv erina.opennet-initiative.de.crt erina.opennet-initiative.de.crt-2013-old
   mv erina.opennet-initiative.de.key erina.opennet-initiative.de.key-2013-old
    • run ansible
   ansible-playbook -i hosts playbook-servers.yml --limit erina.on-i.de
  • how many clients are connected?
Meine Werkzeuge
Namensräume

Varianten
Aktionen
Start
Opennet
Kommunikation
Karten
Werkzeuge