Amazon S3-HTTPS / SSL-가능합니까? [닫은]


177

나는 실제 답변이나 정보없이 이것에 관한 몇 가지 다른 질문을 보았습니다.

여기에 이미지가 있습니다 :
http://furniture.retailcatalog.us/products/2061/6262u9665.jpg

http://furniture.retailcatalog.us.s3.amazonaws.com/products/2061/6262u9665.jpg 로 리디렉션 중입니다.

나는 (https)이 필요합니다 :
https://furniture.retailcatalog.us/products/2061/6262u9665.jpg

그래서 retailcatalog.us에 와일드 카드 ssl을 설치했지만 다른 하위 도메인이 있지만 작동하지 않았습니다. https://furniture.retailcatalog.us.s3.amazonaws.com/products/2061/6262u9665.jpg 를 확인했습니다.

그리고 작동하지 않았습니다. 즉, Amazon S3 웹 사이트 자체에서 https가 작동하지 않았 음을 의미합니다.

이 작업을 어떻게합니까?


귀하의 질문은 당신이 원하는 것을 정확하게 설명하지 않습니다. http 요청을 https로 리디렉션하도록 하시겠습니까? 그렇다면 질문의 제목을 바꾸어 그 사실을 더 잘 설명해야합니다. 그것은 더 많은 사람들이이 질문을 찾고 대답하는 데 도움이 될 것입니다.
A. Levy

아니요, 이미지에 안전하게 액세스하고 싶습니다. 이게 가능해?
Kerry Jones

마지막 URL 은 여러분에게 문제가 될 수있는 인증서 오류와 함께 나에게도 효과적입니다
Michael Haren

네, 문제입니다. 나를 위해 처음부터 그것을 보지 못하게하고 인증서를 수동으로 확인해야합니다.
Kerry Jones

1
몇 년 후 게임에 늦었지만 SSL cnames는 cloudfront에서 작동합니다. 예 cdn.example.com은 s3 버킷을 가리키는 randomstring.cloudfront.net을 가리 킵니다. https : // cdn.example.com은 오류없이 콘텐츠를 제공하지만 URL을 직접 찾아 보려고하면 인증서 경고가 표시됩니다.
Neil McGuigan

답변:


182

프리미엄 서비스에서받은 답변입니다.

여보세요,

이는 실제로 SSL이 마침표 '.',> 문자를 포함하는 이름의 유효성을 검사하는 방식에 문제가 있습니다. 이 동작을 여기에 문서화했습니다.

http://docs.amazonwebservices.com/AmazonS3/latest/dev/BucketRestrictions.html

이 문제를 해결하는 유일한 방법은 해당 문자가 포함되지 않은 버킷 이름을 사용하는 것입니다. 대신 'furniture-retailcatalog-us'라는 버킷을 사용할 수 있습니다. 이렇게하면 HTTPS를 사용할 수 있습니다

https://furniture-retailcatalog-us.s3.amazonaws.com/

물론 CNAME DNS 레코드를 추가하여보다 친숙하게 만들 수 있습니다. 예를 들어

CNAME furniture-retailcatalog-us.s3.amazonaws.com의 images-furniture.retailcatalog.us.

희망이 도움이됩니다. 다른 질문이 있으면 알려주십시오.

아마존 웹 서비스

불행히도 "친숙한"CNAME은 인증서를 확인할 때 호스트 이름이 일치하지 않으므로 안전한 연결을 위해 실제로 사용할 수 없습니다. S3의 큰 누락 기능은 도메인에 대한 사용자 지정 인증서를 수락하는 것입니다.


2012 년 10 월 2 일 업데이트

@mpoisot에서 :

아마존이 제공 한 링크는 더 이상 https에 대해 아무 말도하지 않습니다. 나는 S3 문서를 둘러보고 가상 호스팅 페이지에서 이에 대한 작은 메모를 찾았습니다. http://docs.amazonwebservices.com/AmazonS3/latest/dev/VirtualHosting.html


2013 년 6 월 17 일 업데이트

@Joseph Lust에서 :

알았어! 확인 후 초대를 신청하십시오 : http://aws.amazon.com/cloudfront/custom-ssl-domains


22
S3 문서에서 쉽게 간과되는 매우 유용한 정보입니다.
Steffen Opel

1
아마존이 제공 한 링크는 더 이상 https에 대해 아무 말도하지 않습니다. 나는 S3 문서를 둘러 보았고
mpoisot

4
한 달에 $ 600입니다. : -o
loneboat

