1. Crear el bucket
- Crear-lo a la arrel, amb el mateix nom que volem per el website, p.e.
hola.exemple.com
. Escollir al zona que estarà mçés propera als usuaris (veure CloudFront però). - Desmarcar Block public access for this bucket
- Create Bucket
Fer que el bucket sigui de tipus Static web hosting
Ana1r a Properties->Static web hosting
y activar
Canviar la bucket policy
Anar a Permissions->Bucket policy
i posar:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "PublicReadGetObject",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::hola.exemple.org/*"
}
]
}
2. Crear el registre DNS
Anar a Route 53 i crear hola.exemple.com
. De moment, el deixam així, posteriorment assignarem Route trafic to a la distribució de Cloud Front que crearem més endavant.
3. Crear el certificat
Anar a Certificate manager i demanar el certificat per a hola.exemple.com
. Esperar uns segons, entrar a la petició i donar-li a Crear registre DNS (per validar la propietat del domini. Esperar un minut al issue.
Refrescar pantalla de tant en tant fins que el certificat ens sigui lliurat.
4. Crear la distribució per apuntar a https
A Cloud Front creaar una distribució.
- Escollir Origin domain el bucket, quan ens pregunti si volem usar el webbpoiunt, dir-li que si
- Escollir Redirect http to https
- Donar-li a CNAME i posar
hola.exemple.com
- Escollir el certificat
- Guardar la distribució
Esperar un minut fins que s’activi la distribució, pujar alguna cosa al bucket i provar.
5. Editar el registre DNS
ASra que ja tenim la distribució (que té un domini de tipus xyz.cloudfront.net), anar al registre de route 53, editar-lo i escollir Route trafic to a la distribució de Cloud Front creada al punt anterior.
Extra bonus: Crear un usuari per pujar fitxers al website
Anar a Users->Policies->Create policy
Escollir JSON i posar:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:GetBucketLocation",
"s3:ListBucket",
"s3:GetObject",
"s3:PutObject"
],
"Resource": [
"arn:aws:s3:::*",
"arn:aws:s3:::/*"
]
}
]
}
Posar-li per nom web_file_operator o similar. Crear usuari, escollir Attach policies directly, escollir web_file_operator. Esperar a que es crei.
Escollir l’usuari->Security credentials->Crear access keys->Other->Create access key
Prendre nota de l’acces key i del secret access key.