ユーザーあたりのアクティブログイン数を制限する方法は?

ユーザーあたりのアクティブログイン数を制限する方法は?

ユーザーあたりのアクティブログイン数を制限する方法は?

以前はさまざまなサーバーでこれを見たことがありますが、自分で設定する方法を知りたいです。おそらく、このような場合、ユーザーあたりのアクティブなSSHログイン数を制限することでこれを達成できますか?これは行く道だと思います。どのように設定しますか?

答え1

/etc/security/limits.conf、少なくともDebianでは。パスはディストリビューションによって若干異なる場合があります。ファイルには、studentグループのすべてのメンバーを最大4回のログインに制限する例があります(コメント付き)。

#<domain>      <type>   <item>          <value>
@student       -        maxlogins       4

グループの代わりにこれを行うことができますが、制限したくない*ユーザー(従業員など)を攻撃しないように注意してください。

答え2

~によると男性limits.conf以下で制限を設定できます/etc/security/limits.conf

maxsyslogins 
maximum number of all logins on system 

したがって、以下を設定できます(2つのログイン)。

* hard maxsyslogins 2

別の投稿には使用しないようになっていました/etc/security/limits.conf/etc/security/limits.d/*.confファイルに設定された値が上書きされることを除いて、それに関連するものは見つかりません/etc/security/limits.conf

マニュアルページからpam_restrictions:

デフォルトでは、制限は /etc/security/limits.conf 構成ファイルから取得されます。次に、/etc/security/limits.d/ディレクトリにあるさまざまな* .confファイルを読みます。これらのファイルは、「C」ロケール順に順次解析されます。個々のファイルの効果は、構文解析順序に従ってすべてリンクされているのと同じです。モジュールオプションを使用して設定ファイルを明示的に指定すると、上記のディレクトリのファイルは解析されません。

答え3

最新のGNU / Linuxシステムでは、pam_limitsユーザーあたりのセッション数を制限することができます。

ユーザーあたりのセッション数を制限するには、ファイルにエントリを追加するだけ/etc/limits.d/です/etc/limits.d/maxlogins.conf

# Some of the lines in this sample might conflict and overwrite each other
# The whole range is included to illustrate the possibilities
#limit users in the users group to two logins each
@users       -       maxlogins     2
#limit all users to three logins each
*            -       maxlogins     3
#limit all users except root to 20 simultaneous logins in total
*            -       maxsyslogins     20
#limit in the users group to 5 logins in total
%users       -       maxlogins     2
#limit all users with a GID >= 1000 to two logins each
1000:        -       maxlogins     2
#limit user johndoe to one login
johndoe      -       maxlogins     2

pam_limitsモジュールを持たない他のUnixファミリーのオペレーティングシステムとシステムは異なります。

関連情報