世界

Linux: SSH を使用してサーバー上の同時ユーザーを制限する

2月 17, 2024 / nipponese

1708181249
2024-02-17 14:05:19

Linux マルチユーザーシステムです。 これは、サーバーまたはデスクトップに複数のユーザーを収容できることを意味するだけでなく、それらのユーザーが 全員ログインできます彼も同じ時間に。 理論的には、数百、さらには数千の Linux ユーザーが同じサーバーに同時にログインすることができます。

でも、そうしたいですか?

これはシステム リソースを大幅に消費するだけでなく、複数の管理者がログインし、各管理者が同時に構成オプションを変更しようとすると、深刻な問題になる可能性があります。

同じユーザーが 1 つのシステムに複数回ログインすることもできます。

これらすべてが混乱を引き起こす可能性があります…もしかしたら集団ヒステリーさえも引き起こす可能性があります。

幸いなことに、 セキュアシェル (SSH)、リモートにログインする最も一般的な方法です。 Linuxサーバーには、この考えられる問題に役立つオプションがあり、その対処方法を説明します。

必要なもの

必要なのは、実行中の Linux インスタンスと、 sudo 権限。 もちろん、作業しているマシンにもインターネット接続が必要です。 それ以外の場合は、それだけです。 SSH マジックをいくつか作ってみましょう。

SSH 同時セッションの制限

最初に行うことは、サーバーが受け入れる同時セッションの数を制限することです。 これにより、一度に許可される SSH セッションの数にハード制限が設定されます。 制限に達すると、すべてのセッションが自動的にドロップされ、誰かがセッションを終了するまで他の人はログインできなくなります。

デフォルトでは、SSH は同時セッションの数を制限しません。 ただし、デーモン構成ファイルにはその特定の目的のための行があります。 次のコマンドを使用して構成ファイルを開きます。

sudo nano /etc/ssh/sshd_config

sudo nano /etc/ssh/sshd_config

Ctrl+W キーの組み合わせを押すと、ナノ検索フィールドが表示され、必要な行を検索できます。 そのフィールドに「MaxStartups」と入力し、キーボードの Enter キーを押すと、次の行が表示されます。

その行の説明は次のとおりです。

  • MaxStartups はオプションです
  • 10 は、SSH が切断され始めるまでの未認証接続の数です。
  • 30 は、制限に達した場合に接続が切断される確率です。
  • 60 は、SSH がすべてをドロップし始める接続の最大数です。

行から # 文字を削除して機能を有効にすると、次のようになります。

MaxStartups は、SSH デーモンへの認証されていない同時接続の数であることに注意することが重要です。 これは、サービス拒否攻撃からシステムを保護するために使用されるため、(# 文字を削除する以外は) そのままにしておくことが推奨されます。

もちろん、これは許可された同時接続数を制限するものではありません。 そのためには、次のように MaxSessions 行を構成する必要があります。

同時 SSH ログイン数を 10 に制限するには、その行を次のように変更します。

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

次のコマンドを使用して SSH デーモンを再起動します。

sudo systemctl sshを再起動します

sudo systemctl sshを再起動します

Fedora ベースのディストリビューションを使用している場合、再起動コマンドは次のようになります。

sudo systemctl sshdを再起動する

sudo systemctl sshdを再起動する

ユーザーごとの SSH ログイン数を制限する

SSH 経由でログインしていることを忘れたり、終了せずに何度もログインする傾向がある管理者がいるとします。 そのために、SSH にはユーザーごとの SSH ログイン数を制限できる別のトリックがあります。

ユーザー aaron がいて、同時 SSH ログインを 1 回に制限したいとします。 これを行うには、次のコマンドを使用してlimits.conf ファイルを開きます。

sudo nano /etc/security/limits.conf

sudo nano /etc/security/limits.conf

そのファイルの一番下までスクロールし、次の行を追加します。

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

この構成では SSH を再起動する必要はありません。

ここで、aaron がすでに SSH 経由でサーバーにログインしている場合、再試行すると次のように表示されます。

アーロンのログイン数が多すぎます。 最終ログイン: 2024 年 1 月 29 日月曜日 11:26:21 192.168.1.73 から 192.168.1.183 への接続が閉じられました。

アーロンのログイン数が多すぎます。

最終ログイン: 2024 年 1 月 29 日月曜日 11:26:21 192.168.1.73 から

192.168.1.183 への接続が閉じられました。

アーロンが元の接続からログアウトするまで、再度ログインすることはできません。

ここで、かなり重要な提案をします。 すべての管理者を 1 つの接続に制限しないでください。 なぜ? サーバーに変更を加えた場合、変更が機能することを確認するために 2 番目の接続でログインする必要がある場合があります。 元の接続からログアウトした後、変更が機能せず、SSH 経由でサーバーに再度ログインできなくなったことが何度かありました。 そうなると、サーバーにアクセスする唯一の方法は現場にいることでした。

グループでも同じことを行うことができます。ただし、ユーザー名を追加する代わりに、次のようにグループ名を使用します。

@グループ名ハードマックスログイン4

@グループ名ハードマックスログイン4

どこ グループ名 問題のグループの名前です。

または、次のように、すべての SSH ログインをハードリミットに単純に制限することもできます。

SSH 同時ログインの制限を制限する方法はこれですべてです。 これらの制限を使用して実稼働マシンを構成する前に、必ず非実稼働サーバーでこれをテストしてください。そうしないと、出張や電話が必要になる可能性があります。

YouTube.COM/THENEWSTACK

テクノロジーの進歩は速いので、エピソードを見逃さないでください。 YouTube チャンネルに登録すると、すべてのポッドキャスト、インタビュー、デモなどをストリーミングできます。

購読する

スケッチで作成されたグループ。

ジャック・ウォーレンは、X世代の精神が現代の嫌味と融合したときに起こるものです。 ジャックは真実の探求者であり、量子シャープペンシルと音と魂のバラバラなビートを使って言葉を書く人です。 彼は住んでいるのに…

ジャック・ウォレンの続きを読む

#Linux #SSH #を使用してサーバー上の同時ユーザーを制限する