我正在尝试基于证书进行ssh连接。我正在遵循本指南。如果你看的话,那我要把线放在那一步
@cert-authority *.example.com contents-of-public-key-file
在文件中
~/.ssh/known_hosts
但是,我的公钥文件看起来像:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCpveL9YYQwYzkVC/wOMvSCUIQEueXD+WiFz/mZUtsw5LSwS7spRAGs9XxWd3/98Pog0u0tFTALYunYpbsNDRSwu8oNJTFkFLCuKf/UUeQSHo9ttGDGPxO0Yx3QufOy/OwFE28dunomqLU2GIGDdf4LVM5tCIDbBZ8Tk3UBAIrpSHJlHbGGtjlH5bcxHHz5QDRMvh7AnQMwVRdHcdbV3FislzDJwMhvGftwKbe2m+4fT0KLDMhP4hA+7v8PEtENcRwAI+2a0E7fvCVijf2K4wjYq9RZZE7ZuCddKCKvCVjqPhWHZMp+FOu3lD634OxUzH3SRGDGjBfI2figVZHFNzsNk0cZjHeSD1F0Nk1htxrq7et4bpAsavHzvayrUKkZWs97tVXrH1EmzRlKV6alvuF3AIYBl3yI7CCS7WaqZiT376Ilo8c0Voy8WjU0wVTZeUfTYWMLRA4X5T/KYAsGORKniLuaIvi1i8dALhluH5CZEyHx0t3rQuyYbVeGQq+6ha5DnY/OS8UsMJ7DxrBJWgzxdizMKar9N5rEPIOKBPLrk8XO7wLUd0vVcnRYe129nC+Sk20vvWa7+YbJDUgLTpyUlI1EQkq0vIGHs2WEDH31Ye7GYUzOPu205s1IABdTO82IZFEynLuPNqwza3y5fnnesWieLN6D15jP1UD+b/7Lew== CA key for spsi
此外,这与known_hosts的语法不匹配,该语法具有以下形式的行:
|1|YFa0r2/C0Q2ENwoA3zfBtvVopWQ=|eo4lCYYLUr/54pD+Wmr25XESwuM= ssh-dss AAAAB3NzaC1kc3MAAACBAJtrmDPnRNMEANyxlvkz1I0Hv3RLGdjWr0frJgr+wQmY0MnwKO+QDzhklq
您是否有明确的方法在命令行中执行此操作,而不是手动编辑文件?另外,整个方案的想法是什么?证书方法和公钥/私钥系统之间有什么区别?
此外,这与known_hosts的语法不匹配,该语法具有以下形式的行:
没关系。其中之一是散列的(Ubuntu默认),而您使用的是非散列版本。它们可以彼此并存而没有任何问题。只需按要求执行:
@cert-authority *.example.com ssh-rsa [...base64blob...] CA key for spsi
您是否有明确的方法在命令行中执行此操作,而不是手动编辑文件?
手动执行。除非您要编写一些脚本,否则没有命令行方式可以做到这一点。
另外,整个方案的想法是什么?证书方法和公钥/私钥系统之间有什么区别?
使用证书,您在已知主机中将只有一行,它将验证此CA签名的所有服务器主机密钥。而且,您将永远不会被要求验证这些主机的主机密钥(这是SSH最令人讨厌的功能)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句