Ien âld apparaat dûkt op, kin net ferbine, en de fluchste skynbere reparaasje is de hiele host te ferswakjen oant de ferbining slagget. Dy ruil is op it stuit ûnsichtber en yn de praktyk permanint, want nimmen hellet in ûndergrins wei dy't einlings wurket. Twa hiel ferskillende flaters meitsje de druk, en mar ien fan beide giet oer sjifers. Sortearje earst de flater, en set de útsûndering dan dêr't er him net ferspriede kin.

Diel de flater yn twaen foardat jo in rjochtline bewurkje

In rigel yn it tsjinnerloch oer gjin mienskiplike sjifer, of oer in net-stipe protokolfersje, komt fan it kontrôlekanaal: de beide kanten koene it net iens wurde oer hoe't de ûnderhanneling sels beskerme wurde moat. De rigel fan de klant dat gjin metoade foar ferifikaasje fan it tsjinnersertifikaat oan stiet, komt fan hiel earne oars, want dy klant kontrolearret hielendal net wa't antwurde hat. In gegevenssjifer feroarje docht neat foar it twadde gefal, en in rolkontrôle tafoegje docht neat foar it earste.

Nim de ierste mislearre rigel fan elke kant ynstee fan de lêste rigel foar de ôfbrekking, want de lêste is meast in gefolch. Fêststel dan hokker bestân de klant echt iepene hat: in ymportearre profyl bestiet faak twa kear ûnder ferskillende werjefte-nammen, en it bewurkjen fan de kopy dy't nimmen lêst jout in oertsjûgjende gjin-feroaring. In rinnend proses hâldt de ynstellingen wêrmei't it begûn, dus in bewarre bestân is gjin laden bestân. De opdrachten hjirûnder litte de ûnderhanneling fan de klant sjen neist it byld fan de tsjinner fan deselde poging.

openvpn --config <profile>.ovpn --verb 4 2>&1 | head -n 40
journalctl -u [email protected] --since '-10 min' | grep -iE 'cipher|tls|verify'

In twadde listener is it earlike plak foar in swakkere ûndergrins

As it apparaat ta TLS 1.0 komt mei in gegevenskanaal fan foar 2.5, moat de tsjinner in legere ûndergrins foar it kontrôlekanaal en in gegevenssjifer biede dy't de âlde klant ken. De fallback-rjochtline bestiet krekt foar dy peer, wylst de sjiferlist moderne klanten op moderne sets hâldt. Beide rjochtlinen hearre by de listener en net by in brûker of in ferbining, en gjin opsje per klant ferneaut se dêrnei. Dêrom is ien âld apparaat op de haadpoarte in beslút oer elke peer dy't dy dielt.

Dêr't it platfoarm it taliet, rin de âlde listener as syn eigen eksimpel op in aparte poarte, stean dy poarte allinnich fan it adres fan it apparaat ta, en lit de haadtsjinst gewurde. Skriuw op wêrom't de twadde listener bestiet, yn it bestân dat syn konfiguraasje draacht, want in takomstige opromming sil it oars as oerbliuwsel lêze. De skieding is allinnich de muoite wurdich as de swakkere ûndergrins einiget dêr't it apparaat einiget.

tls-version-min 1.0
data-ciphers AES-128-GCM:AES-256-GCM:AES-256-CBC
data-ciphers-fallback AES-256-CBC

Wat in âld sertifikaat fan in leveransier echt stikken makket

De ferifikaasjeflater is in ûntbrekkende rolbyntenis: sûnder dy sil de klant elk sertifikaat akseptearje dat keatlinget nei in fertroud CA, oft dat sertifikaat no foar in tsjinner útjûn is of net. Byn earst it sertifikaat oan 'e tsjinnerrol, en behannelje de byntenis as in eask ynstee fan in ôfstelknop. Allinnich in profyl dat nei dy stap noch mislearret hat in wier sertifikaatprobleem.

In âld sertifikaat fan in leveransier wêrfan't de kaai-grutte of it ûndertekeningsalgoritme net mear oan it standertbelied fan OpenSSL foldocht, is it gefal foar in beheinde feroaring fan it befeiligingsnivo op it kontrôlekanaal. It nivo dêr ferleegje skeakelet de ferifikaasje net út, en it mei nea kombinearre wurde mei in leech CA, in útskeakele ferifikaasje-ynstelling of in net kontrolearre hostnamme. Hâld de rigel binnen it iene profyl dat him nedich hat; in loslitten OpenSSL-konfiguraasje globaal eksportearje soe deselde loslitting oan elk programma op 'e masine jaan.

remote-cert-tls server
tls-cipher "DEFAULT:@SECLEVEL=0"

Lês de ûnderhannele wearden, net de banner

By nivo 4 fan wiidweidichheid printsje beide kanten de TLS-fersje en sjifer fan it kontrôlekanaal dy't se ôfsprutsen hawwe, en de gegevenssjifer fan de sesje. Lês dy rigels ynstee fan 'e initialisaasjebanner, dy't sukses meldt en net de betingsten dêrfan. Ferbyn dan wer in moderne klant oan 'e haadlistener en befêstigje dat er noch altyd op in moderne set lânet, want in útsûndering dy't yn 'e mienskiplike konfiguraasje lekt is, is hjir earst te sjen. De wearden dy't jo kopiearje wurde de basislyn foar de folgjende resinsje.

Test it âlde apparaat allinnich: it moat ferbine, en it moat de iennige sesje yn 'e logboeken wêze dy't de swakkere parameters sjen lit. As in twadde peer ek de âlde set ûnderhannelet, is de útsûndering breder as bedoeld en hat de skieding fan de listener net echt plakfûn. Skriuw beide waarnimmings op, net allinnich de konklúzje.

Elke útsûndering hat in eigner en in datum nedich

In útsûndering sûnder betingst foar fuortheljen wurdt stilwei de standert, dus set it apparaat, de eigner, de reden en de datum wêrop't it ferdwynt njonken de konfiguraasje dy't it rjochtfeardiget. Sûnder dy rigel oerlibbet de swakkere ûndergrins de hardware dy't him nedich hie.

De klant ferfange, of de leveransier om in aktueel profyl freegje, is de útkomst om nei te stribjen; de útsûndering is in útstel en gjin ûntwerp. As it apparaat ôfstjocht, helje de listener en it profyl yn deselde feroaring fuort, sadat gjin fan beide helten rinne bliuwt. Neat hjirfan makket de âlde parameters feilich, it hâldt allinnich tsjin dat de grins fan ien apparaat de basislyn fan allegear wurdt.

Relatearre artikelen