web-dev-qa-db-ja.com

Amazon S3バケット用にSSLを構成する方法

.NETアプリケーションを使用してデータのアップロードとダウンロードにAmazon S3バケットを使用しています。今私の質問は次のとおりです。SSLを使用してS3バケットにアクセスしたいです。 Amazon s3バケットにSSLを実装することはできますか?

128
Syam kumar

次のように、SSL経由でファイルにアクセスできます。

https://s3.amazonaws.com/bucket_name/images/logo.gif

バケットにカスタムドメインを使用する場合、S3とCloudFrontを独自のSSL証明書と共に使用できます(またはAmazon Certificate Managerを介して無料の証明書を生成します): http://aws.Amazon.com/cloudfront/ custom-ssl-domains /

140
reach4thelasers

今日、カスタムドメインSSL証明書が1か月あたり600ドルで追加されました。以下の招待にサインアップします。 http://aws.Amazon.com/cloudfront/custom-ssl-domains/

Update:SNI顧客が提供する証明書 現在利用可能 追加料金なし1か月あたり600ドルよりもはるかに安く、XPがほぼ殺されているので、ほとんどのユースケースでうまく機能するはずです。

@skalee AWSには、ポスターが求めるものを達成するためのメカニズムがあり、「Amazon s3バケット用のSSLを実装する」CloudFrontと呼ばれます。私は「実装」を「SSL証明書を使用する」として読んでいます。「OPが推測したと思われるHTTP URLにSを付けるだけではありません。

CloudFrontのコストはS3($ 0.12/GB)とまったく同じですが、SSLに関する追加機能が豊富にあり、追加費用なしで独自のSNI証明書を追加できるため、ドメインで「SSLを実装する」ための明らかな修正です。

27
Joseph Lust

Cloud Flareサービスを使用すると、これを簡単に行えることがわかりました。

バケットを設定し、バケットでウェブホスティングを有効にして、Cloudflare経由で目的のCNAMEをそのエンドポイントに向けます...もちろんサービス料金を支払います...しかし、$ 5- $ 20 VS $ 600ははるかに簡単です。

詳細はこちら: https://www.engaging.io/easy-way-to-configure-ssl-for-Amazon-s3-bucket-via-cloudflare/

10
Ralph Vugts

本当に必要な場合は、リダイレクトを検討してください。

たとえば、assets.my-domain.example.com/path/to/fileへの要求に応じて、my-bucket-name.s3.amazonaws.com/path/to/fileまたはs3.amazonaws.com/my-bucket-name/path/to/fileへの301または302リダイレクトを実行できます(最初の場合、my-bucket-nameにはドットを含めることはできません。そうしないと、S3証明書に記載されている*.s3.amazonaws.com, s3.amazonaws.comと一致しません)。

テストされていませんが、うまくいくと思います。ただし、注意点はほとんどありません。

最初のものは非常に明白で、このリダイレクトを取得するための追加リクエストです。また、ドメイン名レジストラが提供するリダイレクトサーバーを使用できるとは思いません(何らかの方法で適切な証明書をアップロードする必要があります)。そのためには、独自のサーバーを使用する必要があります。

2つ目は、ページのソースコードにドメイン名を含むURLを含めることができますが、たとえばユーザーが別のタブで写真を開くと、アドレスバーにターゲットURLが表示されます。

4
skalee

S3を直接使用することはできませんが、バケットからCloud Frontディストリビューションを作成できます。次に、証明書マネージャーに移動して証明書を要求します。 Amazonはそれらを無料で提供します。認定を正常に確認した人は、それをCloud Frontディストリビューションに割り当てます。また、httpをhttpsにリダイレクトするようにルールを設定することを忘れないでください。

Cloud Frontディストリビューションがあるため、SSL証明書を割り当てた個人ウェブサイトのように、Amazon S3でいくつかの静的ウェブサイトをホストしています。

3
Mika Kujapelto

前述のように、S3バケット用の無料の証明書を作成することはできません。ただし、Cloud Frontディストリビューションを作成してから、代わりにCloud Frontの証明書を割り当てることができます。ドメインの証明書を要求し、Cloud Front設定でCloud Frontディストリビューションに割り当てるだけです。この方法を使用して、静的ファイルを提供するだけでなく、SSL経由で静的Webサイトを提供しました。

静的なWebサイトの作成には、Amazonが最適です。 SSLを使用して静的なWebサイトを取得するのは本当に手頃です。

0
Mika Kujapelto