AWSのポート開放|基本的な手順をご紹介


EC2インタンスのポート開放とは?
EC2インスタンスに外部からのアクセスを許可するのがポート開放です。 AWSではManagementConsoleから指示する事で簡単にサーバー(EC2インスタンス)を起動できます。 しかし、ただ起動しただけでは外部からのアクセスは遮断されておりどこからも接続する事ができません。明示的にアクセスを許可しない限りは外部からのアクセスはできないのです。
ポート開放についての基本知識
AWSでポート開放を設定するためには、TCP/IPのポートについて理解しておく必要があります。 詳細な内容はネットワークの専門サイトなどで解説されています。次項目では基本的な事項を説明します。
ポートとは
HTTPなら80番、HTTPSなら443番といったように、主要なプロトコルはポート番号が決まっています。 インターネット上のサーバーTCP/IP通信でアクセスする場合、通常はサーバーのIPアドレスとプロトコル(ポート番号)の組み合わせが必要となります。 例として「http://www.hogehoge.jp/」というURLであれば「www.hogehoge.jpが示すIPアドレスのサーバー」の「http(80番ポート)」に接続するという意味となります。
ポート開放=アクセス許可
サーバーの特定ポートに外部からのアクセスを許可する事をポート開放(アクセス許可)といいます。 一例として「ウェブサーバーなので80番ポート(http)と443番ポート(https)のアクセスを許可する」というものです。
ポート開放とセキュリティ
開放するポートは必要最小限にするのが通例です。インターネットに接続されているということは世界中からアクセスされるという事に他なりません。 クラッカーなどの悪意を持ったアクセスもある事も考慮しておきましょう。SSHのようにサーバーOSを操作するためのポートもあるため、すべてのポートに自由にアクセスできるような設定は非常に危険です。
ポート開放の手法
AWSには標準で「セキュリティグループ」という機能がありますので特別な理由がない限りはこちらを使用してください。 ゲートウェイ(ルーター等)でポートを管理したり、サーバー本体にファイヤウォールをインストールする等の方法もあります。前者はルーターなどの機器の取り扱いを理解しなければなりません。 後者はファイヤウォールの設定方法を覚える必要があります。またどちらの場合も、設定変更時に機器の再起動が必要になるケースもあるため必ずしも手軽とはいえません。
EC2インスタンスのポート開放作業の例
AWS上でEC2インスタンスを起動し、ブログを運用するためのWebサーバーを用意したと仮定します。ElasticIPアドレスを取得しインスタンスに関連付けも完了しました。 しかし、ブラウザに上記のIPアドレスを入力してもまだアクセスする事はできません。 セキュリティグループでアクセス許可する内容を設定し、EC2インスタンスに割り当てる事でポート開放を実現します。
EC2セキュリティグループを作成する
AWS ManagementConsoleからEC2管理画面を開きます。メニューから「ネットワーク&セキュリティ」→「セキュリティグループ」を選択します。 「セキュリティグループの作成」をクリックして新規セキュリティーグループを作成します。
セキュリティグループ名
今回は公開ウェブサーバーなのでpublic_webという名称とします。将来的にサーバーを増減するときにも対応ができるように、用途別にセキュリティグループ名を付けてください。 この項目は後から名前を変更する事ができないという点に留意してください。 注意点として、EC2インスタンスとサーバーと1対1で対応するような名称は避けてください。管理が煩雑になり、設定漏れなどの困った事態を招く可能性が高くなります。
説明
取り急ぎセキュリティグループ名と同じ文字を入れておきます。 適切な説明分を思いつくのであれば入力しておきましょう。後々に複数の管理者が使用する事になっても誤解が生まれにくくなります。
VPC
ポート開放の対象になるEC2サーバーが所属するVPCを選択してください。 VPCを別途作成していない場合はそのままで構いません。セキュリティグループは同一のVPC内でのみ使用できます。
インバウンドルール
外部からサーバーへアクセスを許可する内容を指定します。 「ルールを追加」をクリックしてください。「タイプ」は「HTTP」を選択します。ポート範囲の値には自動的に80が入力されます。 「ソース」は許可する接続元の指定です。今回の場合はウェブサーバーなのでインターネット上のすべてからアクセスを許可するという意味の「0.0.0.0/0」を指定します。
アウトバウンドルール
こちらはサーバーから外部へのアクセスに対する制限です。 今回のケースでは特に理由がなければそのままでも構いません。 一通り入力が完了したら「セキュリティグループを作成」をクリックしてセキュリティグループを追加します。
セキュリティグループの挙動を確認する
作成したセキュリティグループをEC2サーバーに対応付けします。AWSコンソールからEC2インスタンスを起動する際に「既存のセキュリティグループを選択する」を選び、先程作成したセキュリティグループを選択してください。 ブラウザにEC2インスタンスのIPアドレスを入力してアクセスしてみましょう。 apacheなどのウェブサーバーが正常起動しポート解放が正しく設定されていればウェブページが表示されます。 試しにhttps://をつけて443番ポートにアクセスすると接続できません。これはセキュリティグループでhttpsが許可されていないため、アクセスしてもサーバーまで到達できなかったたのが原因です。 先ほどのセキュリティグループ設定でhttpsを追加してみましょう。ポートが開放されhttpsでのページ表示もできるようになります。
ポート開放の状態をチェックするツール
ブラウザからアクセスする以外にもポート開放の状況をチェックできるサイトやツールも公開されています。正常にポートが開放されているかだけではなく、意図しないポートが開放されていないかといった点もチェックしてください。 ただし、ポート開放のチェックはセキュリティホールを探している行為とも重なるため、度が過ぎると攻撃とみなされてしまう可能性もあります。AWS上で自己管理しているサーバー以外へのチェックは控えるようにしてください。
AWSの実務で使われるセキュリティグループ設定例
実際の商用サイトでは、一般ユーザーに使いやすいように広く公開しつつ悪意のあるアクセスからサーバーを守る必要があります。 そのため用途に応じて複雑なセキュリティグループの設定が必要となります。 これらは一度設定して終わりではなく、サイトの成長やシステムの変更のたびに細かく見直していく必要があります。以下に一例を示します。
公開用ウェブサーバー
ウェブ向けのアクセスは広く受け入れつつ管理用のアクセス許可は最小限にしぼりセキュリティを確保する事がポイントとなります。 公開ウェブサーバーのため、httpとhttpsについてはすべてのIPアドレスからアクセス許可とします。サーバー管理については会社の固定IPアドレスからのみ行えるようにしたいため、sshについては特定のIPアドレスからのみ許可とします。
MySQLなどのDBサーバー
ブログのデータベース用MySQL等のDBサーバーは通常、一般公開しないサーバーです。 ウェブサーバーからのMySQLアクセスと管理用のアクセスだけに絞ってアクセスを許可します。 ソースにWebサーバーのIPアドレス、プロトコルにMySQLを入力します。管理用のsshについては公開ウェブサーバーと同様に安全なIPアドレスからのアクセスだけを許可するようにすればよでしょう。
アクセス許可の小技
AWSのセキュリティグループにおいてソースの指定はIPアドレスだけでなくセキュリティグループ名で指定することもできます。 例えば「セキュリティグループAに割り当てられているサーバーからアクセスを許可」といった指定が可能です。 この方法を採用すれば、サーバーのIPアドレスが変わってもポート解放設定は影響を受けないため安心して作業を進められるでしょう。
まとめ
今回はAWSのセキュリティグループ設定によるポート開放の手順を紹介しました。 目的に応じて適切なセキュリティグループを設定し、安全なサーバー運用を目指しましょう。
この記事の監修者・著者

