На еден сервер клиентите заглавјуваат извесно време и потоа повторно се поврзуваат, а друг веднаш ги одбива врските со порака за големината на клучот. Изгледаат како различни грешки, а тоа е истата грешка свртена во спротивни насоки. Криптографијата на ракувањето има цена што расте со големината на параметрите, и има и долна граница под која современите библиотеки не одат. Одредувањето на големината на материјалот е контролната листа, а првата точка е да се одлучи која од двете грешки всушност ја имате.

Прочитајте го неуспехот пред да регенерирате нешто

Времето ви го кажува најголемиот дел. Ракување што трае неколку секунди и потоа умира обично значи дека пресметката го надживеала трпението на другата страна, што укажува на параметри преголеми за хардверот или за рокот. Веднаш одбивање што наведува големина на клуч или група укажува на другата страна, на материјал што библиотеката воопшто нема да го прифати.

Овие две бараат спротивни поправки, и токму тука грешат повеќето обиди. Регенерирањето параметри од 8192 бита на клиент што веќе одбил мала група го влошува бавниот случај, а за брзиот не прави ништо. Запишете кој симптом го видовте пред да допрете датотека.

Потоа проверете што се бара од другата страна. Сервер поставен за голема група во конечно поле го принудува секој клиент да потроши исто процесорско време при секое повторно преговарање, не само при поврзување. Ако проблемот се појавува во редовен интервал, а не при стартување, тој интервал е силен навестувач која поставка е скапа. Повторното преговарање го повторува целото пресметување, па застојот што се враќа секој час е обично истата цена платена повторно.

Бавниот случај: материјал што хардверот не може да си го дозволи

Работата на Diffie-Hellman и RSA расте брзо со големината на клучот, и сето тоа се случува пред да потече каков било сообраќај низ тунелот. На мал рутер или клиент со мала моќ, доволно голема група може да ја турне размената надвор од рокот на другата страна, па врската повторно се обидува или едноставно изгледа заглавена без никаква грешка.

Поправката е да се спуштите на големина што ја поддржува секоја страна и што секој уред може удобно да ја пресмета. RSA клуч од 2048 бита и група од 2048 бита остануваат широко компатибилна основна линија; поголемото помага само кога сите страни се согласни и процесорот може да го плати при секое повторно преговарање. Сето над таа основна линија е намерна размена, а не надградба.

Големината не е резултат, а најголемиот број во споредбена табела не е автоматски правилен избор. Изберете ја најмалата вредност што ја дозволува вашата политика и што ја прифаќаат сите страни, па измерете го ракувањето наместо да претпоставите дека се подобрило. Помала група што сѐ уште го надминува рокот ви кажува дека големината никогаш не била целата приказна.

Брзиот случај: група што библиотеката ја одбива

Современите градби на OpenSSL ги одбиваат најмалите групи во конечно поле веднаш, а подигнатото ниво на безбедност ја турка долната граница уште повисоко. Фирмверот на рутерот што носи датотека со параметри стара децении е вообичаениот извор, а симптомот е врска што веднаш пропаѓа со порака што ја наведува групата или големината на клучот. Ништо во тој неуспех не е повремено, и токму тоа го прави лесно препознатлив.

Заменете ја датотеката наместо да ја уредувате конфигурацијата за да ја прескокнете проверката. Генерирајте тековна група, валидирајте ја, потоа инсталирајте ја таму каде што демонот навистина ја чита. Чувајте ја старата датотека додека клиент успешно не се поврзе со новата:

openssl dhparam -out /etc/openvpn/ffdhe2048.pem 2048
openssl dhparam -in /etc/openvpn/ffdhe2048.pem -check -noout
ls -l /etc/openvpn/ffdhe2048.pem

Командата за проверка ја валидира датотеката и не печати ништо корисно кога ќе помине; списокот потврдува дека сте ја замениле датотеката што ја вчитува услугата, а не застарена копија до неа. Насочете ја конфигурацијата кон таа патека, рестартирајте го демонот и потврдете дека клиент што претходно пропаѓал сега го завршува ракувањето.

Ако серверот поставува и ниво на безбедност или профил на сертификат, прочитајте ги пред да заклучите дека групата била погрешна. Профил што бара построга класа може да одбие материјал што стандардното би го прифатило, а отстранувањето на таа поставка е потесна промена од глобалното исклучување на проверката.

Изберете големина за другата страна и хардверот

Откријте што може да поднесе далечниот крај пред да генерирате нешто егзотично. Уред премногу стар за група од 2048 бита е уред за замена, бидејќи насочувањето на серверот кон послаба група само претвора жалба за компатибилност во прекин. Трајните поправки одат кон понов софтвер, а не кон постари параметри. Секој привремен исклучок во оваа област има обичај да стане трајна конфигурација.

Каде што процесорот на серверот е граница, сменете го алгоритмот наместо да се спуштате под политиката. Размена на клучеви со елиптична крива како X25519 е драстично поевтина од голема група во конечно поле и е широко поддржана, што ја прави подобар одговор на жалба за перформанси од помал RSA модул.

Што и да изберете, тестирајте со една вистинска врска и гледајте колку трае ракувањето, не само дали на крајот се поврзува. Врската што успева за дванаесет секунди има иста основна причина како онаа што пропаѓа на петнаесет.

Запишете го изборот за да не може да го поништи повторна изградба

Чувајте ја датотеката со параметри под управување со конфигурација и запишете до неа големината, причината и датумот. Повторно изграден сервер што тивко генерира свои стандардни вредности е начинот на кој истата грешка се враќа шест месеци подоцна, а никој не може да ја објасни првичната одлука.

Запишете ги истите информации до крајната точка и профилот, за прегледот да не мора да ги реконструира од големината на датотеката. Кога следната врска ќе заглавје, таа белешка е разликата помеѓу петминутна проверка и нова истрага. Таа исто така го спречува следниот инженер да го реши бавниот случај со поправка наменета за брзиот.

Поврзани статии