web-dev-qa-db-ja.com

動的IPを使用したAmazon EC2セキュリティグループの受信ルール

EC2セキュリティグループの潜在的な問題であると私が考えるものの明確化を探しています。

Linuxインスタンスに接続するためのセキュリティグループを設定しています。 HTTPおよびHTTPSアクセス用の「どこでも」ルールを作成しました。

私のSSHルールについて、AmazonチュートリアルではインバウンドアクセスをパブリックIPアドレスに制限するを指定する必要があると述べています。

  1. 取得できないのは、パブリックIPアドレスが動的である場合、どのように安全または機能するかです。

  2. IPアドレスは動的なので、ISPがパブリックIPを変更し、インスタンスにSSH接続できなくなった場合はどうなりますか?

使用しているセットアップガイドへのリンク: http://docs.aws.Amazon.com/AWSEC2/latest/UserGuide/get-set-up-for-Amazon-ec2 .html (「セキュリティグループの作成」のステップ7は私にとって問題と思われるものです)

12
Will Byrne

取得できないのは、パブリックIPアドレスが動的である場合、どのように安全または機能するかです。

このソリューションは、IPが頻繁に変更されない場合、または短時間だけアクセスする必要がある場合に機能します。 SSHは、提供するCIDRの外部のトラフィックにさらされないため、セキュリティがさらに強化されます。

特定のCIDRが機能しない場合は、ISPが使用する可能性が高いボードのCIDR範囲を試してみることもできます。これにより、インターネットの大部分からのアクセスが制限され、セキュリティの点で有利です。

iSPがパブリックIPを変更し、インスタンスにSSH接続できなくなった場合はどうなりますか?

AWSコンソールにログインするか、CLIを使用してセキュリティグループルールをオンザフライで更新できます。

CLIと直接対話するスクリプトを作成できます。現在のIPに対してPort 22 ruleをチェックし、異なる場合はそれを更新するものと同じくらい簡単です。もちろん、そのようなスクリプトを実行すると、セキュリティに関する質問が増える可能性があります:)

IPファイアウォールはSSHを保護する最良の方法ですか?

Sshトラフィックを信頼できるIPソースのみに制限するのが現実的であるのは良いことですが、sshを安全にするのは秘密鍵と賢明な設定の使用です。

考慮すべき重要な項目:

  • SSH秘密鍵にパスフレーズを追加する
  • SSHへのパスワード認証を無効にする
  • SSHへのrootログインを無効にする
  • SSH公開鍵のすべてのユーザーアカウントを監査する

また、ブルートフォース攻撃に関連する「ノイズ」を取り除くためにいくつかのことを行うことができます。

  • より高いポートでsshを実行します
  • Fail2banのようなソフトウェアを使用して、失敗した多数の試行を動的に記録し、指定された期間IP範囲をブロックします
6
Drew Khoury

SSHサーバーへのアクセスをIPアドレスで制限することは問題ありませんが、SSHはセキュリティのためにこれに依存していません。パスワードログインを無効にした場合(PasswordAUthentication no)秘密鍵認証のみを使用してください。秘密鍵なしでは誰も入ることができません。安全です。

したがって、言い換えれば、ファイアウォールルールについて心配したくない場合は、心配する必要はありません。

4
Andrew Schulman

この古い質問には、最近の解決策がいくつかあります。

AWS内から: AWS Lambdaを使用してAmazon CloudFrontおよびAWS WAFのセキュリティグループを自動的に更新する方法

動的ソースからのリモート更新(node.jsスクリプト): aws-ec2-ssh-secgroup-update node script

動的ソースからのリモート更新(Pythonスクリプト): 現在のパブリックIPをセキュリティグループに自動的に追加して、特定のポートでのトラフィックを許可する

3
Ville

ISPが割り当て可能なすべてのIPのスーパーセットを表すセキュリティグループにCIDR範囲を追加できます。

それか、AWS APIを使用してセキュリティグループを動的に更新します。

3
dmourati

aws_ipadd コマンドを使用して、AWSセキュリティグループルールを簡単に更新および管理し、パブリックIPが変更されるたびにポートでホワイトリストに登録できます。

$ aws_ipadd my_project_ssh
 Your IP 10.10.1.14/32 and Port 22 is whitelisted successfully.

$ aws_ipadd my_project_ssh
 Modifying existing rule...
 Removing old whitelisted IP '10.10.1.14/32'.
 Whitelisting new IP '10.4.10.16/32'.
 Rule successfully updated!
0
Piyush Sonigra