IDだけでSSH認証、認証資格情報は不要

IDだけでSSH認証、認証資格情報は不要

多くのソースでは、パスワードベースの認証ではなく、SSHサーバーに対するキーベースの認証に関するガイダンスを提供しています。

一部の分離環境では、サーバーは資格情報なしで認識可能なユーザー名のみを要求して、ユーザーに権限を付与することをお勧めします。

Linuxで実行されているOpenSSHはこの状況をサポートしていますか?資格情報なしでユーザーに権限を付与するようにサーバーを構成するにはどうすればよいですか?

ベストアンサー1

定義によると、認証はユーザーの身元を証明する行為です。たとえば、「root」は、すべてのLinuxシステムで既知のユーザー名です。サーバーが「root」として表示されるすべてのユーザーにアクセス権を付与すると、認証は行われません。そして、アイデンティティ自体は通常秘密ではありません。たとえば、/etc/passwdすべてのローカルユーザー名をリストするファイルは、すべてのユーザーが読み取ることができます。

伝統的に、認証は識別フェーズの後に発生し、ユーザーが知っているもの(パスワードなど)、ユーザーが持っているもの(SSHキーなど)、またはユーザーが実行しているもの(指紋など)です。詳しくはWikipediaのページをご覧ください。https://en.wikipedia.org/wiki/authentication

SSHの場合、最も近い近似は、空白または空白のパスワードを持つアカウントを使用することです。AuthenticationMethods noneその後、sshd_configを使用するPermitEmptyPasswords yesと、ユーザー名と空のパスワードでログインできます。これらのオプションを完全に設定するのは賢明ではありません。Matchブロックを使用し、これらの設定を特定のユーザーまたはユーザーグループに適用することをお勧めします。ユーザー名は唯一の防御線なので、新しい非標準ユーザー名を使用することも意味があります。オプションの詳細については、マンページを参照してください。sshd_config(5)

繰り返しますが、このアプローチは認証を完全に排除するため、セキュリティの観点から安全ではありません。また、パスワードのないユーザーアカウントが許可する権限によっては、より多くの脆弱性にさらされる可能性があります。要件を慎重に確認し、続行するかどうかを決定します。

おすすめ記事