Сертификаттарды P12-ден жеке кілтсіз экспорттау
PKCS12 пакеті кілттер мен сертификаттарды бірге сақтайды. Алдымен құрылымды оқып шығыңыз, содан кейін қорғанысты алып тастаудың орнына сертификаттарды -nokeys арқылы таңдаңыз.
Қолдау сұранысы VPN пакетінің ішінде қай сертификат бар екенін сұрайды, ал бірінші түйсік — бәрін экспорттап, тіркеу. P12 файлы сертификаттар мен жеке кілт материалын бір контейнерге қаптайды, сондықтан бәрін экспорттау — жібермеу керек нәрсенің дәл өзі. Сұраққа жауап беретін команда таңдау мәселесі, түрлендіру мәселесі емес. Төрт жалауша контейнердің қай жартысын алатыныңызды шешеді және олардың екеуі шын мәніндегіден қауіпсіздеу естіледі.
Контейнерді босатудың орнына оны оқудан бастаңыз.
PKCS12 файлы шын мәнінде не сақтайды
PKCS12 контейнері бір немесе бірнеше сертификатты, мүмкін жеке кілтті және мазмұн үстіндегі message authentication code-ты сақтайды. Сертификаттар клиенттік сәйкестілігіңіздің жапырақ сертификатын және оны CA-мен тізбектейтін аралық сертификаттарды қамтуы мүмкін. Кілт, бар болғанда, файлды құжат емес, құпия ететін нәрсе.
Бұл айырмашылық -nokeys-ның болуының және бұл тапсырмаға дәл осы жалаушаның қажет болуының себебі.
Пакетті кілтті жазбай оқыңыз
Тексеру нысаны құрылым мен алгоритм мәліметтерін басып шығарады және ештеңе жазбайды: openssl pkcs12 -in client.p12 -info -noout. Ол импорт құпиясөзін сұрайды, бұл сол мән үшін дұрыс орын, және файлда жалпы кілт бар-жоғын айтады. Құпиясөзді теру мүмкін болмаса -passin env:PKCS12_PASS пайдаланыңыз, өйткені shell командасының ішіндегі құпиясөз — процестер тізіміндегі құпиясөз. Бұл қадам ештеңе экспорттамайды және бүкіл мән сол.
Шығысты үш нәрсе үшін оқыңыз: қанша сертификат, кілт бар ма және оны қандай алгоритмдер қорғайды.
-nokeys пайдаланыңыз және оны -nocerts-пен шатастырмаңыз
-nokeys жеке кілттерді алып тастайды және сертификаттарды қалдырады. -clcerts мұны клиент сертификаттарына дейін тарылтады, -cacerts CA сертификаттарына дейін тарылтады, және бұл екеуі балама емес, сүзгі. -nocerts сол идеяның қауіпсіз жазылуы сияқты оқылады және керісінше білдіреді: сертификат жоқ, бұл тек кілттерді қалдырады. Оны сертификат экспортына араластыру — жеке кілттің дискіге түсу жолы.
Сертификат файлы мен CA файлын және басқа ештеңе шығармайтын екі жолды нысан мынадай:
openssl pkcs12 -in client.p12 -nokeys -clcerts -out client-certificates.pem
openssl pkcs12 -in client.p12 -nokeys -cacerts -out ca-certificates.pemЕскі пакеттер өздерінің ескі шифрлауын оқу үшін OpenSSL 3-те -legacy қажет етеді және бұл жалауша парсердің нені қабылдайтынын өзгертеді, нені шығаратынын емес. Егер талдау қолдау көрсетілмейтін алгоритм қатесімен сәтсіз аяқталса, -legacy қосу дұрыс бірінші қадам, ал MAC тексеруін өткізіп жіберу олай емес.
Шығысты тексеріңіз, шығу кодын емес
Нөлдік шығу мәртебесі команданың орындалғанын айтады, файл күткеніңізді сақтайтынын емес. Шығыстағы сертификаттарды санап, subject және күндерді оқыңыз: openssl x509 -in client-certificates.pem -noout -subject -dates -fingerprint. Саусақ ізін қолдау тобы күтетінмен салыстырыңыз, өйткені екі клиент сертификаты бар пакет екі блокты файл шығарады және көптеген құралдар тек біріншісін оқиды. Мақсат, сенім және кілт сәйкестігі қайтадан жеке тесттер.
Талдауға келетін сертификат — талдауға келетін сертификат. Бұл VPN қабылдайтын сертификат емес.
Жалпы файлдар керек пе, жоқ па — шешіңіз
Егер қабылдаушы клиент PKCS12-ні тікелей импорттаса, түпнұсқа пакетті құпиясөзді бөлек ұстап, мақұлданған арна арқылы жіберу қарапайым және қорғанысты сақтайды. Шығарып алу тексеруге, PEM қажет клиентке немесе нақты артефакт сұраған қолдау жағдайына арналған. Әр шығарып алу бір қабатты алып тастайды және себебі болуы керек.
Ашық сертификаттар жеке кілтті сақтамайды, бірақ атаулар мен ұйым мәліметтерін сақтайды. Файлдың орнына сұраныс сұраған өрістерді бөлісіңіз, егер дәл файл сұралмаған болса.