8
추가 비용없이 Cloudfront에 고유 한 SSL 인증서를 사용할 수 있습니다 . 따라서 600 $ / m 청구가 사라졌습니다.
schickling

4
@schickling 또한 CloudFront에서 SNI 또는 Dedicated IP SSL 중에서 선택할 수 있도록하여 이러한 변경을 수행 한 것에 주목할 가치가 있습니다 . 전용 IP SSL의 가격은 계속 $ 600이지만 SNI SSL은 무료입니다. 타겟팅하는 브라우저가 SNI를 지원하는지 확인하십시오.
Ryan Pendleton

111

나는 사실 이후 1 년을 알고 있지만 이것을 사용하면 해결됩니다 : https://s3.amazonaws.com/furniture.retailcatalog.us/products/2061/6262u9665.jpg

다른 사이트에서 이것을 보았습니다 ( http://joonhachu.blogspot.com/2010/09/helpful-tip-for-amazon-s3-urls-for-ssl.html ).


18
실제로 해결하지 않는 것 같습니다. 그것은 여전히 ​​아마존 도메인 이름 (s3.amazonaws.com)을 사용하므로 짜증납니다!
themihai

14
이것은 빨리 지 않습니다. 예, 도메인은 다르지만 S3 의 기존 버킷에서 SSL을 통해 콘텐츠를 제공 할 수 있습니다 . 이 체계가 없으면 S3 와일드 카드 SSL 인증서가 files.yourdomain.com.s3.amazonaws.com과 일치하지 않기 때문에 SSL 제공 파일에 대해서만 버킷을 생성해야합니다. secure-yourdomain.s3.amazonaws.com . 이제 하나 대신 두 개의 버킷을 관리해야합니다. 큰 문제는 아니지만 웹 앱에서는 절대적으로 필요한 것보다 더 복잡합니다.
앤드류

7
안녕하세요, 저는 당신이 "Joonha"에 넣은 참조 링크를 작성한 사람입니다. 놓칠 수없는 작은 보석은 그 기술 + "//"만 프로토콜 시작으로 사용하는 것입니다. 전자 상거래 개발 사업에서는 그 시점에서 신경 쓰지 않아도되기 때문에 "https : // 또는"http : // "대신"// "로 URL에 연결합니다.
Jason Sebring

4
더 이상 작동하지 않는 것 같습니다. PermanentRedirect 오류가 발생했습니다.
Paulo Casaretto

5
이것이 왜 일부 사람들에게는 효과가 있고 다른 사람들에게는 효과가 없는지에 대한 나의 새로운 답변을보십시오. 버킷이있는 지역이 중요합니다.
Nate

47

기본 US-EAST-1 지역 인 경우 payton109의 답변이 정확합니다. 버킷이 다른 지역에있는 경우 약간 다른 URL을 사용하십시오.

https://s3-<region>.amazonaws.com/your.domain.com/some/asset

<region>버킷 위치 이름은 어디에 있습니까 ? 예를 들어 버킷이 us-west-2(오레곤) 리 전에있는 경우 다음을 수행 할 수 있습니다.

https://s3-us-west-2.amazonaws.com/your.domain.com/some/asset

1
CNAME DNS 레코드를 사용하는 경우 도메인 확인에 관한 것이므로 경로가있는 URL로 리디렉션 할 수 없습니다. 참조 : stackoverflow.com/questions/32714351/...
세바스티앙 Lorber

이것은 저에게 효과적이며 가장 완전한 대답입니다.
besimple

2
이것은 좋지만 index.html로 리디렉션 규칙과 같은 정적 웹 사이트 호스팅 규칙을 무시합니다.
Kim T

이것은 devops 또는 sys-admin 팀이없는 웹 개발자에게 완벽한 솔루션입니다. 물론 자산에 우아한 도메인이 없지만 얼마나 많은 고객이 html 또는 기본 요청을 검사하고 도메인 URL에서 tsk tsk tsk? 많지 않다! 정적 자산을 애플리케이션에서 S3로 가져 오는 것은 처음부터 훌륭한 첫 단계입니다.
stwr667

8

앞에서 언급했듯이 직접 가능하지는 않지만 EC2 인스턴스에서 Apache 또는 nginx + SSL을 설정하고 원하는 도메인을 CNAME으로 설정하고 (사용자 지정이 아닌 도메인) S3 URL로 리버스 프록시 할 수 있습니다.


S3 리소스의 정규화 된 SSL 경로를 찾는 한 가지 방법은 AWS 콘솔을 사용하여 드릴 다운하는 것입니다. 전체 경로는 개요 탭의 맨 아래에 표시됩니다.
eric gilbertson
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.