DH датотека или tls-auth кључ? Разликовање две OpenVPN датотеке
Једна датотека чува јавне параметре групе, друга је заједнички тајни материјал. Три услова одређују којој директиви припада која.
Две датотеке, две директиве и навика да се обе именују по ономе што конфигуришу. Тако dh.pem завршава на линији tls-auth и клијент пада са поруком о неочекиваном формату кључа. Одлука пред вама није која је датотека јача. Већ која је улога распоређивању заиста потребна, и три услова то решавају: какав размен кључева ће договорити ваш TLS стек, да ли уопште желите аутентикацију контролног канала и да ли материјал мора да остане тајан.
Одговорите им по реду и питање датотеке ће се само одговорити. Прескочите их и имена директива почињу да изгледају заменљива, а управо из тог стања настаје грешка.
Прочитајте ознаку пре имена датотеке
Први ред датотеке је информативнији од њеног имена, јер је име људска конвенција, а ознаку ствара алат. Параметри Diffie-Hellman носе PEM ознаку BEGIN DH PARAMETERS. Статички кључ OpenVPN је сасвим друга структура, са својим заглављем и хексадецималним теретом.
Преименовање ништа не претвара. Датотека параметара названа ta.key и даље је параметри, а статички кључ назван dh.pem и даље је статички кључ; парсер чита садржај и одбија неподударност. Проверите пре уређивања профила:
head -n 1 dh.pem
head -n 1 ta.keyТри услова која одређују која датотека вам је потребна
Први услов је размена. Руковање Diffie-Hellman у коначном пољу захтева групу, а директива dh је место где сервер именује параметре за њу. Руковање на елиптичној кривој уопште не захтева ту датотеку, јер је крива сама скуп параметара. Ако ваш сервер договара само ECDHE комплете, DH датотека је мртав терет, а не додатна снага.
Други услов је аутентикација контролног канала, одвојена функција са сопственим материјалом. Датотека tls-auth је заједнички статички кључ који чувају обе стране, употребљен за потписивање пакета контролног канала да неаутентификована страна не би могла ни да заврши руковање. Постоји без обзира на то да ли користите DH у коначном пољу, и нема никакве везе са параметрима групе.
Трећи услов је тајност и расподела. DH параметри могу да се објаве без слабљења сесије, јер се тајне вредности стварају за свако руковање и никада не напуштају стране. Статички кључ не сме да се објави: то су исти бајти на оба краја, сам се не мења и свако ко га има може да створи важеће потписе контролног канала. Ова два одговора воде ка сасвим различитим правилима поступања, и зато једна датотека може да стоји у складишту, а друга не.
Створите правилан материјал за сваку улогу
Користите алат који ствара формат који директива очекује, уместо да претварате између њих. За заједнички кључ на OpenVPN 2.6, типизирани облик генератора експлицитно наводи сврху.
openvpn --genkey tls-auth ta.keyТа команда ствара нов тајан материјал; не поправља и не прегледа постојећи кључ, а поновно покретање даје вам други кључ који друге стране немају. Копирајте добијену датотеку странама којима је потребна кроз канал који бисте користили за сваку заједничку тајну, и држите конвенцију смера доследном: са tls-auth једна страна користи key-direction 0, а друга key-direction 1.
DH параметри, када су потребни, долазе из генерисања параметара, а не из генератора кључева, и њихово порекло је важно и када је излаз јаван. Група извучена из непознатог извора не постаје поуздана зато што је јавна; она и даље мора бити група око које се ваше стране слажу и која није ослабљена својом величином или конструкцијом.
Шта значи dh none и шта не значи
dh none је права директива са уским значењем: ниједна датотека параметара коначног поља неће бити учитана, јер руковање користи Diffie-Hellman на елиптичној кривој. Није скраћеница за „прескочи корак DH“ у смислу слабљења било чега, и сигурно не каже OpenVPN да прихвати неку другу датотеку као замену.
Две грешке произлазе из погрешног читања. Прва је претпоставка да dh none уклања потребу за tls-auth, а оба управљају различитим стварима. Друга је држање застареле линије dh поред конфигурације само са кривом и затим питање која датотека сервер заиста користи; ако је директива присутна, датотека се чита, а покварена путања тамо руши покретање из разлога неповезаног са разменом која ће се договарати.
Ако је погрешна датотека већ распоређена
Вратите предвиђену тајну од власника профила и не дирајте проверу сертификата док то радите. Неуспех је неподударност формата, не неуспех поверења, а искључивање провере да бисте прешли грешку замењује проблем при покретању тихим проблемом.
Затим одвојите два догађаја која људи имају обичај да спајају. Објављивање DH датотеке параметара је готово безопасно, јер су параметри били јавни по дизајну. Откривање кључа tls-auth је други догађај: кључ аутентификује пакете контролног канала за сваку страну која га чува, па замена мора да се координира кроз цело распоређивање, а не да се примени на једном домаћину.
Провера од пет минута решава у ком сте случају: прочитајте први ред сваке датотеке, потврдите директиву која на њу упућује и потврдите да расподела датотеке одговара ономе што материјал захтева. То је мањи посао од поновног стварања радне PKI, и управо ка томе су три услова указивала све време.