Amazon EC2'de HTTPS kurulumu


Yanıtlar:


81

Öncelikle HTTPS bağlantı noktasını (443) açmanız gerekir. Bunu yapmak için https://console.aws.amazon.com/ec2/ adresine gidin ve Security Groupssoldaki bağlantıya tıklayın , ardından da HTTPS ile yeni bir güvenlik grubu oluşturun. Ardından, çalışan bir örneğin güvenlik grubunu güncelleyin veya bu grubu kullanarak yeni bir örnek oluşturun.

Bu adımlardan sonra, EC2 çalışmanız biter ve hepsi bir uygulama problemidir.


15
Örnek tarafından kullanılan Güvenlik Grubuna 443 numaralı bağlantı noktası için yeni bir kural ekleyebildim ve yeniden başlatmadan bile çalışmaya başladı.
Dmitry Efimenko

9
you can't change a security group of a running instance, even rebooting- Bu yanıtın gönderilmesinden bu yana bu sınırlamanın kaldırıldığını düşünüyorum.
Yuriy Nakonechnyy

12
Güvenlik grubunu değiştirmenize gerek yok, yapabilirsinizEdit inbound rules
Khoi

8
@ nikhil84 güvenlik grubuna HTTPS ekleyerek, makinede yalnızca adım 1 olan 443 numaralı bağlantı noktasını açtınız. İkinci olarak, sunucunuzu bu makinede 443 bağlantı noktasını (varsayılan 80 numaralı HTTP bağlantı noktası yerine) dinlemek ve HTTPS trafiğini kabul etmek için kurmanız gerekir. Hangi sunucuyu kullanıyorsunuz?
Yuriy Nakonechnyy

4
@ nikhil84 lütfen burada listelenen yönergeleri izleyin: digitalocean.com/community/tutorials/… Apache
HTTPD'de

45

Bu cevap, başka bir sitede (GoDaddy olarak) alan adı satın alan ve Sertifika Yöneticisi ile Amazon ücretsiz sertifikasını kullanmak isteyen birine odaklanmıştır.

Bu yanıt, Amazon Classic Load Balancer'ı (ücretli) kullanır, kullanmadan önce fiyatlandırmayı görün


Adım 1 - Sertifika Yöneticisinden bir sertifika isteyin

Sertifika Yöneticisi> Sertifika İste> Genel sertifika talep et seçeneğine gidin

Alan adı üzerinde ekleyecek myprojectdomainname.comve *.myprojectdomainname.comİleri'ye devam edeceksiniz

E-posta doğrulamasını ve Onayla ve İsteği seçin

Aldığınız e-postayı (etki alanını satın aldığınız e-posta hesabında) açın ve isteği onaylayın

Doğrulama durumu varsa Bundan sonra kontrol myprojectdomainname.comve *.myprojectdomainname.comsucess olan 2. Adıma devam edebilir sucess ise,

Adım 2 - Yük Dengeleyiciye Güvenlik Grubu Oluşturun

EC2'de Güvenlik Grupları> seçeneğine gidin ve Bir Güvenlik Grubu Oluşturun ve gelen http ve https'yi ekleyin

Şöyle bir şey olacak: görüntü açıklamasını buraya girin

Adım 3 - Yük Dengeleyiciyi Oluşturun

EC2> Yük Dengeleyici> Yük Dengeleyici Oluştur> Klasik Yük Dengeleyici (Üçüncü seçenek)

İçinde LB oluşturun - projenizin vpc'si Yük Dengeleyici Protokolü Http ve Https ekleyin görüntü açıklamasını buraya girin

Sonraki> Çıkış güvenlik grubunu seçin

Önceki adımda oluşturduğunuz güvenlik grubunu seçin

Sonraki> ACM'den sertifika seçin

1. adımın sertifikasını seçin

Sonraki >

Durum denetiminde ping yolunu kullandım / (/index.html yerine bir eğik çizgi)

4. Adım - Örneğinizi yük dengeleyicinin güvenlik grubuyla ilişkilendirin

EC2> Örnekler> projenize tıklayın> Eylemler> Ağ Oluşturma> Güvenlik Gruplarını Değiştirin

