GNU/Linux >> Linux の 問題 >  >> Linux

allow および deny ディレクティブを使用してユーザー/グループを制限するように SSH を構成する方法

質問 :ssh を使用してシステムへのユーザー/グループ アクセスを制限するにはどうすればよいですか?

SSH は、構成に特定のファイルを使用して、これらのさまざまな制限を実現します。インバウンド ssh セッション (ホストへの) は、sshd (ssh デーモン) によって処理されます。このプロセスには、独自の構成ファイル /etc/ssh/sshd_config があります。 .適用される /etc/ssh/sshd_config ファイルのパラメータは AllowGroups です 、AllowUsersDenyGroups 、および DenyUsers .これらのパラメータが設定されている場合、すべてのホストのすべてのユーザーに影響します。

グループを制限するには、オプション AllowGroups および DenyGroups 便利です。上記のオプションは、プライマリ グループまたは補足グループがグループ パターンの 1 つに一致するユーザーを許可または禁止します。

1. どこからでも SSH 接続で mary アカウントと jerry アカウントにアクセスできるようにし、他のアカウントにはアクセスできないようにするには::

# vi /etc/ssh/sshd_config
AllowUsers mary jerry

2. s01.geeklab.com から john アカウントへの SSH 接続を許可しますが、他の着信 SSH 接続は許可しません:

AllowUsers [email protected]

3. 「finance」のすべてのユーザーに対して、どこからでも SSH 接続を拒否するには:

DenyGroups finance

失敗したログイン試行の表示

次のように入力して、いつでもログイン レコードを確認できます。

# cat /var/log/secure | grep 'sshd'

その出力は次のようになります:

May  3 13:57:24 centos7 sshd[2479]: pam_unix(sshd:session): session closed for user root
May  3 13:57:28 centos7 sshd[3313]: Accepted password for root from 192.168.1.17 port 51093 ssh2
May  3 13:57:28 centos7 sshd[3313]: pam_unix(sshd:session): session opened for user root by (uid=0)

また、失敗した試行のリストを表示したい場合は、次の方法を試すことができます:

# cat /var/log/secure | grep 'sshd.*Failed'

受け入れられたログイン試行は、次の方法で表示できます:

# cat /var/log/secure | grep 'sshd.*Accepted'


Linux
  1. VSFTPDをインストールして構成する方法

  2. LinuxデスクトップにPuttySSHクライアントをインストールして構成する方法

  3. CentOS8でFail2Banを使用してApacheとSSHを保護する方法

  1. FreeIPAサーバーでユーザーとグループを管理する方法

  2. Linuxでユーザーとグループを操作する方法

  3. SSH ユーザーが SSH トンネリングのみを許可するように制限するには?

  1. CentOS7にSambaをインストールして設定する方法

  2. SFTPを許可してSSHを禁止する方法は?

  3. Linux で空のパスワードで ssh を許可する方法