クラウド、レンタルサーバ、SEO、WPなどのレシピを!

サーバーレシピ

AWS

AWS セキュリティグループと、ネットワークACL

投稿日:

●AWS セキュリティグループ

AWSセキュリティグループは、EC2などに適用するファイヤーウォール機能。

デフォルトは、INは、拒否。OUTは許可。
INを開けることで通信が可能となる。

設定後、すぐに適用される。
Yamaha Routerと同じ(笑)。

ステートフルな制御が可能であり、戻りの通信も自動的に許可される。

グループ定義が可能ですので、用途により、まとめておくと、いいのかと。

●AWS ネットワークACL

AWSネットワークACLは、VPCに適用するファイヤーウォール機能。
デフォルトでは、Inbounde Rules / Outbound Rulesとも、「許可」となっています。

最も低い番号から順番に適用される。

1番と10番が相反する設定の場合、1番が適用されて、10番は無視される形になります。

ステートフルな制御はできないので、戻りの通信も考慮しなければいけません。

そのため、「一時ポート」「エフェメラルポート」をきちんと設定しないといけません。

https://docs.aws.amazon.com/ja_jp/vpc/latest/userguide/vpc-network-acls.html#nacl-ephemeral-ports
利用するOSにより異なりますので、最大公約数的に設定することになるかと思います。

●AWS セキュリティグループとネットワークACLの使い分け

セキュリティグループ、ネットワークACL、どちらかが拒否だと(片方が許可でも)、全体としては拒否となる。

例えば、ネットワークACLでは、SSHを許可しておいて、SGで、不許可にする。

なにか、非常事態になった場合、SGで、該当EC2だけ、SSHをオープンする。

というような運用も一つの手かと思います。

●ポート変更(セキュリティ対策)

一般的なセキュリティ対策ですが、よく知られているデフォルトのポートは、運用に支障がなければ、変更するのがいいのかと思います。

RDPの3389番
SSHの22番

ポートは変更しても、念のため、
・パスワードの複雑化
・administrator権限を、「administrator」ではなく、違う名前にする。
・できれば、利用先IPを固定する。
・SSHは、shadowパスワードではなく、「カギ」を利用する。
こちらも、IPを固定する

などの対策をしておくのもいいかと。

また、
phpMyAdmin
などは、
https://(ドメイン)/phpmyadmin/

など、「ありがちな」ディレクトリに設置しない。
デフォルトで、パスワードアタックが行われます。

access_log:XXX.XXX.XXX.XXX – – [XX/Xxx/XXXX:XX:XX:XX +0900] “GET /phpMyAdmin/index.php?pma_username=root&pma_password=administrator!@#&server=1 HTTP/1.1” 400 226 “-” “-”

と、アタックされます。

パスワードをかけたり、指定IP以外を不許可など対策を取っておくことも重要ですが、
「phpMyAdmin」ディレクトリには、設置しない。
というのがいいのかと思います。

-AWS

Copyright© サーバーレシピ , 2019 All Rights Reserved.