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

LinuxでSSHからユーザーをログアウトする方法

SSH経由でリモートLinuxシステムにログインしている場合は、exitコマンドを使用してSSHからログアウトする必要があります。

exit

それはいいです。しかし、SSH接続から他のユーザーをログアウトしたい場合はどうでしょうか?

このクイックヒントでは、ユーザーをシステムから追い出す方法を紹介します。

SSHセッションからユーザーをログアウトします

まず、Linuxサーバーにログインしているユーザーのリストを確認します。これを行うにはさまざまな方法があります。オプション-uを指定してwhoコマンドを使用します 。このオプションは、ユーザーのログインシェルセッションのプロセスIDを表示します。

who -u

出力例は次のとおりです。

[email protected]:~# who -u
abhishek pts/0        2021-04-05 09:25 00:01       31970 (223.180.180.107)
prakash  pts/1        2021-04-05 09:26   .         32004 (223.180.180.107)
root     pts/2        2021-04-05 09:26   .         32039 (223.180.180.107)

ここで、prakashを使用してキックしたいとします。 SSHセッションから。そのシェルセッションのプロセスIDは32004です。ログインシェルセッションを強制終了すると、ユーザーは切断されます。

これを行うには、killコマンドを使用してSIGHUPを送信します。 信号。この信号は、ユーザーの端末が切断されたことを報告するために使用されます。また、セッション内のすべてのプロセスを制御端末から効果的に切断します。

sudo kill -HUP 32004

もちろん、このようなアクションを実行するには、rootまたはsudoユーザーである必要があります。

知っておくべきことがいくつかあります。

セッションを終了する前にメッセージを送信します

セッションを終了する前に、エンドユーザーに通知することをお勧めします。 writeコマンドを使用すると、次の方法でユーザーにメッセージをすばやくドロップできます。

echo "Your session will end in 2 minutes. Save your work!" | write prakash pts/2 

SIGNHUPが機能しない場合、SSHセッションを強制的に強制終了します

SIGHUPシグナルが機能しない場合は、SIGKILLシグナルを送信してください。

sudo kill -9 32004

ログアウトすることもできますユーザーが複数のSSHセッションを持っている場合は、選択したセッションのユーザー

同じユーザーが複数のシステムまたは端末からログインしている場合、強制終了しているセッションのみが影響を受けます。すべてのセッションからユーザーを追い出すわけではありません。

これは、ネットワークの切断などの理由でSSHセッションがハングアップした場合です。ターミナルを強制終了し、新しいターミナルから別のSSHセッションを開くことができますが、システムに2回ログインしていることがわかります。

このような場合、アクティブではないはずのセッションを閉じることができます。

whoの出力に表示されるログのタイミングから、どのユーザーをキックオフするかを識別できます。 指図。心配しないでください。最悪の場合は、現在のセッションから自分自身を開始することです。ただし、その後は再度ログインできます。

このクイックヒントが、LinuxのSSHセッションからユーザーをログアウトするのに役立つことを願っています。ご質問やご提案をお待ちしております。


Linux
  1. Linuxでユーザー名を変更する方法

  2. LinuxでSSHポートを変更する方法

  3. Linuxでユーザーをグループに追加する方法

  1. Linuxで応答しないSSH接続を終了する方法は?

  2. Linux – SshからTtyにユーザーをログインさせる方法は?

  3. 正しいユーザーとして ssh ログインする方法は?

  1. Linuxでユーザーを一覧表示する方法

  2. Linuxでログファイルを空にする方法

  3. 誰がLINUXサーバーを再起動したかを調べる方法