SSHを使用した証明書ベースの認証

SSHを使用した証明書ベースの認証

証明書に基づいて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

ファイルを手動で編集するのではなく、コマンドラインでこれを行うための明確な方法はありますか?また、この全体計画のアイデアは何ですか?証明書方式と公開/秘密鍵システムの違いは何ですか?

ベストアンサー1

また、これは次の形式の行を持つKnown_hostsの構文と一致しません。

それは問題ではありません。そのうちの1つはハッシュされ(Ubuntuのデフォルト)、ハッシュされていないバージョンを使用しています。何の問題もなく共存できます。要求どおりに行ってください。

@cert-authority *.example.com ssh-rsa [...base64blob...] CA key for spsi

ファイルを手動で編集するのではなく、コマンドラインでこれを行うための明確な方法はありますか?

手動で行います。一部のスクリプトを作成しない限り、これを行うコマンドライン方法はありません。

また、この全体計画のアイデアは何ですか?証明書方式と公開/秘密鍵システムの違いは何ですか?

証明書を使用すると、既知のホストにそのCAによって署名されたすべてのサーバーホストキーを確認する行が1つだけあります。そして、これらのホストのホストキーを確認するように求められません(これはSSHの最も迷惑な機能です)。

おすすめ記事