ホームページ  >  記事  >  運用・保守  >  一般的な SSH セキュリティの脆弱性と攻撃を回避する: Linux サーバーを保護する

一般的な SSH セキュリティの脆弱性と攻撃を回避する: Linux サーバーを保護する

WBOY
WBOYオリジナル
2023-09-08 11:02:051556ブラウズ

一般的な SSH セキュリティの脆弱性と攻撃を回避する: Linux サーバーを保護する

一般的な SSH セキュリティの脆弱性と攻撃を回避する: Linux サーバーを保護する

はじめに:
今日のデジタル時代において、Linux サーバーは多くの組織にとって重要な部分となっています。そして個人にとってなくてはならないもの。ただし、すべてのインターネット関連テクノロジーと同様に、Linux サーバーもセキュリティの脅威に直面しています。このうち SSH (Secure Shell) はリモート管理やファイル転送によく使われるプロトコルです。 Linux サーバーのセキュリティを確保するために、この記事では一般的な SSH セキュリティの脆弱性と攻撃を回避するいくつかの方法を紹介し、関連するコード例を示します。

1. SSH のデフォルト ポートを変更する
デフォルトでは、SSH サーバーはポート 22 をリッスンします。これは、パスワードを総当たり攻撃しようとするハッカーによって簡単に発見されてしまいます。セキュリティを強化するために、SSH ポートを 2222 などの非標準ポートに変更できます。これにより、悪意のある侵入のリスクが軽減されます。 SSH ポートを変更するには、SSH サーバー構成ファイル /etc/ssh/sshd_config を編集し、行

#Port 22
Port 2222

を見つけて変更し、SSH サービスを再起動します。

2. SSH パスワード ログインを無効にして SSH キー認証を有効にする
SSH パスワード ログインはブルート フォース攻撃に対して脆弱です。セキュリティを強化するために、SSH パスワード ログインを無効にして、SSH キー認証のみを許可することをお勧めします。 SSH キー認証は認証に公開キーと秘密キーを使用するため、従来のパスワード方式よりも安全で信頼性が高くなります。

  1. SSH キー ペアの生成
    ローカル コンピューター上で SSH キー ペアを生成します。ターミナルを開き、次のコマンドを入力します。

    ssh-keygen -t rsa

    プロンプトに従うと、生成されたキーが ~/.ssh ディレクトリに保存されます。

  2. 公開キーをサーバーにアップロード
    生成された公開キーをサーバーにアップロードするには、次のコマンドを使用できます:

    ssh-copy-id -i ~/.ssh/id_rsa.pub user@your_server_ip

    where user はユーザー名、your_server_ip はサーバーの IP アドレスです。

  3. SSH 構成ファイルの変更
    SSH サーバー構成ファイルの編集/etc/ssh/sshd_config、次の行を見つけて変更します:

    PasswordAuthentication no
    PubkeyAuthentication yes

    その後、SSH サービスを再起動します。

3. SSH ユーザーのログインを制限する
サーバーのセキュリティを高めるために、特定のユーザーのみが SSH にログインできるように制限できます。これにより、不正なアクセスが防止されます。

  1. 専用 SSH グループの作成
    Linux サーバー上で次のコマンドを使用して、専用 SSH ユーザー グループを作成します:

    sudo groupadd sshusers
  2. 許可の追加SSH アクセスされたユーザー
    次のコマンドを使用して、ユーザーを SSH ユーザー グループに追加します。

    sudo usermod -aG sshusers username

    ここで、username は追加するユーザー名です。

  3. SSH 構成ファイルの変更
    SSH サーバー構成ファイルの編集/etc/ssh/sshd_config、次の行を見つけて変更します:

    AllowGroups sshusers

    その後、SSH サービスを再起動します。

4. SSH ログイン試行回数を制限する
ブルート フォース クラッキングは、ハッカーが使用する一般的な攻撃方法の 1 つです。 SSH パスワードのブルート フォース クラッキングを防ぐために、SSH ログイン試行の回数を制限し、ログイン試行が失敗するまでの期間を設定できます。

  1. 失敗したログイン試行カウンタのインストール
    次のコマンドを使用して fail2ban をインストールします:

    sudo apt-get install fail2ban
  2. Configure failed2ban
    編集fail2ban設定ファイル/etc/fail2ban/jail.local、次の内容を追加します:

    [sshd]
    enabled = true
    port = ssh
    filter = sshd
    logpath = /var/log/auth.log
    maxretry = 5
    bantime = 3600

    次に再起動fail2ban ## #仕える。

概要:

SSH デフォルト ポートの変更、SSH パスワード ログインの無効化、SSH キー認証の有効化、SSH ユーザー ログインの制限、および SSH ユーザー ログインの数の制限を行うことで、Linux を大幅に強化できます。 SSH ログイン試行: サーバーのセキュリティを強化し、一般的な SSH セキュリティの脆弱性と攻撃を回避します。サーバーを不正アクセスから保護することは、システム管理者の責任の 1 つです。

参考コード例は参考用であり、具体的な実装はサーバー環境や要件によって異なる場合があります。これを実装するときは注意し、予期せぬ事態を避けるために必ずデータをバックアップしてください。

以上が一般的な SSH セキュリティの脆弱性と攻撃を回避する: Linux サーバーを保護するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。