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


12

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 'は私に問題があるようです)

回答:


6

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

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

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

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

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

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

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

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

考慮すべき主な項目:

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

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

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

4

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

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


1
キーファイルを取得するには、ローカルコンピューターへの標的型攻撃を心配する必要がありますが、ヘルスケア/クレジットカード/政府のデータを扱うものを実行していない場合、その可能性はおそらく最小限です。
ceejayoz

3

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

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


3

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

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

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

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


0

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!
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.