FortiGate IPsec på Linux: hvilken klient som faktisk kobler til
Linux-klienten fra leverandøren snakker bare SSL VPN. En mobil IPsec-profil må bygges på nytt i vpnc eller strongSwan, og fire felt må stemme med gatewayen.
Windows-kollegaen din importerer en FortiGate-veiviserprofil og er på nett i løpet av et minutt. Du installerer samme leverandørpakke på Ubuntu, leter etter en IPsec-fane og finner en klient som bare kan åpne en SSL VPN-portal. Konklusjonen som følger er vanligvis feil to ganger: gatewayen avviser deg ikke, og Linux-bygget er ikke ødelagt. Fortinet leverer den klienten kun med SSL VPN-støtte, så en mobil IPsec-profil har ingen plass å bo og må bygges på nytt et sted som snakker IKEv1.
Først: avgjør hvilken protokoll du faktisk fikk
Den ombyggingen er mekanisk når du slutter å behandle leverandørklienten som referanseimplementasjonen.
FortiGate-enheter publiserer både SSL VPN og IPsec, og overleverings-e-posten sier sjelden hvilken du fikk. En portal-URL pluss en påloggingsside i nettleserstil betyr SSL VPN, og på Linux er svaret der openfortivpn, ikke feltkartleggingen nedenfor. En gruppeidentifikator pluss en forhåndsdelt nøkkel betyr mobil IPsec, som er det vpnc og strongSwan håndterer.
Å gjøre dette feil er den vanligste årsaken til at et Linux-forsøk dør før første fase er fullført: klienten tilbyr IKEv1 til en HTTPS-portal eller omvendt. Be administratoren om protokollnavnet skriftlig før du installerer noe.
Fire hemmeligheter reiser i fire forskjellige felt
Ordet password forekommer to ganger i de fleste overleveringer og betyr to forskjellige ting. Den forhåndsdelte nøkkelen autentiserer peer-en selv, og det er en maskinhemmelighet administratoren leser fra gateway-konfigurasjonen. Kontopassordet ditt er en egen hemmelighet som beviser hvilket menneske som står bak den peer-en.
De to andre verdiene er lettere å overse. Gruppeidentifikatoren er strengen veiviseren skrev inn i IPsec-gruppeobjektet, og 0 er en legitim verdi, ikke et tomt felt. Forslaget dekker kryptering, hashing og en Diffie-Hellman-gruppe for hver fase, pluss PFS-innstillingen, og hvert element i det må stemme med gatewayen. Når en tilkobling feiler i fase 1, er nesten alltid en av de fire skyldneren, så skriv dem ned hver for seg i stedet for å slenge dem i én dialog.
Hva hvert vpnc-felt må inneholde
Installer klienten sammen med redigeringsfrontenden, og opprett deretter en VPNC-tilkobling:
sudo apt install vpnc network-manager-vpnc network-manager-vpnc-gnome
Sett gatewayen til FortiGates offentlige adresse, og gruppenavnet nøyaktig til identifikatoren fra gatewayen, inkludert en bar null. Group password tar den forhåndsdelte nøkkelen, mens brukernavn og passord tar kontoen din, med eventuelt token lagt til slik gatewayen forventer. I den avanserte dialogen velger du Diffie-Hellman-gruppen forslaget navngir, tilpasser PFS til samme gruppe, aktiverer NAT-gjennomtrengning når klienten står bak en hjemmeruter, og lar deteksjon av død peer gå i takt med gatewayen.
Gruppenavnet er feltet som hoppes over, fordi det ser valgfritt ut og standardverdien null ligner en plassholder. Send det tomt, og klienten overfører en annen identifikator enn den gatewayen validerer. Hvis profilen fortsatt feiler, sammenlign de avanserte verdiene med den fungerende Windows-klienten i stedet for med et foruminnlegg for et annet nettsted.
Samme profil skrevet for strongSwan
strongSwan er den bedre langsiktige beholderen for disse verdiene, siden konfigurasjonen er en tekstfil du kan gjennomgå og ta vare på:
conn office-fw
keyexchange=ikev1
aggressive=yes
left=%any
leftauth=psk
leftauth2=xauth
xauth_identity=YOUR_USER
right=GATEWAY_ADDRESS
rightauth=psk
rightsubnet=OFFICE_SUBNET
ike=aes128-sha1-modp1536!
esp=aes128-sha1-modp1536!Les forslagslinjene før blokken, fordi utropstegnet på slutten endrer betydningen deres: det fester nettopp det ene forslaget og fjerner alternativene klienten ellers ville tilby. En gateway konfigurert for ett transformasjonspar vil avvise en klient som åpner med en liste, så det er festingen som gjør en forhandling til et samsvar. Ta de nøyaktige algoritmenavnene fra den fungerende gatewayprofilen, og bytt ut plassholderne med dine egne verdier.
De to autentiseringslinjene er ikke overflødige. PSK-en beviser peer-en, XAuth-blokken beviser brukeren, og fjerner du en av dem, står du igjen med en fase gatewayen ikke fullfører.
Les feilen før du endrer enda et felt
Arbeid baklengs fra symptomet i stedet for å randomisere dialogen på nytt. En IKE SA som kommer opp uten tildelt adresse betyr at brukerautentiseringen feilet eller aldri kjørte, så sjekk kontoen og tokenhåndteringen. En fase 1 som aldri fullføres peker på forslaget, gruppeidentifikatoren eller aggressiv modus, og hver av dem sammenlignes med gatewayen, ikke bare med Windows-klienten.
En tunnel som etableres og deretter dør hvert par minutter er en uenighet om deteksjon av død peer mellom de to endene; tilpass gatewayens timer i stedet for å slå av keepalives overalt. En etablert tunnel der kontorverter fortsatt er uoppnåelige betyr vanligvis at det dyttede subnettet aldri havnet i den lokale rutingtabellen, noe en tredjepartsklient kanskje ikke gjør selv.
Lever de fungerende verdiene tilbake til gatewayens eier når du er ferdig: protokoll, gruppeidentifikator, forhåndsdelt nøkkel, forslag, PFS og DPD-avgjørelsen. Da tar neste Linux-maskin minutter i stedet for en kveld, og ingen må oppdage på nytt at gruppenavnet var null.