Нясупадзенне імені сертыфіката або сканчэнне тэрміну: як іх адрозніць
Нясупадзенне імені азначае, што сертыфікат выдадзены для чаго-небудзь іншага, а сканчэнне тэрміну азначае, што ён не дзейны зараз. Прачытайце этап, на якім узнікла памылка, перш чым скідваць якія-небудзь уліковыя даныя.
Дзве збоі VPN выглядаюць аднолькава з месца карыстальніка і патрабуюць процілеглых выпраўленняў. Нясупадзенне імені кажа, што сертыфікат дзейны, але выдадзены для чаго-небудзь іншага. Памылка сканчэння тэрміну кажа, што сертыфікат не дзейны ў гэты момант. Ні адна з іх не з'яўляецца праблемай пароля, і скідванне ўліковых даных — самая марна страчаная гадзіна ў абодвух выпадках. Прачытайце этап, на якім узнікла памылка, перш чым нешта кранаць.
Тэкст памылкі — гэта дыягназ
Кліент паведамляе, якая праверка не прайшла, нават калі паведамленне сціплае. Нясупадзенне называе імя хоста, якое чакалася, і імя, якое было знойдзена. Памылка сканчэння тэрміну згадвае даты дзеяння або час. Гэтыя два сказы паказваюць на розныя часткі сертыфіката.
Чытайце іх на тым этапе, дзе яны з'яўляюцца. Збой падчас узгаднення — гэта праблема сертыфіката, а збой пасля ўзняцця тунэля — гэта праблема маршрутызацыі або ўліковых даных. Захаванне этапу не дае расследаванню сысці ў непатрэбныя налады.
Калі збой змяняецца ад спробы да спробы, у вас ёсць трэцяя магчымасць: больш за адзін вузел за адным імем.
Праверкі імені: што параўноўвае кліент
Кліент параўноўвае ідэнтычнасць, якую ён быў настроены чакаць, з імёнамі ў сертыфікаце, якія знаходзяцца ў пашырэнні subjectAltName. Сыры IP у профілі, псеўданім, якога няма ў сертыфікаце, або імя, якое проста рэзалюецца ў той жа сервер, — усе яны не праходзяць гэтую праверку. Дасягнуць патрэбнай машыны — не тое ж самае, што прад'явіць патрэбную ідэнтычнасць.
Аглядзіце сертыфікат, які сервер фактычна прад'яўляе, а не файл ад папярэдняй спробы. Каманда ніжэй запытвае імя, якое вы наладзілі, таму адказ уключае сертыфікат, які ўбачыў бы рэальны кліент.
openssl s_client -connect vpn.example.com:443 -servername vpn.example.com </dev/null 2>/dev/null \
| openssl x509 -noout -subject -dates -ext subjectAltNameСертыфікат ад даверанага выпушчальніка ўсё яшчэ можа быць для іншай паслугі. Трымайце праверкі імён у кліенце ўключанымі, бо давер да CA не дае права на кожнае імя, якое гэты CA калі-небудзь падпісаў. Адключэнне праверкі ператварае памылку канфігурацыі ў пагрозу.
Сканчэнне тэрміну: чый гадзіннік чытаецца
Тэрмін дзеяння — гэта пара момантаў часу, і правяральнік параўноўвае іх з уласным гадзіннікам. Прылада з няправільным гадзіннікам паведамляе пра дзейны сертыфікат як пра пратэрмінаваны або яшчэ не дзейны, і выпраўленне — гэта гадзіннік, а не сертыфікат. Розніца ў адлюстраванні часавага пояса — не тое ж самае, што няправільны базавы час.
Параўнайце даты сертыфіката з UTC на кліенце, перш чым рабіць высновы:
openssl x509 -in cert.pem -noout -dates
date -uКалі даты сапраўды мінулі, абнавіце праз выпушчальніка. Калі замена існуе, але яшчэ не стала дзейнай, выконвайце падтрыманы пераход, а не перасоўвайце гадзіннік, каб пад яго падладкавацца. Перанясенне даты прылады назад, каб задаволіць сертыфікат, — гэта рашэнне з наступствамі далёка за межамі тунэля.
Чаму выпраўленне аднаго выяўляе другое
Праверка выконвае паслядоўнасць крокаў, і першы збой спыняе справаздачу. Выправіце імя — і кліент можа затым сказаць вам, што ланцуг няпоўны або што сертыфікат пратэрмінаваны. Гэта не азначае, што першая праверка была непатрэбнай. Гэта азначае, што ў ланцуга было больш за адну праблему, таму чакайце другой памылкі, а не чытайце яе як доказ таго, што першае выпраўленне было няправільным.
Некалькі вузлоў робяць гэта горш. Сэрвіс з балансаваннем нагрузкі можа прад'яўляць розныя сертыфікаты ад розных членаў, таму тэст, які двойчы праходзіць і адзін раз не, кажа вам пра флот, а не пра вашага кліента. Трымайце адрас суразмоўцы і час спробы ў дыягназе.
Менавіта гэтая дэталь ператварае няўстойлівы тыкет ва ўзнаўляльны.
Дакажыце гэта свежым злучэннем
Пасля выпраўлення адкрыйце новае злучэнне, а не аднаўляйце старое, і пацвердзіце, што этап, які раней збоіў, цяпер праходзіць. Затым пацвердзіце, што тунэль сапраўды перадае трафік, бо паспяховае ўзгадненне — не працоўны маршрут.
Захавайце дакладны этап памылкі і падрабязнасці сертыфіката разам з тыкетам.
Менавіта гэты запіс не дае наступнаму чалавеку скідваць паролі ўліковага запісу з-за праблемы сертыфіката. Ідэнтычнасць і тэрмін дзеяння — асобныя пытанні, і RFC 5280 з'яўляецца даведнікам для таго, як ацэньваецца другое.