Falcon Momot Asked: 2021-02-11 20:17:08 +0800 CST2021-02-11 20:17:08 +0800 CST 2021-02-11 20:17:08 +0800 CST 如何为 Mikrotik 路由器生成 SSHFP 记录? 772 我想为运行 RouterOS 6.47.4 的 Mikrotik CCR2004 生成 SSHFP 记录,而无需通过网络获取密钥。如何从控制台执行此操作? ssh mikrotik dane 1 个回答 Voted Best Answer Falcon Momot 2021-02-11T20:17:08+08:002021-02-11T20:17:08+08:00 如果需要,重新生成主机密钥(例如,如果更改模数长度): ip ssh regenerate-host-key CLI 将挂起片刻。当它回来时: ip ssh export-host-key file print 你会得到类似的东西: [admin@MikroTik] > file print # NAME TYPE SIZE CREATION-TIME 0 hostKey_rsa file 3272 jan/03/1970 18:35:53 1 hostKey_rsa.pub ssh key 796 jan/03/1970 18:35:53 2 hostKey_dsa file 668 jan/03/1970 18:35:53 3 hostKey_dsa.pub ssh key 604 jan/03/1970 18:35:53 打印你想要的: file print detail where name=hostKey_rsa.pub 删除打印密钥开头的多余空格,并将其放在一个文件中,例如 router_pubkey.pem。然后在你的盒子上: openssl rsa -in router_pubkey.pem -pubin -RSAPublicKey_out | ssh-keygen -f /dev/stdin -i -m PEM | ssh-keygen -f /dev/stdin -r hostname openssl 命令将密钥转换为 PKCS#1 格式(只是一个整数序列,而不是 ASN.1 rsaEncryption 对象)。ssh-keygen 调用分别将密钥导入 OpenSSH 格式,然后生成指纹并打印 SSHFP 记录。
如果需要,重新生成主机密钥(例如,如果更改模数长度):
CLI 将挂起片刻。当它回来时:
你会得到类似的东西:
打印你想要的:
删除打印密钥开头的多余空格,并将其放在一个文件中,例如 router_pubkey.pem。然后在你的盒子上:
openssl 命令将密钥转换为 PKCS#1 格式(只是一个整数序列,而不是 ASN.1 rsaEncryption 对象)。ssh-keygen 调用分别将密钥导入 OpenSSH 格式,然后生成指纹并打印 SSHFP 记录。