クラウドコンピューティングの人気に伴い、ますます多くの企業や個人がクラウドサーバーにアプリケーションをデプロイすることを選択しています。 しかし、クラウドサーバーのセキュリティも、特にますます巧妙化するサイバー攻撃に直面して、ますます懸念が高まっています。 クラウドサーバーのセキュリティを確保するためには、適切なハードニング対策を講じることが重要です。 このトピックでは、SSH キー ログインとファイアウォール設定を使用して、CVM のセキュリティを向上させ、データとアプリケーションを外部の脅威から保護する方法について説明します。
SSH(Secure Shell)は、クラウドサーバーで最も一般的に使用されるリモートログインプロトコルであり、暗号化によるデータ送信のセキュリティを確保できます。 ただし、従来のパスワードログイン方法は、ブルートフォースによって破られるリスクがあります。 このため、SSHキーでログインする方が、より安全な認証方法です。
SSHキーログインは公開鍵暗号メカニズムに基づいており、ユーザーは公開鍵と秘密鍵のペアを生成します。 公開鍵はサーバーに配置され、秘密鍵はユーザーのデバイスにローカルに保存されます。 この方法では、対応する秘密鍵を持つユーザーのみが、パスワードを入力しなくてもサーバーに正常にログインできます。
ブルートフォースの防止:パスワードはブルートフォースによって解読されることが多く、SSHキーログインはセキュリティを大幅に向上させます。
認証セキュリティの向上:キーペアは従来のパスワードよりもはるかに安全であり、キーを簡単に盗むことはありません。
自動化スクリプトのサポート: キー ログインは、自動化スクリプトや CI/CD プロセスで簡単に使用でき、人間の介入を減らすことができます。
SSHキーペアの生成:次のコマンドを使用して、ローカルデバイス上でキーペアを生成します。
ssh-keygen -t rsa -b 2048これにより、公開鍵と秘密鍵のファイルが生成され、通常は ~/.ssh/ ディレクトリに保存されます。
公開鍵をサーバーにアップロードする: ssh-copy-id コマンドを使用して、公開鍵を ECS にアップロードします。
ssh-copy-id username@server_ipパスワードログインの無効化: サーバーにログインし、/etc/ssh/sshd_config ファイルを編集して、パスワード認証を無効にします。
PasswordAuthenticationいいえ次に、SSHサービスを再起動します。
sudo systemctl restart sshdSSHキーログインのテスト:秘密鍵を使用してサーバーにログインし、正常にログインできることを確認してください。
ssh -i /path/to/private_key username@server_ipファイアウォールは、クラウドサーバーを外部からの攻撃から保護するための重要なツールであり、ネットワークトラフィックを制御することで不正アクセスを防ぐことができます。 適切なファイアウォール構成により、セキュリティリスクを効果的に軽減し、悪意のある攻撃者がシステムに侵入するのを防ぐことができます。
外部アクセスの制限:ファイアウォールは、外部アクセスのポートを制限することで、不要なネットワークトラフィックの侵入を効果的に防止し、攻撃対象領域を減らすことができます。
システムの安定性を向上させる:ファイアウォールは、不要なネットワークリクエストをフィルタリングすることで、サーバーの安定性を向上させ、不要な負荷を減らすことができます。
DDoS攻撃の防止:ファイアウォールは、分散型サービス拒否(DDoS)攻撃を特定してブロックし、サーバーが悪意のあるトラフィックに圧倒されるのを防ぎます。
以下では、一般的な UFW (Uncomplicated Firewalls) と iptables を例として使用して、ファイアウォールの構成方法について説明します。
UFWをインストールします(インストールされていない場合):
sudo apt-get ufwをインストールするUFW を有効にして既定のルールを設定する: 既定のルールを設定して、すべての受信トラフィックを拒否し、すべての送信トラフィックを許可します。
sudo ufw デフォルト 受信を拒否する sudo ufw デフォルト 送信を許可するSSH トラフィックを許可する: SSH キーでログインしている場合は、SSH ポート (デフォルトではポート 22) トラフィックを許可してください。
sudo ufw 22 / tcpを許可するファイアウォールを有効にする: ファイアウォールを有効にして有効にします。
sudo ufw 有効にするファイアウォールステータスの表示: ファイアウォールのステータスとルールを表示します。
sudo ufw ステータスiptablesは、Linux上の強力なファイアウォールツールであり、カスタムルールを介してネットワークトラフィックをきめ細かく制御できます。
許可されたSSHトラフィック:許可されたSSH(ポート22)トラフィック:
sudo iptables -A 入力 -p tcp --dport 22 -j 受け入れる他のすべての受信トラフィックを拒否する: デフォルトでは、すべての受信トラフィックを拒否します。
sudo iptables -A 入力 -j ドロップiptables ルールの保存: 次のコマンドを使用して、iptables ルールを保存します。
sudo iptables-save > /etc/iptables/rules.v4SSHキーログインとファイアウォール設定を実装することで、ECSのセキュリティを大幅に向上させることができます。 SSHキーログインは、ブルートフォース攻撃を防ぐためのより安全な認証方法を提供します。 一方、ファイアウォールは、ネットワークトラフィックとアクセスポートを制限することにより、悪意のある攻撃者がシステムに侵入するのを防ぎます。 システムの定期的な更新、強力なパスワードの使用、多要素認証の有効化など、他のセキュリティ対策と組み合わせることで、クラウドサーバーの強力な防御線を構築し、データとアプリケーションを常に安全に保つことができます。
ECSの保護はおろそかにすべきではなく、潜在的なセキュリティリスクを回避するために、使用中のセキュリティ強化を強化する必要があります。
ソース: Mengfei Cloud Host