Amazon EC2でHTTPSを有効にするにはどうすればよいですか?私たちのサイトはHTTPに取り組んでいます。
まず、HTTPSポート(443)を開く必要があります。それを行うには、 https://console.aws.Amazon.com/ec2/ に移動し、Security Groups
左側のリンクをクリックし、HTTPSも使用可能な新しいセキュリティグループを作成します。次に、実行中のインスタンスのセキュリティグループを更新するか、そのグループを使用して新しいインスタンスを作成します。
これらの手順を完了すると、EC2の作業は終了しますが、これはすべてアプリケーションの問題です。
この回答は、(GoDaddyとして)別のサイトでドメインを購入し、Certificate ManagerでAmazonの無料証明書を使用したい人に焦点を当てています
この回答では、Amazon Classic Load Balancer(有料)を使用しています 使用する前に価格をご覧ください
ステップ1-証明書マネージャーで証明書を要求する
[証明書マネージャー]> [証明書の要求]> [公開証明書の要求]に移動します。
ドメイン名にmyprojectdomainname.com
と*.myprojectdomainname.com
を追加して、次へ進みます
メールの検証と確認とリクエストを選択しました
(ドメインを購入したメールアカウントで)受け取ったメールを開き、リクエストを承認します
この後、myprojectdomainname.com
および*.myprojectdomainname.com
の検証ステータスが成功したかどうかを確認します。成功した場合は、ステップ2に進みます。
ステップ2-ロードバランサーへのセキュリティグループの作成
EC2で[セキュリティグループ]に移動し、セキュリティグループを作成して、httpおよびhttpsインバウンドを追加します
ステップ3-ロードバランサーの作成
EC2>ロードバランサー>ロードバランサーの作成>クラシックロードバランサー(3番目のオプション)
内部でLBを作成-プロジェクトのvpcロードバランサープロトコルでHttpとHttpsを追加
次へ>既存のセキュリティグループを選択
前の手順で作成したセキュリティグループを選択します
次へ> ACMから証明書を選択
ステップ1の証明書を選択します
次へ>
ヘルスチェックでpingパスを使用しました/(/index.htmlの代わりに1つのスラッシュ)
ステップ4-インスタンスをロードバランサーのセキュリティグループに関連付けます
EC2>インスタンス>プロジェクトをクリックします>アクション>ネットワーク>セキュリティグループの変更
ロードバランサーのセキュリティグループを追加します
ステップ5
EC2>ロードバランサー>作成したロードバランサーをクリック> DNS名(Aレコード)をコピーすると、myproject-2021611191.us-east-1.elb.amazonaws.com
のようなものになります
Route 53>ルートゾーンに移動>ドメイン名をクリック>レコードセットに移動(ここにドメインがない場合は、Domain Name: myprojectdomainname.com
およびType: Public Hosted Zone
でホストゾーンを作成します)
レコードタイプがあるかどうかを確認します[〜#〜] a [〜#〜](おそらくない)、名前が空のレコードセットを作成/編集し、タイプA、エイリアスはい、コピーしたDNSをターゲット
タイプ[〜#〜] a [〜#〜]、名前*.myprojectdomainname.com
、エイリアスYesおよびTargetの新しいレコードセットも作成します。ドメイン(myprojectdomainname.com)。これにより、www.myprojectdomainname.comおよびsubsite.myprojectdomainname.comでサイトにアクセスできるようになります。注:これを行うには、リバースプロキシ(Nginx/Apache)を構成する必要があります。
NS次のステップで使用する4つのネームサーバーの値をコピーすると、次のようになります。
ns-362.awsdns-45.com ns-1558.awsdns-02.co.uk ns-737.awsdns-28.net ns-1522.awsdns-62.org
EC2>インスタンスに移動し、IPv4パブリックIPもコピーします
ステップ6
ドメインを購入したドメイン登録サイト(私の場合はGoDaddy)
ルーティングをhttp : <Your IPv4 Public IP Number>
に変更し、[マスキングして転送]を選択します
ネームサーバー(NS)を、コピーした4 NSに変更します。有効になるまでに48時間かかることがあります
Amazon EC2インスタンスは単なる仮想マシンであるため、任意のサーバーで設定するのと同じ方法でSSLを設定します。
使用しているプラットフォームについては言及しないため、これ以上の情報を提供することは困難です。
Elastic Load Balacing を使用すると、アプリケーションインスタンスからSSL復号化をオフロードしたり、SSL証明書を集中管理したりするなど、ロードバランサーでのSSL終了がサポートされます。
古い質問ですが、回答で別のオプションに言及する価値があります。ドメインのDNSシステムがAmazon Route 53で定義されている場合、EC2の前でAmazon CloudFrontサービスを使用し、無料のAmazon SSL証明書をそれに添付できます。この方法では、コンテンツ配信を高速化するためのCDNを使用することと、HTTPSプロトコルでドメインを保護することの両方の恩恵を受けます。
また、主にデモとテストの目的で、ec2で手間のかからないhttpsを必要とする人々への回答もなければなりません。
Amazon API Gateway を使用することもできます。アプリケーションをAPI Gatewayの背後に置きます。これを確認してください [〜#〜] faq [〜#〜]
私が見つけた最高のリソースの1つは、レッツ暗号化を使用することでした.EC2インスタンスにHTTPSを持たせるにはELBもクラウドフロントも必要ありません。次の簡単な指示に従うだけです: let's encrypt リンクのステップ。
また、他の人が述べたように、セキュリティグループを編集してポート443を開くことも重要です
このリンクのサイト名 を変更することにより、証明書または他のWebサイトを表示できます。
90日間のみ有効であることを忘れないでください