ユーザーごとのSSHd制限


9

特定のユーザーを制限して、sshキーを使用してSSHでのみアクセスできるようにし、他のユーザーがキーまたはパスワードを使用してログインできるようにする必要があります。

例:

rootユーザーがキーを使用してリモートで(sshdを介して)ログインできるようにしたいので、パスワードが受け入れられない(たとえパスワードが正しい場合でも)

他のユーザー(システム上のすべてのユーザー)は、キーやパスワードを使用してログインできます

どうすればいいですか

回答:


0

私がすることは、次の/etc/sshd/sshd_configように設定することです:

PermitRootLogin without-password

セキュリティを強化し、rootパスワードがロックされるのを回避するため(rootがキーを使用してのみログインできるようにする)

代わりにを使用します。私にとってAllowGroupsAllowUser、ユーザーをグループに追加するよりもグループに追加する方が便利ですがsshd_config、それは個人の好みに依存する可能性があります。


13

あなたが欲しいのは「マッチユーザー」だと思います。これを使用してユーザー名を照合し、そのユーザーにのみ適用される一連の構成設定をインデントします。

Match User Joe
  PasswordAuthentication no

Match User Jane
  PasswordAuthentication yes

これを使用して、クライアントにchroot SFTPのみのアクセスを設定することがあります。


すべての設定をMatchブロックに書き込むことができるわけではないことに注意してください。詳細はこちらman 5 sshd_configをご覧ください。
Ynn

2

次のようにsshを設定します。

nano /etc/ssh/sshd_config

AllowUsers username1 username2 username3

SSHを再起動します

次に、パスワードの使用を避けたい人にキーを提供します。

ssh-keygenは、その鍵ペアを生成するために使用されます。ここにあなた自身の個人的な秘密/公開鍵のペアが作成されるセッションがあります:

#ssh-keygen -t rsa

コマンドssh-keygen -t rsaにより、鍵ペアの作成が開始されました。

セットアップにパスフレーズを入力しませんでした(代わりにEnterキーが押されました)。

秘密鍵は.ssh / id_rsaに保存されました。このファイルは読み取り専用であり、あなた専用です。公開鍵で暗号化されたすべての通信を復号化するために使用されるため、他の誰もそのファイルの内容を見る必要はありません。

公開鍵は.ssh / id_rsa.pubに保存されます。

その内容は、パスワードの入力を求められることなく、SSHしたいシステムのファイル.ssh / authorized_keysにコピーされます。

#scp id_rsa.pub remote system:~/.ssh/authorized_keys

最後にアカウントをロックします(キー認証は引き続き可能です)。

# passwd -l username1

それは私が探しているものではありません。rootがキーのみを使用してログインし、他のユーザーがキーまたはパスワードでログインできるようにしたいとしましょう
alexus

次に、passwd -l username1でアカウントをロックしないでください
Patrick R
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.