過去問ドリル

LinuCレベル1 セキュリティ 問27

セキュリティ/暗号化によるデータの保護

パスフレーズ付きの秘密鍵でSSH接続するたびにパスフレーズを入力する手間を省くため、復号した鍵をメモリ上に保持させる方法として適切なものはどれか。

当サイトのオリジナル問題(LinuCレベル1の出題範囲「セキュリティ」に対応。実際の試験問題ではありません)

正解:B

解説

ssh-agentは復号済みの秘密鍵をメモリ上に保持する常駐プログラムで、ssh-addで鍵を登録するときに一度だけパスフレーズを入力すれば、以後のssh接続ではエージェントが代わりに認証処理を行います。登録済みの鍵は ssh-add -l で一覧でき、ssh-add -D で全て削除できます。秘密鍵そのものをファイルとしてパスフレーズ無しにするより安全に手間を減らせます。多くのデスクトップ環境では、ログイン時にssh-agent(またはその互換機能)が自動で起動されます。

選択肢ごとの解説

  • A誤り。known_hostsは接続先サーバーのホスト鍵を記録するファイルで、秘密鍵のパスフレーズとは関係ありません。
  • B正しい。ssh-agentに鍵を登録すれば、パスフレーズの入力は登録時の1回で済みます。
  • C誤り。ssh-copy-idが接続先へ登録するのは公開鍵であり、秘密鍵を他のホストへ渡してはいけません。
  • D誤り。PermitEmptyPasswordsは空パスワードのアカウントのログイン可否を決める設定で、鍵のパスフレーズとは無関係です。
LinuCレベル1の問題を演習モードで解く