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

Linuxシステムから非アクティブなユーザーを自動的にログアウトする

Linuxサーバーへのアイドル状態のシェルセッションを維持することは、セキュリティ上のリスクとなる可能性があります。システムリソースを消費することを忘れないでください。

さて、たぶん単一のアイドルセッションではないかもしれませんが、複数のユーザーが同じLinuxシステムにリモートでアクセスし、セッションをアイドルのままにしている場合を想像してみてください。

Linuxのシステム管理者は、システムにログインしているユーザーと、アイドル状態になっている時間を確認できます。

アイドル状態のユーザーを手動で追い出すこともできますが、それは面倒で、確かにあまり生産的ではありません。

アイドル状態のユーザーをシェルから自動的にログアウトする方法を紹介します。

方法1:TMOUTを使用して、アイドル状態のシェルセッションからユーザーを自動ログアウトします

bashやその他のシェルでは、TMOUTを使用できます アイドルログアウト時間を設定する変数。この期間にユーザーからのアクティビティがない場合、シェルセッションは閉じられます。

TMOUTがすでに設定されているかどうかを確認します。値は秒単位です。

echo $TMOUT

テストするには、次のように使用できます:

TMOUT=300

これにより、ターミナルセッションまたはSSHセッションが300秒後、つまり5分後に閉じられます。

SSHセッションの場合、次のようなメッセージが表示されます。

[email protected]:~# timed out waiting for input: auto-logout
Connection to 212.125.89.175 closed.

ローカルセッションの場合、端末は自動的に閉じられる必要があります。

しかし、環境変数を設定するのに最適な方法ではないことは、おそらくすでにご存知でしょう。個々のユーザーのプロファイル(またはbashプロファイル)で設定することも、システム全体のすべてのユーザーに対して/ etc/profileから設定することもできます。

あなたがシステム管理者であり、Linuxサーバーでアイドル状態のユーザーを自動ログアウトする場合は、システムレベルで設定します。

/ etc /profileファイルをVimやNanoなどのテキストエディタで開きます:

nano /etc/profile

そして、それに次の行を追加します:

TMOUT=300

ファイルを保存して閉じます。今後、非アクティブ状態が5分間あるユーザーは、自動的にログアウトされます。

これは、ローカルセッションとリモートセッションの両方で機能します。 SSHセッションのみに設定する場合は、次の方法を使用できます。

方法2:アイドル状態のSSHセッションからユーザーを自動的にログアウトします

特定の非アクティブ期間の後にユーザーを強制的にログアウトするようにSSHサーバーを構成できます。

SSH構成ファイル(/ etc / ssh / sshd_config)を編集します:

sudo nano /etc/ssh/sshd_config

次の2つの変数を探し、開始行の前の#を削除して、次のように値を設定します。

ClientAliveInterval 200
ClientAliveCountMax 3

ファイルを保存して閉じます。

これは、サーバーが200秒ごとに3回、クライアントにキープアライブメッセージを送信することを意味します。応答がない場合(ユーザーがアイドル状態であることを意味します)、600秒(200 * 3)でセッションを閉じます。

要件に基づいて適切な値を選択できます。

これはSSHのみの方法であり、ローカルシェルセッションには影響しません。

ユーザーの自動ログアウトに関するこのLinuxのヒントがお役に立てば幸いです。 Linuxシステム管理者向けのヒントをさらに購読してください。


Linux
  1. mimipenguin –現在のLinuxユーザーからのログインパスワードのダンプ

  2. POSIXとは何ですか? Linux / UNIXユーザーにとってなぜ重要なのですか?

  3. Linuxシステム管理者になる:販売からシステム管理者まで

  1. Ansibleを使用してcsvファイルからLinuxユーザーを作成する4つのステップ

  2. Osx、Linux、WindowsからリモートOsxシステムにアクセスしますか?

  3. Linux ライブ システムから VHD ディスク イメージを作成する方法を教えてください。

  1. Linuxとは何ですか?非技術ユーザー向けガイド

  2. Linuxで複数のユーザーのプロセスからのサウンドをミキシングする

  3. Linux のトップ画面から一部のユーザーを除外するには?