株式会社エスロジカル
株式会社エスロジカル
SSL証明書(DV、OV、EV)、セキュリティ、Web開発、Linux開発、Go言語

HOME > 技術ドキュメント > AWS EC2 + Ubuntu 24.04 Web サーバー構築入門

AWS EC2 + Ubuntu 24.04 Web サーバー構築入門


AWS EC2(Elastic Compute Cloud)は、仮想サーバーをクラウド上で柔軟に起動・管理できるサービスです。
この記事では Ubuntu 24.04 LTS のインスタンスを起動し、Apache を使った Web サーバーを HTTPS で公開するまでの手順を解説します。
AWS のマネージド SSL 証明書(ACM)との使い分けについても説明します。


AWS マネジメントコンソールから EC2 インスタンスを起動します。

  1. EC2 ダッシュボードで「インスタンスを起動」をクリック
  2. AMI:Ubuntu Server 24.04 LTS(HVM)を選択
  3. インスタンスタイプt3.micro(無料利用枠)または用途に合わせて選択
  4. キーペア:新規作成(.pem ファイルをダウンロードして安全な場所に保管)
  5. ネットワーク設定:後述のセキュリティグループを設定
  6. ストレージ:デフォルト 8 GiB(必要に応じて変更)

セキュリティグループは EC2 インスタンスのファイアウォールです。 Web サーバーとして公開するために、以下のポートを開放します。

タイプ ポート ソース 用途
SSH 22 自分のIPアドレス サーバー管理(自分のIPのみに制限)
HTTP 80 0.0.0.0/0 HTTP アクセス(HTTPS へのリダイレクト用)
HTTPS 443 0.0.0.0/0 HTTPS アクセス(SSL証明書が必要)

SSH のソースを「マイ IP」にしておくことで、不特定多数からのブルートフォース攻撃を防げます。


EC2 インスタンスは起動・停止のたびにパブリック IP が変わります。 Elastic IP(固定 IP)を割り当てることで、ドメインの DNS 設定が安定します。

  1. EC2 ダッシュボードの左メニューから「Elastic IP アドレス」を選択
  2. 「Elastic IP アドレスを割り当て」をクリック
  3. 割り当てた Elastic IP をインスタンスに関連付ける

注意:Elastic IP はインスタンスに関連付けている間は無料ですが、 関連付けていない(使っていない)状態では料金が発生します。


# ダウンロードした .pem ファイルのパーミッションを設定
chmod 400 ~/Downloads/your-key.pem

# SSH 接続(Ubuntu AMI のデフォルトユーザーは ubuntu)
ssh -i ~/Downloads/your-key.pem ubuntu@your-elastic-ip

~/.ssh/config に登録しておくと便利です:

# ~/.ssh/config
Host myec2
    HostName your-elastic-ip
    User ubuntu
    IdentityFile ~/Downloads/your-key.pem
ssh myec2

# パッケージを最新化
sudo apt update && sudo apt upgrade -y

# タイムゾーンを日本時間に設定
sudo timedatectl set-timezone Asia/Tokyo

# ホスト名を変更(任意)
sudo hostnamectl set-hostname myserver

sudo apt install -y apache2
sudo systemctl enable apache2
sudo systemctl start apache2

EC2 のセキュリティグループでポート 80/443 を開けていれば、UFW は無効のままでも動作します(セキュリティグループが代わりに制御します)。
UFW を有効にする場合は、セキュリティグループと二重で管理することになります。

SSL/TLS の設定手順は Apache インストール(Ubuntu 24.04) を参照してください。


AWS には ACM(AWS Certificate Manager)という無料のマネージド SSL 証明書サービスがあります。
ただし ACM には重要な制約があります。

ACM(AWS マネージド) 独自 SSL証明書
使える場所 ALB・CloudFront・API Gateway のみ EC2 直接・どこでも使える
EC2 直接利用 ✕ 不可 ✓ 可能
証明書種別 DV のみ DV・OV・EV を選択可能
企業認証(OV/EV) ✕ 不可 ✓ 可能
コードサイニング ✕ 不可 ✓ 可能
有効期間管理 自動更新 手動更新(API 自動化も可能)

EC2 に直接 Apache/Nginx を立て、HTTPS で公開する構成では ACM は使えません。
この場合は別途 SSL証明書を取得して Apache/Nginx に設定する必要があります。
また、会社のサイトや EC サイトで企業の実在性を示したい場合は OV・EV 証明書が必要で、これも ACM では対応できません。

エスロジカルでは RapidSSL(DV)3,960円/1年(税込)〜から、 OV・EV・ワイルドカードまで幅広く取り扱っています。 インストール代行も承っているため、設定に不安がある場合はお気軽にご相談ください。

SSL証明書の購入・詳細はこちら / DV・OV・EV の違い / インストール代行サービス


項目 注意点
インスタンス料金 停止中も EBS(ストレージ)料金は発生する
Elastic IP インスタンスに関連付けていない場合は課金される
データ転送料金 アウトバウンド通信に料金が発生(インバウンドは無料)
無料利用枠 新規アカウントから 12 ヶ月間、t3.micro 750 時間/月など

Apache インストール(Ubuntu 24.04) — SSL 有効化、バーチャルホスト設定
Nginx SSL/TLS 設定(Ubuntu 24.04) — HTTPS 設定、リバースプロキシ
UFW・Fail2ban 設定(Ubuntu 24.04) — SSH ブルートフォース対策
SSH 公開鍵認証・セキュリティ設定(Ubuntu 24.04)


← 技術ドキュメント一覧へ戻る