Din operatör lämnar över ett CA-paket, ett klientcertifikat och dess nyckel, och klienten startar inte förrän de är sammankopplade i en profil. Profilen är konfiguration: den pekar på filerna, innehåller dem inte, och du kan inte göra den till ett certifikat genom att redigera den. Genomgången börjar på en redan godkänd bärbar dator och slutar med en profil som du kan starta från en känd katalog. Den skapar ingen CA, registrerar inget nytt certifikat och rör inte servern.

Målet här är en OpenVPN 2.6-kommandoradsclient för Linux, routad TUN över UDP, med certifikatautentisering.

Samla bara filerna på klientsidan

Arbeta i en skyddad katalog och samla in det godkända CA-förtroendematerialet, ditt utfärdade klientcertifikat och den privata nyckel som hör till. I det här exemplet är namnen ca.crt, laptop-a.crt och laptop-a.key. Filnamnen är bara etiketter; de säger ingenting om vad varje fil innehåller.

Om du genererade nyckeln vid registreringen lämnade den aldrig maskinen; från utfärdaren ska bara det signerade certifikatet och den publika kedjan komma tillbaka. Kontrollera att certifikatet bär den klientroll som tjänsten förväntar sig. Kontrollera också att nyckeln hör till det certifikatet och inte till ett tidigare från ett tidigare försök. Ett par som inte passar ihop ger ett TLS-fel mycket senare, och det ser ut som ett serverproblem.

Lämna CA:ns privata signeringsnyckel, serverns privata nyckel och DH-parametrarna utanför det här paketet.

Koppla ihop filerna i en liten profil

Profilen nedan är medvetet kort. Varje rad väljer antingen slutpunkten, begränsar den identitet klienten accepterar, eller pekar på en av de tre filerna.

client
dev tun
proto udp
remote vpn.example.net 1194
nobind

remote-cert-tls server
verify-x509-name vpn-gateway name
ca ca.crt
cert laptop-a.crt
key laptop-a.key

Raden remote väljer nätverksslutpunkten. remote-cert-tls server kräver att motparten visar ett certifikat med serverroll. verify-x509-name låser det förväntade namnet, här vpn-gateway som Common Name för servercertifikatet med OpenVPN:s standardnamnfält. Värdet härleds inte från DNS-värdnamnet, så använd det identitetsschema som operatören angav.

Släpp inte de kontrollerna bara för att en testslutpunkt visar ett annat certifikat.

Den här basprofilen förutsätter ingen separat kontoutmaning och ingen nyckel för kontrollkanalen. Om tjänsten behöver auth-user-pass, tls-auth eller tls-crypt, behåll konfigurationen och materialet du fick, eftersom en hemlighet för kontrollkanalen som du genererar själv inte matchar den servern har. Behåll också tjänstens chifferpolicy i stället för att importera komprimerings- eller chifferrader från ett gammalt exempel.

Gör arbetskatalogen explicit

Relativa sökvägar följer processens arbetskatalog, inte platsen för .ovpn-filen.

Det överraskar folk som flyttar profilen till en ny mapp och förväntar sig att nyckeln följer med. För en katalog som administratören valt byter kommandot nedan till en absolut sökväg innan det läser profilen och dess referenser.

sudo openvpn --cd /etc/openvpn/client/laptop-a --config laptop-a.ovpn

En importguide på skrivbordet eller en systemtjänst kan paketera beroendena åt dig och tillämpa egna regler. Den kan också använda en annan arbetskatalog än den du testade i. Bekräfta hur din startmetod löser sökvägarna till nyckel, certifikat och CA. Att bara flytta .ovpn-filen flyttar inte den separata privata nyckeln.

Håll nyckeln läsbar bara för den avsedda användaren eller tjänsteidentiteten.

Verifiera överlämningen, inte filnamnen

Före den första auktoriserade anslutningen, kontrollera slutpunkten, certifikatets identitet, utfärdaren och giltighetsfönstret. Bekräfta sedan att filreferenserna löses från arbetskatalogen du faktiskt kommer att använda. Efter anslutning, testa applikations- och DNS-beteendet som routningspolicyn ska tillhandahålla. Tre läsbara filer bevisar ingenting om serverauktorisation eller om en användbar resurssökväg.

Om en lösenfrasfråga visas hör den till den privata nyckeln, inte till ett VPN-konto.

Till sist, inventera paketet som legitimeringsmaterial. Att ge samma certifikat och nyckel till en andra bärbar dator kopierar identiteten, och att byta namn på filen ger dig ingen ny registrering. Det är skillnaden mellan att sätta ihop en profil och att utfärda en.

Relaterade artiklar