
Hiya emberek!
Ebben az oktatóanyagban megmutatom, hogyan lehet egy statikus webhelyet HTTPS-sel üzemeltetni az AWS-en, egy egyedi domainnel. Mindez az AWS free tier használatával lehetséges.
Azok a szolgáltatások azonban, amelyeket használni fogunk, kis költségekkel járnak. Általánosságban elmondható, hogy ezek nem haladhatják meg az 1 dollárt / hó.
A következő AWS-szolgáltatások kombinációját fogjuk használni:
—S3
- 53. út
- Tanúsítványkezelő
- CloudFront
Menjünk bele!
Telepítse az S3 vödröket
Először két S3 vödörre lesz szükséged , mindkettőnek meg kell egyeznie az egyéni domainnévvel a másodikkal, beleértve a www aldomént.
1. vödör:mywebsite.com
2. vödör:www.mywebsite.com
Az első vödör (mywebsite.com) a webhely fő vázlata. Ez tartalmazza a statikus webhely összes fájlját és eszközét.

Ezután beállítjuk ezt a vödröt a statikus webhelyek tárolásához. Ezt a vödör Tulajdonságok lapján találja meg, és megtartjuk az itt megadott alapértelmezéseket, a webhely indexével az index.html értékre állítva.

Ezt a csoportot nyilvánosan hozzáférhetővé kell tennünk, mivel a felhasználó böngészőjének hozzá kell férnie a csoport fájljaihoz a weboldal megjelenítéséhez. Ezt úgy tehetjük meg, hogy az Engedélyek fülön beállítunk egy vödör házirendet.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "PublicReadGetObject", "Effect": "Allow", "Principal": "*", "Action": "s3:GetObject", "Resource": "MY_BUCKET_ARN" } ]}
Ez egy egyszerű házirend, amely csak a vödörben lévő objektumok nyilvános olvasási hozzáférését teszi lehetővé. Most, ha a vödör statikus tárhely-konfigurációjában meghatározott végpont felé tart, látnia kell a webhelyét.

Előrehalad! De ennél jobbat is tehetünk.
A második csoportot (www.mywebsite.com) üresen hagyjuk, de úgy állítjuk be, hogy átirányítsuk az első csoportunkra, HTTP protokollként (később HTTPS-vé alakítjuk).

A vödrök készen állnak az indulásra!
Tartományok konfigurálása az 53-as útvonallal
Tehát webhelye működik és működik, de csak a végcsoporton keresztül érhető el, és nem az egyéni tartományon keresztül. Változtassunk ezen.
Irány az 53-as út . Ha regisztrálta domainjét az Amazon regisztrátoránál, látnia kell, hogy egy tárolt zóna van beállítva az Ön számára két rekordkészlettel. Egy a névkiszolgálóhoz (NS) és egy a SOA-hoz.
Mindössze annyit kell tennünk, hogy hozzon létre még két rekordkészletet, amelyek az S3 vödör végpontjaira mutatnak.
Minden rekordkészlethez:
- Típus: A - IPv4 cím
- Alias: Igen
- Alias Target: az S3 webhely végpontja, amely megegyezik a Név beállításával.

Most elindulhatunk az egyéni URL-en ... és voilà!
Már majdnem ott vagyunk, de egy utolsó dolog hiányzik ...

Megjegyzés : Ha a domainjét egy másik domain-regisztrátornál (nem az Amazon-nál) regisztrálták, akkor ennek beállításához különböző lépéseket kell végrehajtania. Általában hozzá kell adnia egy CNAME rekordot az S3 vödör fő végpontjának értékével.
Hibaelhárítás :
Ha törölte azt a hosztolt zónát, amelyet az Amazon a domain első regisztrálásakor hozott létre (ezt azért tettem, mert a hosztolt zónáknak bizonyos költségei vannak), akkor a semmiből kell létrehoznia egy új hosztolt zónát.
- Válassza a „Tárolt zóna létrehozása” lehetőséget, és állítsa be a domain nevet, például „sajátwebhely.com”
- Ez generál néhány új rekordkészletet az NS és a SOA típusokhoz.
- Lépjen be a regisztrált tartományba, és frissítse a Névkiszolgálók értékeit az új NS rekordkészletben létrehozott értékekre.
Tanúsítvány kérése
Félelmetes, a webhelyet mostantól az egyéni URL segítségével tárolják! Azonban csak HTTP protokollon keresztül férhetünk hozzá.
Mindig gondoskodnunk kell webhelyeink biztonságáról a HTTPS protokoll használatával. Ez megvédi webhelyünket és felhasználóinkat a rosszindulatú injekciós támadásoktól és garantálja a hitelességet.
Fej tanúsítványkezelőben AWS konzol és kérjen új nyilvános tanúsítvány (ez ingyenes). A rendszer kéri, hogy adja meg a védeni kívánt domainneveket.

A tanúsítvány kiállítása előtt az Amazon-nak képesnek kell lennie arra, hogy ellenőrizze, hogy Ön a megadott domain tulajdonosa-e.
Két ellenőrzési módszer közül választhat: E-mail vagy DNS.
Az e-mail általában egyszerűbb, de biztosítani kell, hogy hozzáférjen a domain regisztrálásához használt e-mailhez. Alternatív megoldásként, ha az Amazon Registerar és az Route53 programot használta, kiválaszthatja a DNS-módszert. Ehhez meg kell adnia néhány speciális rekordkészletet a hosztolt zónához, de ez többnyire önnek automatizált, így meglehetősen egyszerű.
It can take a few minutes for the certificate to be issued after validation.
When its all done we can continue to the final step!
Configuring CloudFront
For the final step we are going to use CloudFront which allows us to use the new SSL certificate to serve the website with HTTPS. CloudFront also speeds up the distribution of web content by storing it at multiple edge locations and delivering from the closest edge location to a user.
We need two new web distributions, one for each S3 bucket. Head to CloudFront in the AWS Console and create the first web distribution.
There are lots of settings available to create a web distribution, but for the basics we only need to change five:
- Origin Domain Name: Set this to the S3 website endpoint for one of the buckets. Important: This field will give you some auto-complete options with your S3 bucket names. However, using these can cause issues with redirecting to the bucket endpoint. So instead use the bucket endpoint directly.
- Origin Id: This populated for you when you enter Origin Domain Name.
- Viewer Protocol Policy: Set to “Redirect HTTP to HTTPS”.
- Alternate Domain Names: This should match the name of the S3 bucket you’re pointing to. For example “mywebsite.com”.
- SSL Certificate: Select “Custom SSL Certificate” and select your new certificate from the dropdown.
Do this again for the second S3 bucket.


The distributions can take a while to spin up, so while we wait, let’s do the finishing steps.
Back in S3, go to your secondary bucket (www.mywebsite.com), in the Properties tab and under Static Website Hosting set the redirect protocol to HTTPS.
Finally, head back to Route53. We need to update the custom A records we created to now target the CloudFront distributions rather than the S3 buckets. For each record, change the Alias Target and select the CloudFront distribution available in the dropdown.
Note: Again, if you are using another DNS service you’ll need to go update the CNAME record from there to point to the CloudFront domain name.

And there you have it! Your beautiful website is now available at the custom domain and served with HTTPS!

Thanks for reading! I hope this guide was useful and enjoyable, I’d love to know if you found it helpful.