2017-03-07 10 views
0

私は2つの異なるドメイン(.com.auと.co.nz)が指すec2インスタンスを持っています。これは正常に動作します。複数のSSL証明書が1つのEC2インスタンスにあります

私は両方のドメインにSSLを設定しようとしています。現在私はLetsEncryptを使用して、co.nzドメイン用のSSLを設定しましたが、現在は.com.auに対しても同じことをしたいと考えています。

私はここに、ガイド続いている:

https://www.haktansuren.com/installing-free-letsencrypt-ssl-multiple-domains-sub-domains-amazon-web-services-aws-ec2-simple-way/

をしかし、私はSSLLabs.comを通じて.com.auサイトを実行すると、私は、「証明書の名前の不一致エラー」を取得し、私は直進しようとすると、 .comドメインに私はこれを取得する(クロムから) "このサーバは、それが** com.auであることを証明することができず、そのセキュリティ証明書は** co.nzから得たものである"

.com.auドメインはss.confファイルの2番目の「仮想ホスト」エントリであり、注文を変更すると.co.nzドメインと同じエラーが発生するため、唯一のようですエントリの何かか何かを読んで?任意のヘルプ

+0

のように見える私は、これは[スーパーユーザー](http://superuser.com)または[サーバー障害](http://serverfault.comための質問だと思います)。おそらくあなたのApache(?)設定を表示したいでしょう。ここで有効にしようとしていることは、SNIと呼ばれます.SNIは、ブラウザーがWebサーバーに要求されるホストを伝え、正しい証明書が提供されるようにします。 –

答えて

0
  1. ため

    おかげでたくさんあなたがACMを使用したい任意のドメインのための無料の証明書を作成することができます。

  2. Elastic Load Balancerを作成し、作成したばかりの証明書を選択します。

弾性ロードバランサにEC2インスタンスを接続してのベストプラクティスは、起動設定を作成して、自動スケーリンググループを作成し、EC2インスタンスのASGハンドルの作成をさせることです。 AWSでは、いつでもインスタンスを強制終了することができますが、単一のEC2インスタンスに頼るのは良い方法ではありません。一時記憶域に保存した可能性のあるすべてのデータを突然失う可能性があります。アパッチの場合

0

あなたはどちらかELBまたはApache/nginxのでSSL証明書を終了することができ

(サーバー)レベル

マルチテナント(マルチクライアント)アーキテクチャの場合、我々はする必要があるかもしれません既存のELB設定では動作しない単一のELBの下で異なる顧客(異なるドメイン - * .abc.com、* .xyz.com)をサポートします。

解決策:以下のようにELBにリスナーを追加することによって、これを行うことができます(代わりにHTTPSの - 443) - TCP 443これはその後、443件のリクエストを通過するには、サーバーレベル

でSSL証明書を終了することができます

外部ベンダー(GoDaddyなど)から証明書を購入し、&をインストールしてサーバーレベルで証明書を終了する必要があります。

例えば、Apacheのバーチャルホストは

NameVirtualHost *:443 
<VirtualHost *:443> 
     ServerName abc.com 

     ####abc HTTPS Certificate 
     SSLEngine on 
     SSLCertificateFile /opt/organization/site/ssl_keys/abc/abc_gd.crt 
     SSLCertificateKeyFile /opt/organization/site/ssl_keys/abc/abc.pem 
     SSLCertificateChainFile /opt/organization/site/ssl_keys/abc/abc_gd_bundle.crt 

     WSGIScriptAlias//opt/organization/site/deployment-config/abc.wsgi 

     ServerSignature On 
     Alias /media/ /opt/organization/site/media/ 
     <Directory /opt/organization/site/media/> 
     Order deny,allow 
     Allow from all 
     </Directory> 
</VirtualHost> 

NameVirtualHost *:80 
<VirtualHost *:80> 
     ServerName abc.com 

     #Rewrite to HTTPS in case of HTTP 
     RewriteEngine On 
     RewriteCond %{SERVER_NAME} abc.com 
     RewriteCond %{HTTP:X-Forwarded-Proto} !https 
     RewriteRule . https://%{SERVER_NAME}%{REQUEST_URI} [L,R] 

     WSGIScriptAlias//opt/organization/site/deployment-config/abc.wsgi 
     ServerSignature On 
     Alias /media/ /opt/organization/site/media/ 
     <Directory /opt/organization/site/media/> 
     Order deny,allow 
     Allow from all 
     </Directory> 
</VirtualHost> 
関連する問題