Làm cách nào để bật HTTPS trong Amazon EC2? Trang web của chúng tôi đang hoạt động trên HTTP.
Làm cách nào để bật HTTPS trong Amazon EC2? Trang web của chúng tôi đang hoạt động trên HTTP.
Câu trả lời:
Đầu tiên, bạn cần mở cổng HTTPS (443). Để làm điều đó, bạn truy cập https://console.aws.amazon.com/ec2/ và nhấp vào Security Groups
liên kết bên trái, sau đó tạo một nhóm bảo mật mới có sẵn HTTPS. Sau đó, chỉ cần cập nhật nhóm bảo mật của một phiên bản đang chạy hoặc tạo một phiên bản mới bằng cách sử dụng nhóm đó.
Sau các bước này, công việc EC2 của bạn đã hoàn tất và tất cả chỉ là sự cố ứng dụng.
you can't change a security group of a running instance, even rebooting
- Tôi nghĩ rằng giới hạn này đã bị loại bỏ kể từ khi câu trả lời này được đăng.
Edit inbound rules
Câu trả lời này tập trung vào những người mua miền ở một trang web khác (như GoDaddy) và muốn sử dụng chứng chỉ miễn phí của Amazon với Trình quản lý chứng chỉ
Câu trả lời này sử dụng Amazon Classic Load Balancer (trả phí), hãy xem giá trước khi sử dụng
Bước 1 - Yêu cầu chứng chỉ với Trình quản lý chứng chỉ
Đi tới Trình quản lý chứng chỉ> Yêu cầu chứng chỉ> Yêu cầu chứng chỉ công khai
Trên Tên miền, bạn sẽ thêm myprojectdomainname.com
và *.myprojectdomainname.com
và tiếp tục
Chọn xác thực Email và Xác nhận và Yêu cầu
Mở email bạn đã nhận được (trên tài khoản email mà bạn đã mua miền) và đáp ứng yêu cầu
Sau đó, kiểm tra xem tình trạng xác nhận của myprojectdomainname.com
và *.myprojectdomainname.com
là thành công, nếu là những thành công bạn có thể tiếp tục Bước 2
Bước 2 - Tạo nhóm bảo mật cho bộ cân bằng tải
Trên EC2, đi tới Nhóm bảo mật> và Tạo Nhóm bảo mật và thêm http và https vào
Bước 3 - Tạo Cân bằng tải
EC2> Load Balancer> Create Load Balancer> Classic Load Balancer (Tùy chọn thứ ba)
Tạo LB bên trong - vpc của dự án của bạn Trên Giao thức cân bằng tải, thêm Http và Https
Tiếp theo> Chọn thoát nhóm bảo mật
Chọn nhóm bảo mật mà bạn đã tạo ở bước trước
Tiếp theo> Chọn chứng chỉ từ ACM
Chọn chứng chỉ của bước 1
Tiếp theo>
trong phần Kiểm tra sức khỏe, tôi đã sử dụng đường dẫn ping / (một dấu gạch chéo thay vì /index.html)
Bước 4 - Liên kết phiên bản của bạn với nhóm bảo mật của trình cân bằng tải
EC2> Phiên bản> nhấp vào dự án của bạn> Hành động> Mạng> Thay đổi Nhóm bảo mật
Thêm Nhóm bảo mật của Bộ cân bằng tải của bạn
Bước 5
EC2> Load Balancer> Nhấp vào bộ cân bằng tải mà bạn đã tạo> sao chép Tên DNS (Bản ghi A), nó sẽ giống như myproject-2021611191.us-east-1.elb.amazonaws.com
Đi tới Tuyến đường 53> Khu vực tuyến đường> nhấp vào tên miền> Đi tới Bộ hồ sơ (Nếu bạn không có miền của mình ở đây, hãy tạo một khu vực được lưu trữ với Domain Name: myprojectdomainname.com
và Type: Public Hosted Zone
)
Kiểm tra xem bạn có loại bản ghi A (có thể không), tạo / chỉnh sửa tập hợp bản ghi với tên trống, loại A, bí danh Có và Nhắm mục tiêu dns mà bạn đã sao chép
Đồng thời tạo Tập bản ghi mới gồm loại A , tên *.myprojectdomainname.com
, bí danh Có và Nhắm mục tiêu miền của bạn (myprojectdomainname.com). Điều này sẽ giúp bạn có thể truy cập trang web của bạn với www.myprojectdomainname.com và subsite.myprojectdomainname.com. Lưu ý: Bạn sẽ cần phải định cấu hình proxy ngược của mình (Nginx / Apache) để làm như vậy.
Trên NS sao chép 4 giá trị Máy chủ Tên để sử dụng trong Bước tiếp theo, nó sẽ giống như sau:
ns-362.awsdns-45.com
ns-1558.awsdns-02.co.uk
ns-737.awsdns-28.net
ns-1522.awsdns-62.org
Đi tới EC2> Phiên bản> Và sao chép IP Công khai IPv4 nữa
Bước 6
Trên trang web đăng ký miền mà bạn đã mua miền (trong trường hợp của tôi là GoDaddy)
Thay đổi định tuyến thành http : <Your IPv4 Public IP Number>
và chọn Chuyển tiếp với che
Thay đổi Máy chủ Định danh (NS) thành 4 NS mà bạn đã sao chép, điều này có thể mất 48 giờ để có hiệu lực
Các phiên bản Amazon EC2 chỉ là máy ảo nên bạn sẽ thiết lập SSL giống như cách bạn thiết lập nó trên bất kỳ máy chủ nào.
Bạn không đề cập đến nền tảng bạn đang sử dụng, vì vậy rất khó để cung cấp thêm bất kỳ thông tin nào.
Một câu hỏi cũ nhưng đáng nói là một lựa chọn khác trong các câu trả lời. Trong trường hợp hệ thống DNS của miền của bạn đã được xác định trong Amazon Route 53, bạn có thể sử dụng dịch vụ Amazon CloudFront trước EC2 của mình và đính kèm chứng chỉ Amazon SSL miễn phí vào đó. Bằng cách này, bạn sẽ được hưởng lợi từ việc có CDN để phân phối nội dung nhanh hơn và cũng đảm bảo miền của bạn với giao thức HTTPS.
Cũng phải có câu trả lời cho những người muốn có một https miễn phí rắc rối trên ec2 cho mục đích chủ yếu là demo và thử nghiệm, một cách họ có thể đạt được điều đó rất nhanh là:
Với câu trả lời của tôi ở đây mô tả Cách bạn có thể đạt được https cho mục đích thử nghiệm trong vài phút với EC2 mà không gặp rắc rối khi tạo chứng chỉ
Sử dụng Elastic Load Balacing , nó hỗ trợ kết thúc SSL tại Load Balancer, bao gồm giảm tải giải mã SSL từ các phiên bản ứng dụng và cung cấp quản lý tập trung chứng chỉ SSL.
Bạn cũng có thể sử dụng Amazon API Gateway . Đặt ứng dụng của bạn đằng sau API Gateway. Vui lòng kiểm tra Câu hỏi thường gặp này
Một trong những tài nguyên tốt nhất mà tôi tìm thấy đang sử dụng hãy mã hóa, bạn không cần ELB cũng như mặt tiền đám mây cho phiên bản EC2 của mình để có HTTPS, chỉ cần làm theo hướng dẫn đơn giản sau: hãy mã hóa Đăng nhập vào máy chủ của bạn và làm theo các bước trong liên kết.
Điều quan trọng như những người khác đã đề cập là bạn đã mở cổng 443 bằng cách chỉnh sửa các nhóm bảo mật của mình
Bạn có thể xem chứng chỉ của mình hoặc bất kỳ trang web nào khác bằng cách thay đổi tên trang web trong liên kết này
Xin đừng quên rằng nó chỉ có giá trị trong 90 ngày