- AWSパートナー/Salesforce認定コンサルティングパートナー 認定企業
-
ITエンジニア派遣サービス事業を行っています。AWSやSalesforceなど専門領域に特化したITエンジニアが4,715名在籍し、常時100名以上のITエンジニアの即日派遣が可能です。
・2021年:AWS Japan Certification Award 2020 ライジングスター of the Year 受賞
・2022年3月:人材サービス型 AWSパートナー認定
・AWS認定資格保有者数1,154名(2024年6月現在)
・Salesforce認定コンサルティングパートナー
・Salesforce認定資格者276名在籍(2024年5月現在)
・LPIC+CCNA 認定資格者:472 名(2024年6月時点)
最新の投稿
- 2024-12-27営業インタビュー情報共有の活性化の中心に。SP企画部の新たな取り組み
- 2024-07-01営業インタビュー最短で当日にご提案可能。 OPE営業の対応が早い3つの理由
- 2024-07-01営業インタビュー研修見学ツアーが高評価!「お客様のOPEに対する期待を高め、継続に貢献できればと思います。」
- 2024-07-01営業インタビュー信頼関係を構築し、エンジニアの長期就業へ

- 求人・転職サイトや自社採用サイトを使っているが、自社に合ったITエンジニアが応募してこない…
- すぐに採用したいが、応募がぜんぜん集まらない
オープンアップITエンジニアをご検討ください!
当社のITエンジニア派遣サービスは
- 派遣スピードが速い!(最短即日)
- 4,500名のエンジニアから貴社にマッチした人材を派遣
- 正社員雇用も可能
こんな特長があり、貴社の事業やプロジェクトに合った最適なITエンジニアを派遣可能です。
まずは下記ボタンから無料でご相談ください。