VPN Lancom-Router zertifikatsbasierend

~ 0 min
2022-06-29 11:51

Es werden drei Zertifikate benötigt:

- 1 Stammzertifikat (root certificate), welches die Maschinenzertifikate beglaubigt (nur öffentlicher Schlüssel, vpn_rootcert).
- 1 Maschinenzertifikat für den LANCOM-Router (öffentlicher und privater Schlüssel, vpn_devcert + vpn_devprivkey) .P12
- 1 Maschinenzertifikat für die Gegenstelle (öffentlicher (vpn_pksc12_int) und privater Schlüssel) .P12

Alle Zertifikate liegen unter (SSH:) cd /Status/File-System/Contents oder (Webconfig:) Extras / LCOS-Menübaum / Status/ Dateisystem
Löschen mit SSH: del vpn_cevcert oder Webconfig.

Beim Hochladen der *.p12-Datei als "VPN - Container (VPN1)" wird der p12-Container im LANCOM-Router-internen FLASH-Speicher unter:
VPN - Container (VPN1): /flash/security/vpn/vpn_pkcs12_int
abgelegt.
Danach wird der p12-Container vom LANCOM-Router-internen OpenSSL entpackt.
Die entpackten *.pem/*.key-Dateien werden dann entsprechend im LANCOM-Router-internen FLASH-Speicher abgelegt:
VPN - Root-CA-Zertifikat: /flash/security/vpn/vpn_rootcert
VPN - Geräte-Zertifikat: /flash/security/vpn/vpn_devcert
VPN - Privater-Geräte-Schlüssel: /flash/security/vpn/vpn_devprivkey
Das VPN-Modul arbeitet mit den einzelnen *.pem/*.key-Dateien aus dem LANCOM-Router-internen FLASH-Speicher.

Prinzip: https://www.lancom-systems.de/docs/LCOS/Refmanual/DE/topics/aa1120076.html

LANCOM Router und Access Points unterstützen kein PKCS#7 Format, sondern nur PKCS#12 und CER.
Daher muss das Zertifikat von PKCS#7 in das Format PKCS#12 oder CER konvertiert werden.
Ein PKS#7-Zertifikat beginnt mit "----BEGIN PKCS7-----".
• Datei-Endung der Zertifikats-Datei in p7b ändern
• Doppelklick auf das Zertifikat (Windows) öffnet certmgr - Aktuellen Benutzer
• Ordner Zertifikate: Zertifikat auswählen, öffnen, In Datei kopieren -> Base-64 X.509 (CER)
Das neue Zertifikat beginnt mit "-----BEGIN CERTIFICATE-----"

Root-CA (VPN)
(im CentralSiteGateway, WLC oder Lancom-Router nur mit VPN-25 Option)

  1. Download XCA-Tool zum Erstellen der Zertifikate https://hohnstaedt.de/xca/ (alternativ: OpenSSL)
    (Lanconfig: Zertifikatsstelle aktivieren / exportieren ist stark fehlerhaft)
    Anleitung siehe: https://docs.insys-icom.de/pages/de_m3_creating_certificates_xca.html
    https://www.lancom-systems.de/certificate-generation/
  2. XCA-Tool: CA ROOT erstellen, exportieren als ca.cert
  3. XCA-Tool: TLS-Server VPN-Gerätezertifikat erstellen
    exportieren als pxcs#12 Zertifikatskette (.PFX mit CA-Zertifikat)
  4. WebConfig: Extras -> Dateimanagement -> Zertifikat hoch laden -> Typ: Standard-Zertifikatcontainer als PKCS#12 (vorhandene CA ersetzen)
  5. SSH Test: "show vpn ca" und "show vpn cert"
    trace # vpn status
      (mit "Cursor-hoch" -> "ENTER" kann man on/off umschalten)

siehe: https://support.lancom-systems.com/knowledge/display/KB/Erstellen+von+X.509-Zertifikaten+mit+der+Anwendung+XCA


Geräte-Zertifikat (Router)
Es werden 2 Zertifikatspaare (Server und Client) erstellt, die jeweils mit dem CA-Zertifikat beglaubigt sind.
Kein Verschlüsselungs-Passwort für den Export des *.p12 Zertifikatspaketes verwenden.

Das Maschinenzertifikat des LANCOM-Routers (VPN-Server) muss den "Common Name" ("CN=") des LANCOM-Routers ausweisen.
Das Maschinenzertifikat des VPN-Clients oder VPN-Endpunkt muss den "Common Name" ("CN=") des VPN-Clients respektive des VPN-Endpunktes ausweisen.
Die .P12-Zertifikatspakete können testweise im Windows certmgr installiert werden. Aussteller= CA, Antragsteller das Maschinenzertifikat.
Den kompletten CN-String findet man im OpenSSL in der index.txt.

Den im Router konfigurierten Common-Name (CN) sieht man im WebConfig im LCOS-Menübaum:
/Setup/VPN/IKEv2/Auth/Parameter/Local-ID CN=<CN des VPN-Servers>
/Setup/VPN/IKEv2/Auth/Parameter/Remote-ID CN=<CN des VPN-Clients oder des VPN-Endpunktes>

• Server-Zert.pem + key.key + cacert.pem in output.p12 zusammen fassen:
  openssl pkcs12 -export -in zert.pem -inkey key.key -certfile cacert.pem -out output.p12

  1. VPN-Zertifikat für Router und Client erstellen (mit XCA (oben) im Lancom WebClient https://support.lancom-systems.com/knowledge/pages/viewpage.action?pageId=32981641)
  2. bei WebClient: Router-Zertifikat in Router laden (Lanconfig/Konfigurations-Verwaltung > Zertifikat oder Datei hochladen, Typ: VPN-Container VPN(1) als PKS+12, .P12-Datei, Passphrase erforderlich)
  3. bei VPN-Clienteinwahl: lokale RAS-IP muss festgelegt werden
  4.  
  5. Zertifikatsverteilung manuell: Lanconfig/Konfigurations-Verwaltung > Zertifikat oder Datei hochladen
    https://www.youtube.com/watch?v=X3C2doQ3X6Y

Geräte-Zertifikat (Gegenstelle)

  1. Windows-Client: CA.CERT in "Stammzertifikate" importieren
  2. Key.key durch key.pem ersetzen! Es muss alles im PEM-Format im p12-Container vorliegen
    Alle .PEM-Dateien dürfen kein Passwort besitzen, nur die .P12-Datei.


Zertifikatsverteilung über SCEP: (zwei Lancom-Router, Router mit Hauptzertifizierungsstelle verteilt die Zertifikate (SCAP-Client))
https://www.youtube.com/watch?v=3f6mGCQ4BeM

Zertifikatstypen: https://serverfault.com/questions/9708/what-is-a-pem-file-and-how-does-it-differ-from-other-openssl-generated-key-file

OpenSSL (Windows)

  • openssl.cnf konfigurieren: C:\Program Files\Common Files\SSL\openssl.cnf
    [CA] dir = festlegen
    [CA] default_days = 3650 Tage
  • in %dir% (oben definiert):
    - Datei "index.txt" anlegen
    - Datei "serial" anlegen, Inhalt: "01"
    - Verzeichnisse "certs", "crl", "newcerts", "private" anlegen
  • Erstelle RSA 2048bit CA-Zertifikat und Key
    "openssl req -new -x509 -newkey rsa:2048 -keyout cakey.pem -out cacert.pem -days 3650"
    cakey.pem - geheimer Schlüssel  (mit Passphrase)
    cacert.pem - CA-Zertifikat
    (Common Name (CN) ist hier der offizielle Name der Zertifizierungsstelle. Für die eigene CA kann ein beliebiger Name hinterlegt werden.)
  • Test, Zertifikat (mit der Passphrase) öffnen:
    "openssl rsa -in cakey.pem -noout -text"
  • Erstelle RSA 2048bit Server-Key (serverkey.pem) mit AES-128 verschlüsselt (einfaches PW)
    "openssl genrsa -out serverkey.pem -aes128 2048"
  • Passwort wieder entfernen
    "openssl rsa -in serverkey.pem -out serverkey.pem"
  • Erstelle ein CSR (Certificate Signing Request) (req.pem).
    Das muss danach von der CA signiert werden. Hier sind wieder Angaben analog zum Erstellen der CA nötig.
    "openssl req -new -key serverkey.pem -out req.pem -nodes"
    Beim Server-Zertifikat ist der Common Name von entscheidender Bedeutung.
    Hier muss der DNS-Name stehen, unter dem der Client den Server anspricht!
    Wird das Zertifikat für eine HTTPS-Verbindung zu www.hinzag.eu verwendet, so muss der Common Name genau www.hinzag.eu heißen. Anderfalls wird der Browser das Zertifikat nicht akzeptieren.
  • Zertifikate müssen in oben angelegtem %dir% liegen, damit die CA zum Signieren gefunden wird
    "cakey.pem" muß in %dir%/private/ liegen
  • CA signiert das Server-Zertifikat:
    "openssl ca -in req.pem -notext -out servercert.pem"
    Es entsteht "01.pem" in /newcerts/.

 

  • Lancom Webconfig: Extras -> Dateimanagement -> Zertifikate hoch laden: cacert.pem

 

Quellen:
https://www.lancom-forum.de/fragen-zum-thema-vpn-f14/windows-phone-10-per-vpn-verbinden-t15356.html#p86774
Linkliste https://www.lancom-forum.de/fragen-zum-thema-vpn-f14/vpn-via-android-client-t17229.html#p97795
Anleitung Zertifikat VPN https://www.lancom-forum.de/fragen-zum-thema-vpn-f14/windows-phone-10-per-vpn-verbinden-t15356.html#p86774
hilfreich Zertifikate: https://www.lancom-forum.de/viewtopic.php?f=14&t=18184&p=103339
OpenSSL zum Erstellen von Zertifikaten: https://www.lancom-forum.de/lancom-faq-faq-bereich-f11/openssl-zum-erzeugen-von-vpn-zertifikaten-t18981.html
Strongeswan mit Zert.: https://www.lancom-forum.de/aktuelle-lancom-router-serie-f41/1781vaw-vpn-verbindung-klappt-nicht-t16074.html#p90462

Durchschnittliche Bewertung 0 (0 Abstimmungen)

Es ist möglich, diese FAQ zu kommentieren.