OpenVPN TLS-sifersflater: fergelykje earst beide partijen
In flater „gjin mienskiplike sifer“ heart by it TLS-kontrôlekanaal, net by data-ciphers. Fergelykje earst ferzjes, dan de suitenlisten, en bewiis dan de ûnderhanneling.
In flater „gjin mienskiplike sifer“ klinkt as ien ynstelling dy't feroare wurde moat, en de ynstelling dy't de measte minsken feroarje is de ferkearde. OpenVPN hâldt aparte beliedens foar it kontrôlekanaal dat de TLS-hânskikking docht en foar it datakanaal dat pakketten yn de tunnel ferfiert, en de flater neamt it earste wylst minsken it twadde bewurkje. It fergelykjen fan wat elke partij tastiet, yn de goede folchoarder, makket it rieden twa of trije besluten: ferzje, dan suitenlist, dan oanmeldgegevens.
Krijst dy folchoarder ferkeard, dan kinst in oere ferrêde troch in AES-namme ta te foegjen oan in list dêr't nea nei sjoen is.
Twa siferlisten, en mar ien brekt de hânskikking
It kontrôlekanaal ûnderhannelet in TLS-sesje, en syn belied wurdt skreaun mei tls-cipher foar TLS 1.2 en tls-ciphersuites foar TLS 1.3. It datakanaal wurdt apart ynsteld mei data-ciphers, dêr't in ôfwiking in ferbining jout dy't ta stân komt en dan gjin ferkear trochlitte kin. Beide jouwe flaters dy't sifers neame, en dêrom wurde se trochinoar helle. In hânskikking dy't nea klear komt wiist nei it kontrôlekanaal, wylst in oanleine tunnel dy't pakketten falle lit nei it datakanaal wiist.
Lês it hiele berjocht ynstee fan de earste rigel. In ferzjeferskil, in ûntbrekkende suite, in sertifikaat-ûnderskriftalgoritme dat de partij ôfwiist en in mislearre kontrôle fan hostnamme einigje allegear yn in TLS-flater, en mar ien fan harren giet oer dyn suitenlist. It skieden hâlden fan dy kategoryen is it grutste part fan de diagnoaze.
Fergelykje ferzjes ear'tst suiten fergelykest
In partij beheind ta TLS 1.2 en in partij dy't 1.3 easket diele gjin ferzje, en gjin siferstring oerspant dat. Skriuw tls-version-min en tls-version-max oan beide kanten op, of de standertwearden fan de bouwen yn gebrûk, want it OpenSSL-belied fan in distribúsje kin de ûndergrins ferheegje sûnder dat ien OpenVPN-opsje dat seit. As ien kant in apparaat of in tredde-partijklant is, is syn finster wat syn firmware tastiet. Pas as de finsters oerlaapje, betsjut in suitenfergelyking wat.
Dy oantekeningen moatte ek de wiere binêre bestannen neame. In kommandorigel-openvpn op dyn laptop is net needsaaklikerwize de klant dy't in ymportearre profyl ôfhandelt.
Listen foar TLS 1.2 en TLS 1.3 minge net
Suitennammen foar TLS 1.2 sjogge der sa út: ECDHE-RSA-AES256-GCM-SHA384 en hearre by tls-cipher, dat in OpenSSL-siferstring oannimt. Suiten foar TLS 1.3 hjitte sa: TLS_AES_256_GCM_SHA384 en hearre by tls-ciphersuites; ien tafoegje oan de 1.2-string stelt de 1.3-list net yn, en de parser kin de tekst oannimme sûnder dy ea te matsen. In filter dat foar ien ferzje goed is, seit neat oer de oare. Skriuw op foar hokker ferzje hokker list bedoeld is.
openvpn --show-tls printet út wat de lokale bou stipet, en dat is in ynventaris, gjin tasizzing: de fiere partij lit dy suiten miskien net ta, en it aktive profyl skeakelet se miskien net yn. Brûk it om in bou út te sluten dy't hielendal gjin suite biede kin, en fergelykje dêrnei de ynstelde listen.
Bewiis de ûnderhanneling op in nije ferbining
In slagge hânskikking is it iennige bewiis dat telt, en it moat fan de echte klant mei it echte profyl komme. Ferheegje de breedsprakigens fan de tsjinner, ferbyn ien kear en lês de ûnderhannele protokofferzje en suite út it loch ynstee fan oan te nimmen dat de earst oanbeane wearde wûn hat. Befêstigje dêrnei it datakanaal apart mei ferkear troch de tunnel, want in wurkjende hânskikking en in mislearjend datakanaal binne ferskillende reparaasjes. Werhelje it nei elke konfiguraasjewizing, want in ferâldere klantprofyl is in gewoane falsk-negatyf.
Bestiet der gjin goedkarde mienskiplike konfiguraasje, dan is it antwurd in upgrade of in migraasjeplan, net in ferswakke belied. tls-version-min ferleegje, ferifikaasje útskeakelje of elke âlde suite ynskeakelje hellet de ôfwizing fuort sûnder te foldwaan oan de feilichheidseask dy't him makke hat.
Skriuw de ûnderhannele ferzje, de suite en de datasifer yn it wizigingskaartsje. De folgjende persoan dy't in TLS-flater treft, begjint by dy oantekening ynstee fan by in siferstring út in forumberjocht.