OpenVPN ішінде dh none параметрімен RSA сертификаты жұмыс істей ала ма?
Сертификат түрі мен кілт алмасу тобы — TLS-тің екі бөлек таңдауы. RSA сертификаты ECDHE қол алысуды аутентификациялай алады, сондықтан dh none EC сертификаттарын қажет етпейді.
Міне, RSA деп жазылған сертификаттың жанында dh none деп көрсетілген сервер конфигурациясы, қоса алғанда, екеуінің бірі міндетті түрде қате деген мазалайтын күдік. Ешнәрсе қате емес. Сертификат қол қояды және аутентификациялайды; кілт алмасу ортақ құпия орнатады. Бұл бір қол алысудың ішіндегі екі түрлі жұмыс, және TLS RSA сертификатына уақытша эллиптикалық қисық келісімін пайдаланатын қол алысуды аутентификациялауға мүмкіндік береді.
Шатасу әдетте көшіру нұсқаулығымен бірге келеді. Онда DH параметрлер файлын dh none-мен ауыстыру керек делінген, оқырман сертификаттың эллиптикалық қисық сертификаты емес екенін байқайды, және екі факт қайшылық ретінде қарастырылады.
Неге екі параметр байланысты болып көрінеді
OpenVPN-нің ескі конфигурациясы DH параметрлер файлын талап етті, себебі ақырлы өріс Diffie-Hellman екі жақ келісетін домен параметрлерін қажет етеді. dh директивасы сол файлға нұсқайтын. Орналастыру ECDH-ға көшкенде, параметрлер оның орнына аталған қисықтан келеді, және файл енді қажет емес, мұны dh none білдіреді.
Сертификаттар — бөлек ось. Олар сервердің жеке басын дәлелдейтін ашық кілт пен қолтаңбаны тасымалдайды, және бұл кілт сеанс кілті қалай келісілгеніне қарамастан RSA немесе эллиптикалық қисық болуы мүмкін. Кілт келісімі үшін ECDHE, аутентификация үшін RSA пайдаланатын қол алысу кәдімгі және кең таралған.
Атау қабаттасуды нашарлатады. Эллиптикалық қисық ECDHE және ECDSA жиынтық атауларының екеуінде де кездеседі, сондықтан қисықты атайтын кез келген қосылымда қисық сертификаты болуы керек деп ойлау оңай. Бұлай емес.
TLS 1.2 жиынтық атауын дұрыс оқу
ECDHE-RSA-AES256-GCM-SHA384 алыңыз. Бірінші токен — кілт алмасу тобы: уақытша эллиптикалық қисық Diffie-Hellman. Екіншісі — аутентификация тобы: RSA. Қалғаны жазба қорғанысын және қол алысуда пайдаланылатын хэшті сипаттайды.
ECDHE-ECDSA жиынтығы сол кілт алмасу тобын басқа аутентификация әдісімен пайдаланады, сондықтан оған эллиптикалық қисық сертификаты қажет. DHE-RSA жиынтығы RSA аутентификациясымен ақырлы өріс уақытша Diffie-Hellman пайдаланады, және оған шынымен DH параметрлері қажет.
Жиынтық атауын солдан оңға оқып, әр бөлікті өз жұмысына тағайындаңыз. Токендер бөлінгеннен кейін сұрақ «менің сертификатым dh none-ға сәйкес пе» дегеннен «менің серверім кілт алмасуы DH файлын қажет етпейтін жиынтыққа рұқсат бере ме» дегенге өзгереді.
dh none нақты нені өшіреді
dh none серверге ақырлы өріс DH параметрлер файлын жүктемеуді айтады. Ол аутентификацияны, сертификатты тексеруді немесе TLS-тің өзін өшірмейді. Бірақ ол келісілген кілт алмасудың сол параметрлерді қажет етпейтінін талап етеді, бұл іс жүзінде ECDHE жиынтығын немесе TLS 1.3 қол алысуын білдіреді.
Дәл осы талаптан бұзылу шығады. Егер сервердің TLS шифрлау саясаты DHE жиынтықтарымен шектелсе немесе клиент тек соларды ұсынса, параметрлер файлын жою қолданылатын кілт алмасу әдісін қалдырмайды және қол алысу сәтсіз аяқталады. Қате әдетте басқару арнасының қол алысуы кезінде, кез келген пайдаланушы аутентификациясына дейін пайда болады. Жоқ файлды кінәламас бұрын шифрлар тізімін оқыңыз.
Эллиптикалық қисық жағында қисықты сервердің TLS конфигурациясы таңдайды, және OpenVPN ескі тармақтарда оны таңдау мүмкіндігін ұсынады. TLS 1.3 топ келіссөзін протоколдың ішінде жүргізеді және DH файлына мүлде жүгінбейді.
dh none өздігінен қауіпсіздіктің төмендеуі емес. Алмасудың күші содан кейін нақты келісілген қисық пен жиынтыққа байланысты, сондықтан келесі қадам жоқ файлға емес, тараптардың нені таңдағанына қарау.
Өңдеу алдында келіссөзді растау
Сервер мен клиенттің егжей-тегжейлілігін арттырып, қосылымнан кейін OpenVPN басып шығаратын басқару арнасының жолын оқыңыз. Ол TLS нұсқасы мен келісілген шифрды атайды және серіктес сертификатының кілт түрін хабарлайды. Сол бір жол конфигурация файлы тек меңзейтін сұраққа жауап береді.
Егер ол TLS 1.2-ні ECDHE-RSA жиынтығымен және RSA сертификатымен көрсетсе, комбинация дәл dh none күткендей, және түзететін ештеңе жоқ. Егер DHE жиынтығын немесе ортақ шифрсыз қол алысу сәтсіздігін көрсетсе, түзету шифрлау саясатында немесе клиент мүмкіндіктерінде, сертификатта емес.
Қолдау көрсетпекші ең ескі клиентті сынаңыз, өйткені ағымдағы клиент TLS 1.3-ке келісе алады, ал ескісі TLS 1.2 жиынтықтарымен шектелген. Ең ескі клиентте қабаттасу болмаса, рұқсат етілген жиынтықтарды кеңейтіңіз немесе сол соңғы нүктені жаңартыңыз.
Қол алысу сәтсіздігін айналып өту үшін сертификатты тексеруді өшірмеңіз. Сәтсіздік тараптардың кілт алмасу туралы келісе алмағанын айтады, ал тексеруді өшіру келісімді шешпей идентификация кепілдігін алып тастайды.
Тексеру парағы: сертификат RSA ма, ECDHE жиынтығына рұқсат етілген бе, журнал сол жиынтықты көрсете ме, және ең ескі қолдау көрсетілетін клиент те оған келісе ме? Төртеуі де иә болса, dh none өз жұмысын істеп жатыр.