一般的な 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 キー認証は認証に公開キーと秘密キーを使用するため、従来のパスワード方式よりも安全で信頼性が高くなります。
SSH キー ペアの生成
ローカル コンピューター上で SSH キー ペアを生成します。ターミナルを開き、次のコマンドを入力します。
ssh-keygen -t rsa
プロンプトに従うと、生成されたキーが ~/.ssh
ディレクトリに保存されます。
公開キーをサーバーにアップロード
生成された公開キーをサーバーにアップロードするには、次のコマンドを使用できます:
ssh-copy-id -i ~/.ssh/id_rsa.pub user@your_server_ip
where user
はユーザー名、your_server_ip
はサーバーの IP アドレスです。
SSH 構成ファイルの変更
SSH サーバー構成ファイルの編集/etc/ssh/sshd_config
、次の行を見つけて変更します:
PasswordAuthentication no PubkeyAuthentication yes
その後、SSH サービスを再起動します。
3. SSH ユーザーのログインを制限する
サーバーのセキュリティを高めるために、特定のユーザーのみが SSH にログインできるように制限できます。これにより、不正なアクセスが防止されます。
専用 SSH グループの作成
Linux サーバー上で次のコマンドを使用して、専用 SSH ユーザー グループを作成します:
sudo groupadd sshusers
許可の追加SSH アクセスされたユーザー
次のコマンドを使用して、ユーザーを SSH ユーザー グループに追加します。
sudo usermod -aG sshusers username
ここで、username
は追加するユーザー名です。
SSH 構成ファイルの変更
SSH サーバー構成ファイルの編集/etc/ssh/sshd_config
、次の行を見つけて変更します:
AllowGroups sshusers
その後、SSH サービスを再起動します。
4. SSH ログイン試行回数を制限する
ブルート フォース クラッキングは、ハッカーが使用する一般的な攻撃方法の 1 つです。 SSH パスワードのブルート フォース クラッキングを防ぐために、SSH ログイン試行の回数を制限し、ログイン試行が失敗するまでの期間を設定できます。
失敗したログイン試行カウンタのインストール
次のコマンドを使用して fail2ban
をインストールします:
sudo apt-get install fail2ban
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 サイトの他の関連記事を参照してください。