VPN сертификаты али жарактуу эмес: үч себеп, бир текшерүү тартиби
«Али жарактуу эмес» түзмөктүн сааты артта калганын, терезе чындап кечирээк башталарын же орто сертификат али ачыла электигин билдирет. Аларды ушул тартипте текшериңиз.
Клиентти ачасыз, айлар бою колдонгон профилди тандайсыз, ал "certificate is not yet valid" билдирүүсү менен токтойт. Кирүүңүздө эч нерсе өзгөргөн жок, ишеним кампасы да, балким, тартипте: кол кармашууда сунушталган сертификатта текшерүүчү колдонгон учурдан кийин башталган жарактуулук терезеси бар. Так ушул билдирүүнү үч түрдүү кырдаал жаратат жана алар ар башка аракеттерди талап кылат. Төмөнкү тартип саатка же сертификат файлына тийишпестен мурун кайсынысы экенин айтат.
Үч себептин кайсынысын көрүп жатасыз
Биринчи себеп жергиликтүү: текшерүүнү аткарган түзмөктүн сааты сертификаттын башталган күнүнөн эрте. Муну CMOS батареясы өлгөн техникада, эски сүрөттөн калыбына келтирилген виртуалдык машиналарда, убакытты жоготуу үчүн жетиштүү узак өчүк турган түзмөктөрдө жана чыгуучу NTP блоктолуп, эч ким байкабаган тармактарда көрөсүз. Сертификат толук жарактуу болуп, ошентсе да ушундай жол менен ишке ашпай калышы мүмкүн.
Экинчи себеп чыгаруучуга таандык, анткени сертификат чындап эле келечекте башталат: эрте чыгарылган, так башталуу убактысы менен түзүлгөн же али аткарыла элек активдештирүү кадамынын бөлүгү катары кол коюлган. Үчүнчү себеп эң көп убакытты текке кетирет, анткени жалбырак учурдагы, ал эми сунушталган тизмектеги башка сертификат андай эмес, ошондуктан ката сиз эч качан орнотпогон материалды атайт.
Аларды бир суроо ажыратат. Ишке ашпоо түзмөктүби же кызматтыбы ээрчийт? Бир тармактагы ар башка жүрүм-турумдагы эки машина сааттарды көрсөтөт. Эгер ар бир клиент бирдей ишке ашпай калса, бул сертификаттын терезесин жана анын артындагы тизмекти көрсөтөт.
Терезени чындап сунушталган сертификаттан окуңуз
Мурунку жайгаштыруудан калган PEM файлын текшербеңиз; кызматтан азыр жиберип жаткан тизмекти сураңыз. openssl s_client -connect vpn.example.com:443 -servername vpn.example.com -showcerts тизмектеги ар бир сертификатты басып чыгарат. Керектүү блокту сактап, openssl x509 -noout -subject -issuer -dates иштетиңиз; акыркысы notBefore жана notAfter басып чыгарат, чечимди ошол эки маани кабыл алат. Windows'то туташуунун сертификат диалогу жана экспорттолгон файлдагы certutil -dump ошол эле талааларды көрсөтөт.
Терезенин эки четине окуңуз, башталышына гана эмес. Эки сааттан кийин ачылган сертификат жана эки сааттан кийин жабылган сертификат ар башка билдирүүлөр менен ишке ашпайт жана ар башка командаларды тартат. Ката кайсы сертификатты атайт — жалбырак, орто же тамыр — белгилеңиз, анткени бул клиент тарапта бир нерсени оңдоого болобу-жокпу аныктайт.
Терезени күтпөстөн да сынап көрсөңүз болот. Текшерүү так убакытты кабыл алат: openssl verify -attime 1793600000 -CAfile ca.pem -untrusted intermediate.pem leaf.pem тизмекти ошол убакыт белгисинде баалайт. Ишке ашпоону кайталоо үчүн аны учурдагы убакыт менен, анан терезе ачылгандан кийин ошол эле тизмектин өтөрүн ырастоо үчүн сертификаттын башталуу убактысы менен иштетиңиз. RFC 5280 жарактуулук талаасын жана сертификатты анын сыртында колдонууга болбойт деген эрежени аныктайт, клиентиңиз дал ошол эрежени жаңы эле колдонду.
Сиздин саатыңызбы же алардыкыбы
Түзмөктүн саатын сертификаттын UTC боюнча башталышы менен, ишенген булагыңыздан салыштырыңыз. date -u учурду берет, ал эми systemd хостунда timedatectl status саат синхрондоштурулганын да билдирет. Windows'то w32tm /query /status учурдагы булакты жана акыркы ийгиликтүү синхрондоштурууну көрсөтөт. Шилтемеде көрсөтүлгөн убакыт алкагы көрсөтүү тандоосу, туура эмес саат эмес; текшерүүчү UTC учурларын салыштырат.
| What you see | Most likely reading | Next step |
|---|---|---|
| Clock behind, one device affected | Local time fault | Resync time, keep validation on, retest |
| Clock correct, window opens soon | Certificate staged early | Wait for the window or follow the cutover plan |
| Clock correct, intermediate not yet valid | Chain material mismatch | Operator replaces the intermediate |
| Some peers pass, others do not | Inconsistent nodes | Record each peer's chain before changing anything |
Эгер саат артта калса, кандайдыр бир сертификат материалын өзгөртүүдөн мурун кайра синхрондоштуруп, кайра сынаңыз. Бир нече мүнөт же саат ката болгон түзмөк кездешкен ар бир жакында чыгарылган сертификатты четке кагат, бир кызматты гана эмес, ошондуктан бир кызмат менен түшүндүрүү адатта туура эмес. Эгер саат туура жана синхрондоштурулган болсо, түзмөккө кароону токтотуңуз: терезе чыгаруучуга таандык жана анын өтүшү үчүн эч кандай жергиликтүү жөндөө өзгөртүлбөшү керек.
Ошол таблица — бүт чечим. Саатты сертификат күткөн мааниге жылдыруу оңдоо эмес, убакыт текшерүүлөрүн өчүрүү да оңдоо эмес, анткени экөө тең катаны жараткан абалды жашырат.
Жалбырак жакшы көрүнгөндө тизмек эмне үчүн ишке ашпайт
Жаңыртылган жалбырактар жана алмаштыруучу орто сертификаттар адатта чогуу жөнөтүлөт жана ар дайым бир учурда жетпейт. Кызмат өзүнүн терезеси кечирээк башталган орто менен кол коюлган жаңы жалбыракты жибериши мүмкүн, же жаңы жалбырактын астында эскирээк ортолукту сунуштоону уланта алат. Эки учурда тең жалбырактын өз күндөрү акылга сыярлык көрүнгөндө тизмек ишке ашпайт.
Жүктү теңдештирилген чектик чекиттер муну бузуктан ыраатсызга айландырат. Кайра аракет ийгиликтүү болсо, же бир тармак иштеп, экинчиси иштебесе, жөндөөлөрдү өзгөртүүдөн мурун кайсы өнөктөш жооп бергенин жана кайсы тизмекти жибергенин жазып алыңыз. openssl s_client туташкан даректи басып чыгарат, ошондуктан бир нече аракет ар бир түйүндүн ошол эле тизмекти сунуштаарын ачып берет.
Текшерүүнү бузулбаган бойдон сактаган оңдоо жолдору
Саат маселеси түзмөктө текшерүү күйүк туруп оңдолот. Сертификат маселесин оператор азырды камтыган терезе үчүн чыгарылган материал менен оңдойт. Эч бир клиент жөндөөсү али жараксыз сертификатты жарактуу кылбайт; убакыт текшерүүлөрүн өткөрүп жиберген желегичтер диагностиканы ырастоо үчүн бар, аларды өндүрүшкө чыгаруу үчүн эмес.
Сертификат пландалган активдештирүү үчүн даярдалганда, өтүү планын аткарыңыз. Терезеси ачылганда орнотуңуз же жеткирүүчү документтештирген кабатташуу жол-жобосун колдонуңуз, эрте орнотуп, колдонуучуларды эскертүүлөрдү басып өтүүгө үйрөтүүнүн ордуна. Адамдар этибарга албоону үйрөнгөн эскертүүлөр кыска кечигүүдөн кымбат турат.
Акырында, ишке ашпоо кандай болсо, ошондой кайра сынаңыз: жаңы сессия, ошол эле клиент, чындап керектүү ресурс. TLS китепканалары текшерилген тизмекти туташуунун бүт өмүрүнө кэштеши мүмкүн, ал эми уланган сессия аны сөзсүз кайра текшербейт, ошондуктан эски сессия оңдоодон кийин да ишке ашпай калышы же регрессиядан кийин да иштеши мүмкүн. Көрүүчүдө ачылган файл файлдын окуларын гана далилдейт; аяктаган кол кармашуу тизмектин жарактуу экенин далилдейт.
Билетти жаппастан мурун төрт нерсени ырастаңыз: ишке ашпаган түзмөктүн UTC убактысы жана синхрондошуу абалы, сунушталган тизмектеги ар бир сертификаттын notBefore жана notAfter мааниси, экинчи клиенттен ошол эле тизмек жана катанын сертификатка берген аты. Эгер саат туура болуп, терезе али ачылбаса, калганы оператордун иши, ал эми сиз тараптан туура кадам текшерүүнү алсыратуу эмес, терезени күтүү.