概述
证书管理器作用:
收集路由器内部的所有证书;
管理和创建自签名证书;
控制和设置 SCEP 相关配置;
从 RouterOS 版本 6 开始,证书有效性使用本地时区偏移显示。 在以前的版本中是 UTF。
通用菜单
/certificate
通用菜单用于管理证书、添加模板、颁发证书和管理 SCEP 客户端。
证书模板
执行证书颁发或证书申请命令后,证书模板立即被删除:
/certificate
add name=CA-Template common-name=CAtemp key-usage=key-cert-sign,crl-sign
add name=Server common-name=server
add name=Client common-name=client
打印出证书:
[admin@4k11] /certificate> print detail
Flags: K - private-key; L - crl; C - smart-card-key; A - authority; I - issued, R - revoked; E - expired; T - trusted
0 name="CA-Template" key-type=rsa common-name="CAtemp" key-size=2048 subject-alt-name="" days-valid=365 key-usage=key-cert-sign,crl-sign
1 name="Server" key-type=rsa common-name="server" key-size=2048 subject-alt-name="" days-valid=365
key-usage=digital-signature,key-encipherment,data-encipherment,key-cert-sign,crl-sign,tls-server,tls-client
2 name="Client" key-type=rsa common-name="client" key-size=2048 subject-alt-name="" days-valid=365
key-usage=digital-signature,key-encipherment,data-encipherment,key-cert-sign,crl-sign,tls-server,tls-client
如果删除 CA 证书,则链中所有颁发的证书也将被删除。
签署证书
证书要签名。 在以下示例中,将签署证书并为服务器证书添加 CRL URL:
/certificate
sign CA-Template
sign Client
sign Server ca-crl-host=192.168.88.1 name=ServerCA
检查证书是否已签名:
[admin@MikroTik] /certificate> print
Flags: K - private-key; L - crl; A - authority; T - trusted
Columns: NAME, COMMON-name, FINGERPRINT
# NAME COMMON FINGERPRINT
0 K AT CA-Template CAtemp 0c7aaa7607a4dde1bbf33deaae6be7bac9fe4064ba47d64e8a73dcefad6cfc38
1 K AT Client client b3ff25ecb166ea41e15733a7493003f3ea66310c10390c33e98fe32364c3659f
2 KLAT ServerCA server 152b88c9d81f4b765a59e2302e01efd1fbf11ceeed6e59f4974e87787a5bb980
密钥签名过程的时间取决于特定证书的密钥大小。 如果值为 4k 或更高,则可能需要大量时间才能在基于 CPU 的功能较弱的设备上签署此特定证书。
导出证书
可以使用密钥和 CA 证书导出客户端证书:
/certificate
export-certificate CA-Template
export-certificate ServerCA export-passphrase=yourpassphrase
export-certificate Client export-passphrase=yourpassphrase
导出的证书在 /file 下:
[admin@MikroTik] > file print
Columns: NAME, TYPE, SIZE, CREATION-TIME
# NAME TYPE SIZE CREATION-TIME
0 skins directory jan/19/2019 00:00:04
1 flash directory jan/19/2019 01:00:00
2 flash/rw directory jan/19/2019 01:00:00
3 flash/rw/disk directory jan/19/2019 01:00:00
4 pub directory jan/19/2019 02:42:16
5 cert_export_CA-Template.crt .crt file 1119 jan/19/2019 04:15:21
6 cert_export_ServerCA.crt .crt file 1229 jan/19/2019 04:15:42
7 cert_export_ServerCA.key .key file 1858 jan/19/2019 04:15:42
8 cert_export_Client.crt .crt file 1164 jan/19/2019 04:15:55
9 cert_export_Client.key .key file 1858 jan/19/2019 04:15:55
Let’s Encrypt证书
观看 关于此功能的视频。
RouterOS v7 为“www-ssl”服务提供 Let’s Encrypt (letsencrypt) 证书支持。 要通过自动证书续订启用 Let’s Encrypt 证书服务,请使用“enable-ssl-certificate”命令:
/certificate enable-ssl-certificate dns-name=my.domain.com
请注意,DNS 名称必须指向路由器并且端口 TCP/80 必须可从 WAN 获取。 如果未指定 dns-name,会默认为自动生成的 ip cloud 名称(即 http://example.sn.mynetname.net)