パスワードのないSSHの意味は何ですか?

パスワードのないSSHの意味は何ですか?

UNIXユーザーがSSHを介してサーバーにアクセスし、公開鍵ログインのみを許可したい場合は、このリストに追加するときに考慮すべき他の項目がありますか?

  1. サーバーにファイルを許可しますpubkey loginsshd_config
  2. 基本パスワードに関する注意事項。「!」または「*」

ベストアンサー1

どのSSHサーバーとどのUnixシステムセットが必要かを教えてください。

!または(この項目を読み取るために使用されます)、その項目を表示するときと*パスワードはありません。/etc/passwd/etc/shadowgetent

アカウントにパスワードがあるかロックされているかを示すフラグ。

これは、PAM の構成とバージョンとディストリビューションによって異なる重要な違いです。Linuxを使用している場合。ロックされているとログインできないようですが、古いシステムではすぐに動作する可能性があります(少なくとも私の経験ではそうでした)。

(スーパーユーザーとして)passwd -l <name>アカウントをロックしたり(!passwd -d <name>アカウントからパスワードを削除したり(*)、2つを組み合わせて既存のパスワードを削除したりできますpasswd -dl <name>

私は言っていませんが、/etc/ssh/sshd_configOpenSSH(パスは異なる場合があります)の関連ガイドラインが次のとおりです。

HostKey ...

サーバーにはRSA2またはDSAのホストキーが必要です(より近代的な実装には2つの楕円曲線実装も追加されています)。 RSA1は、すべての一般的なSSHサーバー実装で長く使用されていません。

それから:

RSAAuthentication yes
PubkeyAuthentication yes
PasswordAuthentication no

また、私は常にSSH()を介してログインを設定し/etc/sudoersて完全に無効にすることをお勧めします。ただし、このより安全な設定には、ディスクがいっぱいになり、権限のないメンバーがディスクに書き込めない場合(予約済みスペースのため)、小さな欠点がある可能性があります。だからYMMV。rootPermitRootLogin nosudoroot

2つの追加提案

SSHアクセスを制限するためのグループの割り当て

グループssh-users(または希望の名前)を作成し、適切なディレクティブを設定しますsshd_configroot上記の情報に基づいて選択したポリシーに従って、グループがグループのメンバーであることを確認してください。

AllowGroups ssh-users

ユーザーを制限するには、グループを割り当てます。ただSFTPアクセス

次のステップsshd_configは、ユーザーがエスケープできないようにし、/home特定の機能を無効にすることです。

Match group sftponly
    ChrootDirectory /home
    X11Forwarding no
    AllowTcpForwarding no
    ForceCommand internal-sftp
    PasswordAuthentication no

結論として

はい。 Linuxでは、PAMを考慮事項として追加する必要があります。

また、プロキシ転送を許可するのか、それともユーザーに任せるのかが含まれます。

最後に重要なのは、ポートまたはX11接続転送が許可されるかどうかです。特にポートは、ユーザがサーバをプロキシとして使用できるので、望ましくない場合がある。

また、このMatchディレクティブを使用すると、ユーザーが接続できる場所を制限できます(ファイアウォールまたはTCPラッパーもこれを行うことができます)。

ユーザーがキーを管理できるようにしますか、または抽象化してauthorized_keysユーザーが直接アクセスできないようにしますか?

もちろん、より多くの側面がありますが、ほとんどはより細かい詳細レベルにあるので、上記の点に対するバリエーションです。

おすすめ記事