...
Настроить на маршрутизаторе PKI-сервер в роли корневого удостоверяющего центра. Клиентские сертификаты должны иметь срок жизни – две недели с момента выпускаВремя жизни сертификата удостоверяющего центра должно быть ограничено одном годом, а время жизни клиентских сертификатов должно быть ограничено двумя неделями.
В качестве начальной конфигурации на маршрутизаторе уже настроен сетевой интерфейс в сторону Интернет-провайдера, прописан шлюз по умолчанию и настроена зона безопасности. Шлюз Интернет-провайдера также может служить источником синхронизации времени по протоколу NTP.
...
Перейдем к настройке PKI-клиента, который будет использоваться в качестве источника самоподписанных сертификатов для PKI-сервера:
| Блок кода |
|---|
ESR.CA(config)# crypto pki servertrustpoint ROOT_CA ESR.CA(config-pki-servertrustpoint)# |
Перейдем в раздел настройки отличительного имени сертификата удостоверяющего центра. Настроим те атрибуты, которые позволят однозначно идентифицировать удостоверяющий центр:
| Блок кода |
|---|
ESR.CA(config-pki-servertrustpoint)# subject-name ESR.CA(config-pki-servertrustpoint-subject-name)# country RU ESR.CA(config-pki-servertrustpoint-subject-name)# state Moscow ESR.CA(config-pkitrustpoint-server-subject-name)# locality Moscow ESR.CA(config-pkitrustpoint-server-subject-name)# organization Company ESR.CA(config-pkitrustpoint-server-subject-name)# common-name ca.company.loc ESR.CA(config-pki-servertrustpoint-subject-name)# exit ESR.CA(config-pki-servertrustpoint)# |
Привяжем PKI-сервер к адресу сетевого интерфейса, смотрящего в сторону Интернет-провайдераПерейдем в раздел настройки альтернативных имен сертификата. Укажем в качестве альтернативных имен IP-адрес и полное доменное имя:
| Блок кода |
|---|
ESR.CA(config-pki-servertrustpoint)# source-interface gi 1/0/1.103subject-alt-name ESR.CA(config-trustpoint-san)# ipv4 10.0.103.2 ESR.CA(config-pkitrustpoint-server)# |
Зададим challenge-password, для корректного обращения к удостоверяющему центру PKI-клиенты должны использовать правильный challenge-password.
| Блок кода |
|---|
san)# dns ca.company.loc ESR.CA(config-pkitrustpoint-serversan)# challenge-password StR0nnGP+ssexit ESR.CA(config-pki-servertrustpoint)# |
Зададим время жизни выписываемых клиентам Перейти в режим настройки механизма выпуска сертификата. Для PKI-клиента, выпускающего самоподписанные сертификаты укажем тип "selfsigned". В нем настроим время жизни самоподписанных сертификатов:
| Блок кода |
|---|
ESR.CA(config-pki-servertrustpoint)# lifetimeenrollment selfsigned 14 ESR.CA(config-pkitrustpoint-enrollment-serverselfsigned)# |
Включим PKI-сервер:
| Блок кода |
|---|
lifetime 365 ESR.CA(config-trustpoint-pkienrollment-serverselfsigned)# enable exit ESR.CA(config-pki-servertrustpoint)# exit ESR.CA(config)# |
Укажем назначение генерируемых сертификатов. Для PKI-клиента, используемого в настройках PKI-сервера в качестве источника самоподписанных сертификатов необходимо указать значение "root-ca"Добавим пару зон безопасности и правило, разрешающее прохождение входящего на PKI-сервер трафика:
| Блок кода |
|---|
ESR.CA(config-trustpoint)# securityusage zoneroot-pair WANca self ESR.CA(config-trustpoint)# |
Включим PKI-клиент:
| Блок кода |
|---|
security-zone-pair)# rule 10 ESR.CA(config-security-zone-pair-ruletrustpoint)# description "Allow access to PKI-server from WAN"enable ESR.CA(config-security-zone-pair-ruletrustpoint)# match protocol tcpexit ESR.CA(config-security-zone-pair-rule)# |
Перейдем к настройке PKI-сервера:
| Блок кода |
|---|
ESR.CA(config)# matchcrypto destination-port port-range 80pki server ESR.CA(config-security-zone-pair-rule)# match destination-address address-range 10.0.103.2 pki-server)# |
Укажем имя раннее настроенного PKI-клиента, который будет использоваться в настройках PKI-сервера как источник самоподписанных сертификатов:
| Блок кода |
|---|
ESR.CA(config-security-zone-pair-rulepki-server)# actiontrustpoint permitROOT_CA ESR.CA(config-security-zone-pair-rule)# enable pki-server)# |
Привяжем PKI-сервер к адресу сетевого интерфейса, смотрящего в сторону Интернет-провайдера:
| Блок кода |
|---|
ESR.CA(config-security-zone-pair-rulepki-server)# exitsource-interface gi 1/0/1.103 ESR.CA(config-security-zone-pair)# exit-pki-server)# |
Зададим challenge-password, для корректного обращения к удостоверяющему центру PKI-клиенты должны использовать правильный challenge-password.
| Блок кода |
|---|
ESR.CA(config-pki-server)# challenge-password StR0nnGP+ss ESR.CA(config-pki-server)# |
| Scroll Pagebreak |
|---|
Применим конфигурацию на маршрутизатореВключим PKI-сервер:
| Блок кода |
|---|
ESR.CA(config-pki-server)# end Warning: you have uncommitted configuration changes.enable ESR.CA# commit Configuration has been successfully applied and saved to flash. Commit timer started, changes will be reverted in 600 seconds. ESR.CA# confirm Configuration has been confirmed. Commit timer canceled. ESR.CA# CA(config-pki-server)# exit ESR.CA(config)# |
Добавим пару зон безопасности и правило, разрешающее прохождение входящего на PKI-сервер трафика:
| Блок кода |
|---|
ESR.CA(config)# security zone-pair WAN self
ESR.CA(config-security-zone-pair)# rule 10
ESR.CA(config-security-zone-pair-rule)# description "Allow access to PKI-server from WAN"
ESR.CA(config-security-zone-pair-rule)# match protocol tcp
ESR.CA(config-security-zone-pair-rule)# match destination-port port-range 80
ESR.CA(config-security-zone-pair-rule)# match destination-address address-range 10.0.103.2
ESR.CA(config-security-zone-pair-rule)# action permit
ESR.CA(config-security-zone-pair-rule)# enable
ESR.CA(config-security-zone-pair-rule)# exit
ESR.CA(config-security-zone-pair)# exit
ESR.CA(config)# |
| Scroll Pagebreak |
|---|
Применим конфигурацию на маршрутизаторе:
| Блок кода |
|---|
ESR.CA(config)# end
Warning: you have uncommitted configuration changes.
ESR.CA# commit
Configuration has been successfully applied and saved to flash. Commit timer started, changes will be reverted in 600 seconds.
ESR.CA# confirm
Configuration has been confirmed. Commit timer canceled.
ESR.CA# |
В результате получим запущенный корневой удостоверяющий центр, готовый к обслуживанию клиентских запросов.
В команде show crypto pki trustpoints увидеть PKI-клиент ROOT_CA, готовый к работе, а добавив его имя в конце команды можно более подробно рассмотреть его текущий статус:
| Блок кода |
|---|
ESR.CA# show crypto pki trustpoints
Name Enrollment Usage Subject name Status Next action
--------------- ---------- ------- ------------------------------ ------------------ --------------------
ROOT_CA selfsigned root-ca CN=ca.company.loc/O=Company/L= Ready 2026-12-17 08:59:16
Moscow/ST=Moscow/C=RU
ESR.CA# show crypto pki trustpoints ROOT_CA
Name: ROOT_CA
Usage: root-ca
Subject name: CN=ca.company.loc/O=Company/L=Moscow/ST=Moscow/C=RU
Enrollment: selfsigned
Status: Ready
Renew date: 2026-12-17 08:59:16
CRL: Inactive
ESR.CA# |
В В результате получим запущенный корневой удостоверяющий центр, готовый к обслуживанию клиентских запросов. В команде show crypto pki server можно увидеть fingerprint сертификата удостоверяющего центра, который необходимо использовать в клиентах PKI совместно с установленным challenge-password для корректной авторизации:
| Блок кода |
|---|
ESR.CA# show crypto pki server Status: Enabled Associated trustpoint: ROOT_CA Lifetime days: 14 Certificate fingerprint: 79A2:D20C:B610:7EC7:DF0E:7706:2D3A:C52F:27EE:685F:99C2:1072:BA39:EC36:D231:470A Source: gigabitethernet 1/0/110.0.103.2 Last issued serial number: -- Challenge password: Active Active Shadow: Inactive ESR.CA# |
Настройка PKI-клиента
...
