Екі OpenVPN сертификаты, бір CCD атауы: не дұрыс болмады
Сериялық нөмір тек өз эмитентінің ішінде ғана бірегей, ал OpenVPN CCD файлын атауы бойынша таңдайды. Осы тиімді атауды тіркеу кезінде резервтеңіз және жаңартуды бақылаңыз.
Әртүрлі сериялық нөмірлері, әртүрлі кілттері және тіпті әртүрлі толық субъектілері бар екі клиент сертификаты бір саясат файлына келуі мүмкін, өйткені сервер солардың ешқайсысына қарамайды. Ол сертификаттан атауды оқып, сәйкес клиент конфигурациясының файлын ашады. Егер екі сертификат та бірдей атауды алып жүрсе, екіншісі қосылған сәтте біріншісінің саясатын мұраға алады.
Қақтығыс тіркеу кезінде пайда болады және тек қосылу кезінде анықталады, әдетте құрылғы басқа машинаға тиесілі мекенжайды немесе маршруттар жиынтығын алғанда. Оны болдырмау үшін сервер қай өрісті салыстыратынын келісіп, содан кейін бірдеңеге қол қойылмай тұрып сол мәнді резервтеу керек.
Сертификат құралдары сізді ескертпейді, өйткені X.509 ішіндегі бірегейлік пен OpenVPN саясаты атауының бірегейлігі әртүрлі жүйелер қолданатын әртүрлі талаптар.
Сервер атауды іздейді, саусақ ізін емес
Сертификатқа негізделген әдеттегі сәйкестендіруде сервер ұсынылған сертификаттан ортақ атауды алып, өзінің клиент конфигурациясы каталогынан сол атаудағы файлды іздейді. Бұл файл статикалық мекенжайды бекіте алады, маршруттарды жібере алады немесе әр клиент үшін файрвол белгілерін қолдана алады. Іздеу файл атауымен жолдық сәйкестік, сондықтан әріп регистрі, бос орындар және тыныс белгілері де маңызды.
Кейбір орналастырулар салыстыруды әдейі ауыстырып, аутентификацияланған пайдаланушы атауы ортақ атаудың орнын алады, сонда бірегей болуы керек нәрсе — пайдаланушы атауы. Қалай болғанда да, саясатты таңдайтын мән — сіз резервтейтін мән. Бірдеңе шығармас бұрын қайсысы екенін шешіңіз; қақтығыстан кейін болжау сұраудан қымбат.
Екі орган бір атауға келетін жер
Бірнеше эмитент органның сертификаттарын қабылдайтын ұйым бір атау кеңістігіне жазатын екі тәуелсіз тіркеу процесін жүргізеді. Әр органның өз бірегейлік ережелері оның ішінде қолданылады, сондықтан екеуі де бірдей ортақ атауға заңды түрде бере алады және ешқайсысы қателікті байқамайды.
Сериялық нөмірлер көмектеспейді. X.509 сериялық нөмірдің өз эмитентінің шегінде бірегей болуын талап етеді, бұл сол органның есебінің қасиеті, құрылғының жаһандық бірегейлігі емес. Субъектіні тексеру де ортақ атауды тексеруден басқа сынақ: екі сертификат CN-ді бөлісе алады, бірақ ұйымдық бірлікте ерекшеленеді және сол себепті өзгеше субъектілер алып жүреді. Осы қасиеттердің әрқайсысы орындала тұрып, сервер екі сертификатты да бір файл атауына сәйкестендіре береді.
OpenSSL CA құжаттамасы өз дерекқорының пікірін басқаратын unique_subject параметрін қамтиды, ал адал бастау нүктесі — белгілі бір EasyRSA немесе OpenSSL әдепкі мәні қолданылады деп болжамдаудың орнына өз эмитент конфигурацияңызды оқу.
Қол қоюдан бұрын тиімді атауды резервтеңіз
Құрылғыны оның бекітілген жазбасына, одан әрі нақты саясат файлының атауына сәйкестендіретін тізілім жүргізіңіз, осылайша атау бір рет бөлінеді және бөлінген күйінде қалады. Резервтеу атомды болуы керек, бұл іс жүзінде бөл-сосын-қол қой қадамын қоршайтын дерекқор шектеуі немесе құлып деген сөз, екі адам өңдейтін кесте емес.
Содан кейін тексеруді шығарудың бөлігі етіңіз: сұралған атау бұрыннан бар болса, қол қоюдан бас тартыңыз және бұл тексеруге сервер сенетін әрбір органды қосыңыз, өйткені басқа орган резервтеген атау да сол дәрежеде алынған. Айқын себебі бар қабылданбаған сұраныс басқа біреудің статикалық мекенжайын үнемі алып жатқан құрылғы туралы билеттен арзан.
Жаңарту атауды әдейі қайта пайдаланады
Бар құрылғы үшін қайта шығару сол саясат атауының астында жаңа сериялық нөмір беруі керек, және бұл қақтығыс емес, заңды қайта пайдалану. Алдын ала шешу керек нәрсе — қабаттасу: ескі мен жаңа сертификат бір уақытта жарамды бола ала ма, және ескі сенімхат қалай шығарылады.
Мұны шешу үшін duplicate-cn параметріне жүгінбеңіз. Бұл сервер параметрі бірдей атауды ұсынатын қатар жүрген қосылымдарды басқарады; ол тіркеуді құлыптамайды және оны қосу бір ортақ статикалық мекенжайды бір уақытта екі машина үшін қауіпсіз етпейді. Кері қайтару әдетте сертификатты эмитент пен сериялық нөмір бойынша анықтайды, сондықтан ескі сенімхатты шығару оның алмастырғышын жарамсыз етуі міндетті емес, сервер дұрыс кері қайтару деректерін алып, қолданса болғаны.
Сәйкестендіруді машинадағы құралдармен растаңыз
Құрылғыға жаңа сенімхатын бермес бұрын, атауды сервер оқитын тәсілмен сертификаттан оқыңыз, содан кейін оны таңдалады деп күткен саясат файлымен салыстырыңыз.
openssl x509 -in device42.crt -noout -subject -nameopt sep_multiline
ls -l /etc/openvpn/ccd/device42
grep -n "duplicate-cn" /etc/openvpn/server.conf
Бірінші пәрмен субъект өрістерін бөлек басып шығарады, бұл қаңғыған ұйымдық бірлікті немесе қосарланған бос орынды бірден көрінетін етеді. Екіншісі дәл сол атаумен саясат файлының бар екенін растайды, ал үшіншісі сервердің бір атауда бірнеше сессияға рұқсат беруге конфигурацияланғанын көрсетеді. Қате әлі оқиға емес, қол қоюға тұрарлық кезде, үшеуін де жаңа сертификатқа тіркеу қадамынан шықпай тұрып іске қосыңыз. Шығысты билетпен бірге сақтаңыз, сонда келесі адам серверге шын мәнінде қандай атау берілгенін көреді.
Нақты қосылыммен аяқтаңыз және берілген мекенжай мен жіберілген маршруттарды жазуды ойлағаныңызбен емес, саясат файлымен салыстырыңыз. Егер екі құрылғы бірдей статикалық мекенжай туралы хабарласа, тізілімде ешбір сертификат тексеруі ешқашан ашпайтын қақтығыс бар.