Yük Dengeleyicinizin Güvenlik Grubunu ekleyin

Adım 5

EC2> Yük Dengeleyici> Oluşturduğunuz yük dengeleyiciye tıklayın> DNS Adını (A Kaydı) kopyalayın, şöyle bir şey olacaktır: myproject-2021611191.us-east-1.elb.amazonaws.com

Route 53> Routes Zones'a gidin> alan adını tıklayın> Kayıt Kümelerine Git (Burada alanınız yoksa Domain Name: myprojectdomainname.comve ile barındırılan bir bölge oluşturun Type: Public Hosted Zone)

A tipinde (muhtemelen yok) bir kayıt kümeniz olup olmadığını kontrol edin , boş bir isimle kayıt kümesi oluşturun / düzenleyin, tip A, diğer ad Evet ve kopyaladığınız DNS'leri hedefleyin

Ayrıca A tipi , ad *.myprojectdomainname.com, takma addan oluşan yeni bir Kayıt Kümesi oluşturun ve Alanınızı hedefleyin (myprojectdomainname.com). Bu, sitenize www.myprojectdomainname.com ve subsite.myprojectdomainname.com ile erişimi mümkün kılacaktır. Not: Bunu yapmak için ters proxy'nizi (Nginx / Apache) yapılandırmanız gerekecektir.

NS'de, bir sonraki Adımda kullanmak üzere 4 Ad Sunucusu değerini kopyalayın, aşağıdaki gibi olacaktır:

ns-362.awsdns-45.com ns-1558.awsdns-02.co.uk ns-737.awsdns-28.net ns-1522.awsdns-62.org

EC2> Bulut Sunucuları'na gidin> Ve IPv4 Genel IP'sini de kopyalayın

6. Adım

Alanı satın aldığınız alan kayıt sitesinde (benim durumumda GoDaddy)

Yönlendirmeyi olarak değiştirin ve http : <Your IPv4 Public IP Number>Maskeleme ile Yönlendir'i seçin.

Ad Sunucularını (NS) kopyaladığınız 4 NS olarak değiştirin, bunun etkili olması 48 saat sürebilir


Https istiyorsam bir yük dengeleyici kullanmam gerekir mi?
Curtis

Tüm bunları yaptım ama bir tarayıcıda etki alanıma girdiğimde ERR_CONNECTION_TIMED_OUT alıyorum
Curtis

1
80 numaralı bağlantı noktasında yeni bir Hedef Grup ile bir yük dengeleyici yapmam ve ardından 80 numaralı bağlantı noktasını kullanmak için dinleyicileri düzenlemem gerekiyordu. Teşekkürler.
Curtis

1
@Curtis Yük dengeleyici, https'yi kullanmak için tek seçenek değildir, ayrıca
EC2'nizin

@DigaoParceiro 5. adımda ne yaptınız? DNS adı kopyalandı?
Prashant

10

Amazon EC2 bulut sunucuları yalnızca sanal makinelerdir, bu nedenle SSL'yi herhangi bir sunucuda ayarladığınız şekilde kurarsınız.

Hangi platformda olduğunuzdan bahsetmiyorsunuz, bu yüzden daha fazla bilgi vermek zor.


Merhaba - Bir T2.Micro Amazon Linux EC2 bulut sunucusu çalıştırıyorum. Sunucuyu güçlendirmek için node.js kullanıyorum. Sunucu komut dosyamda 443 numaralı bağlantı noktasını dinliyorum ve güvenlik grubum 443 numaralı bağlantı noktası için yapılandırılmış. HTTPS'yi etkinleştirmek için başka ne yapmam gerekiyor? Bir sertifikaya ihtiyacım var, değil mi? Bunu yapmakla ilgili olarak Elastic Beanstalk'a dayanmayan düzgün bilgiler bulmakta güçlük çekiyorum.
Stephen Tetreault

2
@SMT - ücretsiz ve otomatik yenilenen sertifikalar için letsencrypt.org'a bir göz atın . Düğüm kullanılarak nasıl kurulacağına dair pek çok bilgi (google üzerinden) var. AWS / EC2'ye özel yapmanız gereken başka bir şey yok.
Geoff Appleford

