Windows en strongSwan-syfers: pas die regte laag
Dieselfde sleutellengte beteken nie 'n versoenbare stel nie. Skei die IKE-beleid van die ESP-transformasies en hou CBC en GCM in aparte voorstelle.
Albei kante sê AES-128 en die tonnel weier steeds om op te bou. CBC en GCM is verskillende transformasies wat toevallig dieselfde sleutellengte het, en 'n kliënt wat die een bied, bevredig nie 'n gateway wat net die ander een aanvaar nie. Die woord AES beskryf 'n familie, nie 'n ooreenkoms nie.
Daar is ook 'n tweede as, en dit is die een wat verwarrende foute veroorsaak.
Twee lae, twee onafhanklike lyste
IKE beskerm die onderhandeling self, terwyl die kind-assosiasie die verkeer beskerm waaroor jy regtig omgee. Windows stel die eerste bloot as 'n enkripsiemetode en 'n integriteitsmetode, en die tweede as syfer- en verifikasie-transformasiekonstantes. Daardie velde is nie aliasse vir mekaar nie, en 'n waarde wat in die een geldig is, kan in die ander betekenisloos of verkeerd wees. Om die profiel met daardie skeiding in gedagte te lees, verwyder die meeste van die verwarring.
Die praktiese gevolg is dat jy 'n heeltemal aanvaarbare sleuteluitruilingsbeleid en 'n datakanaalbeleid kan hê wat die eweknie nie sal aanvaar nie. Een lys onderhandel; die ander beskerm pakkette. Om 'n waarde in die eerste te verander, het geen effek op die tweede nie, hoe soortgelyk die twee ook al in 'n konfigurasiedialoog lyk.
Skryf albei lyste neer voordat jy hulle met die gateway vergelyk. 'n Vergelyking uit die geheue is hoe een veld twee keer geredigeer word en die ander nooit nie. Hou die gateway-konsole oop langs die profiel.
Lees die fout langs die voorstelle
Die stadium wat gefaal het, sê vir jou watter lys om te ondersoek. 'n Weiering tydens die aanvanklike sleuteluitruiling is 'n IKE-voorstelprobleem, en dit gebeur voordat enige kind-assosiasie bestaan. 'n Fout terwyl die beskermde-verkeer-assosiasie onderhandel word, is 'n ESP-voorstelprobleem, en die sleuteluitruiling het reeds geslaag. 'n Algemene beleidstemming-boodskap van die kliënt noem nie een van die stadiums nie, daarom is die gateway se eie siening die nuttige een.
swanctl --list-conns
swanctl --list-sas
journalctl -u strongswan -n 60 --no-pager
Vergelyk die ontvangde voorstel, die gekonfigureerde voorstel en die gekose een vir daardie enkele poging. Drie verskillende lyste maak hier saak, en net die laaste een beskryf wat werklik gebruik is. Haal dit letterlik in die kaartjie aan eerder as om dit op te som.
Hou CBC en GCM as aparte alternatiewe
'n Gateway wat doelbewus toegelaat word om enige familie te aanvaar, het twee voorstelle nodig, nie een nie. In strongSwan skei 'n komma alternatiewe, en 'n koppelteken verbind die komponente van 'n enkele stel. Om albei families met koppeltekens te kombineer, lewer een onmoontlike voorstel eerder as twee aanvaarbare voorstelle.
proposals = aes128gcm16-prfsha256-ecp256, aes128-sha256-ecp256
esp_proposals = aes128gcm16-ecp256
Die eerste alternatief dra geauthentiseerde enkripsie en noem steeds 'n pseudorandomfunksie, want sleutelafleiding het een nodig selfs wanneer integriteit uit die syfer kom. Die tweede alternatief is klassieke enkripsie met 'n aparte integriteitsalgoritme. Albei bly onderworpe aan wat die gelaaide kripto-implementering ondersteun.
'n ESP-voorstel is nie 'n hernoemde IKE-voorstel nie
Die syferteken lyk identies in albei lyste, en byna niks anders dra oor nie. 'n ESP-voorstel het geen sleuteluitruilings-pseudorandomfunksie nie, en sy integriteits- en voorwaartse-geheimhouding-vereistes word teen die Windows-beleid aan die ander kant beredeneer eerder as om uit die IKE-lyn gekopieer te word. Om een lys meganies in die ander te vertaal, lewer iets wat valideer en nooit onderhandel nie.
Kies 'n rigting en bly daarby. Óf die gateway hou by 'n beleid wat net GCM toelaat en die kliënt ontplooi 'n volledige versoenbare beleid, óf die gateway aanvaar albei families en die kliënt hou sy bestaande stel. Om 'n terugval te aktiveer wat die sekuriteitsbeleid verbied, is nie 'n oplossing nie, hoe vinnig dit ook al die fout opklaar.
Verifieer albei stellen, dan 'n herleuteling
Bevestig die gekose sleuteluitruilingsstel en die gekose verkeersstel afsonderlik, want hulle kom uit verskillende lyste en kan onafhanklik slaag. Laat dan 'n herleuteling gebeur en bevestig dit ook. 'n Eerste handdruk wat werk en 'n herleuteling wat faal, beskryf 'n voorstelstel wat net gedeeltelik aanvaarbaar is.
Hou daardie bewyse by die verandering. 'n Herhalende ontkoppeling het sy eie mislukte-uitruiling-rekord nodig voordat iemand 'n tydhouer of 'n platformfout blameer.