2
Yanıt için teşekkürler! Aslında geçen gün çalıştırdım ve bazı adımları düzene koydum. Bunu gelecekten okuyan varsa: github.com/MSCHF/aws-ec2-node-npm-setup
Stephen Tetreault

5

Eski bir soru ama cevaplarda başka bir seçenekten bahsetmeye değer. Etki alanınızın DNS sisteminin Amazon Route 53'te tanımlanmış olması durumunda Amazon CloudFront hizmetini EC2'nizin önünde kullanabilir ve ona ücretsiz bir Amazon SSL sertifikası ekleyebilirsiniz. Bu şekilde, hem daha hızlı bir içerik dağıtımı için bir CDN'ye sahip olmaktan hem de alanınızı HTTPS protokolü ile güvence altına almaktan faydalanacaksınız.


Bunu başarmak için adımlardan bahsedildiği herhangi bir referans veya blog var mı?
Saurabh Yadav

bu videoda atiqur rahman amazon sertifika yöneticisini kullanarak ssl sertifikası alın ve ardından EC2 bulut sunucusuyla bulut cephesini yapılandırın. http / 2 yapılandırmasından sonra otomatik olarak etkinleştirilir.
Sachithra Dilshan



1

Elastic Load Balacing'i kullanın , uygulama örneklerinden SSL şifre çözme yükünü boşaltmak ve SSL sertifikalarının merkezi yönetimini sağlamak dahil olmak üzere Yük Dengeleyicide SSL sonlandırmayı destekler.


16
ELB'yi sadece SSL sağlamak için kullanmıyorsunuz, bu aslında oldukça yanıltıcı bir cevap. Sunucunuzun ne olursa olsun SSL sağlaması gerekir, bu nedenle bir yük dengeleyici eklemek, ihtiyacınız yoksa yalnızca ek maliyettir. Aynı zamanda yazılımda SSL sonlandırmasıdır, bu nedenle yük dengeleyici ve sunucular arasındaki SSL, performansı etkileyen ek bir adımdır.
Thomas the Tank Engine

1
Yorumunuza katılıyorum. Ek maliyet katacak ve performansı etkileyecektir. Sunucularına yükleme ile ilgili tam gereksinimlerini bilmiyoruz, bu yüzden yine de gitmenin bir yolu olabilir. Ama "Sunucunuzun ne olursa olsun SSL sağlaması gerekiyor" yorumunuzu anlamıyorum, buna neden ihtiyaç var? Yük dengeleyici, SSL'nin boşaltılmasını da içerir. Teşekkürler.
Peter Hulsen

2
Evet doğru. SSL'yi basit bir şekilde sağlamak için bunu kullanabilirsiniz. Sadece örneklerin, kullanıcıların herhangi bir nedenle doğrudan erişebilecekleri genel DNS değerlerine sahip olduğunu düşünüyorum. Böyle bir şey olduysa, bunu da SSL kullanmaya zorlamak isteyebilirsiniz.
Thomas the Tank Engine

Bu yorumun geç olduğunu biliyorum, ancak anladığım kadarıyla kayıtlı bir alan adı kullanmak istiyorsanız ELB kullanmanız gerekir, çünkü EC2 IP'si 'kalıcı değildir' ve bu nedenle SSL sertifikanızı kullanamaz. Öte yandan, sadece Amazon'un sağladığı DNS'i kullanıyorsanız, ELB'ye ihtiyacı olmayabilir, kontrol etmedim.
hexicle

0

Bulduğum en iyi kaynaklardan biri haydi şifreleyelim kullanmaktı, EC2 bulut sunucunuzun HTTPS'ye sahip olması için ELB'ye veya cloudfront'a ihtiyacınız yok, sadece aşağıdaki basit talimatları izleyin: Sunucunuza Oturum Açmayı şifreleyelim ve bağlantıdaki adımları izleyelim.

Güvenlik gruplarınızı düzenleyerek 443 numaralı bağlantı noktasını açmış olmanız da başkalarının da söylediği gibi önemlidir.

Bu bağlantıdaki site adını değiştirerek sertifikanızı veya diğer web sitelerini görüntüleyebilirsiniz.

Lütfen sadece 90 gün geçerli olduğunu unutmayınız.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.