por Georgia Nola # Alojamiento de sitios simple con Amazon S3 y HTTPS ¡Hola amigos! En este tutorial, le mostraré cómo alojar un sitio web estático con HTTPS en AWS con un dominio personalizado. Todo esto es posible utilizando la capa gratuita de AWS Sin embargo, los servicios que vamos a utilizar incurren en algunos pequeños cargos. En términos generales, estos no deberían exceder $ 1 / mes Utilizaremos una combinación de los siguientes servicios de AWS: âÃÂÃÂS3 âÃÂàRuta53 âÃÂàAdministrador de certificados âÃÂàCloudFront *¡Vamos a entrar en esto!* Configure sus cubos S3 Primero, necesitarás **dos cubos S3, ambos deben coincidir con su nombre de dominio personalizado con el segundo, incluido el subdominio www Cubo 1: Cubo 2: El primer segmento (mywebsite.com) es el segmento principal de su sitio. Esto contiene todos sus archivos y activos para su sitio web estático A continuación, configuramos este cubo para el alojamiento de sitios estáticos. Puede encontrar esto en la pestaña Propiedades del depósito, y vamos a mantener los valores predeterminados provistos aquí con el índice del sitio establecido en index.html También debemos hacer que este cubo sea accesible, ya que el navegador de un usuario necesitará acceder a los archivos del cubo para mostrar el sitio web. Podemos hacer esto configurando una Política de depósito en la pestaña Permisos { "Versión": "2012-10-17", "Declaración": [ { "Sid": "PublicReadGetObject", "Effect": "Permitir", "Principal":"Acción": "s3:GetObject", "Recurso": "MY_BUCKET_ARN"} ]} Esta es una política simple que solo permitirá el acceso público de lectura de objetos en el depósito. Ahora, si se dirige al punto final definido en la configuración de alojamiento estático del depósito, debería ver su sitio web ¡Progreso! Pero podemos hacerlo mejor que eso. El segundo depósito (www.mywebsite.com) lo dejaremos vacío pero lo configuraremos para redirigir a nuestro primer depósito usando HTTP como protocolo (lo haremos HTTPS más tarde) ¡Tus baldes ya están listos para usar! Configurar dominios con Route53 Por lo tanto, su sitio web está en funcionamiento, pero solo se puede acceder a él a través del punto final del depósito y no a través de su dominio personalizado. Vamos a cambiar eso Dirigirse a **Route53 Si ha registrado su dominio con Amazon Registrar, debería ver que se ha configurado una zona alojada para usted con dos conjuntos de registros. Uno para servidor de nombres (NS) y otro para SOA Todo lo que tenemos que hacer es crear dos conjuntos de registros más para apuntar a los puntos finales del depósito S3 Para cada conjunto de registros: âÃÂàTipo: A âÃÂàDirección IPv4 âÃÂàAlias: Sí âÃÂàAlias ​​Target: el extremo del sitio web de S3 que coincide con lo que configuró para Nombre ¡Ahora podemos dirigirnos a la url personalizada y listo! Ya casi llegamos, pero hay una última cosa que nos falta. ÃÂæ **Nota: si su dominio está registrado con otro registrador de dominios (que no sea Amazon), deberá seguir algunos pasos diferentes para configurarlo. Por lo general, deberá agregar un registro CNAME con un valor del punto final principal de los depósitos de S3. **Solución de problemas Si eliminó la zona alojada que Amazon creó cuando registró el dominio por primera vez (lo he hecho porque las zonas alojadas incurren en algunos cargos), usted Tendré que crear una nueva zona alojada desde cero. - Seleccione âÃÂÃÂCrear Hosted ZoneâÃÂày configure el nombre de dominio, por ejemplo âÃÂÃÂmywebsite. comâÃÂà- Esto generará algunos conjuntos de registros nuevos para los tipos NS y SOA - Ingrese a su dominio registrado y actualice los valores de los servidores de nombres a los generados en el nuevo conjunto de registros NS Solicitar un Certificado Impresionante, ¡el sitio ahora está alojado con la URL personalizada! Sin embargo, solo podemos acceder a él a través del protocolo HTTP. Siempre debemos asegurarnos de que nuestros sitios estén protegidos mediante el protocolo HTTPS. Esto protege nuestro sitio y a los usuarios de ataques de inyección maliciosos y garantiza la autenticidad. Dirigirse a **Administrador de certificados** en la consola de AWS y solicite un nuevo certificado público (esto es gratis). Se le pedirá que ingrese los nombres de dominio que desea proteger Antes de que se pueda emitir el certificado, Amazon debe poder verificar que eres el propietario de los dominios especificados. Puede elegir entre dos métodos de verificación: correo electrónico o DNS El correo electrónico es generalmente más simple, pero deberá asegurarse de que puede acceder al correo electrónico utilizado para registrar el dominio. Alternativamente, si usó Amazon Registrar y Route53, puede seleccionar el método DNS. Esto requiere que agregue algunos conjuntos de registros específicos a la zona alojada, pero esto está automatizado en su mayoría, por lo que es bastante simple. El certificado puede tardar unos minutos en emitirse después de la validación. ¡Cuando todo esté listo, podemos continuar con el paso final! Configuración de CloudFront Para el paso final vamos a utilizar **CloudFront **que nos permite usar el nuevo certificado SSL para servir el sitio web con HTTPS. CloudFront también acelera la distribución de contenido web al almacenarlo en múltiples ubicaciones de borde y entregarlo desde la ubicación de borde más cercana a un usuario. Nosotros necesitamos **dos distribuciones web nuevas, una para cada depósito S3. Diríjase a CloudFront en la consola de AWS y cree la primera distribución web Hay muchas configuraciones disponibles para crear una distribución web, pero para lo básico solo necesitamos cambiar cinco: Nombre de dominio de origen: configúrelo en el punto final del sitio web de S3 para uno de los depósitos. Importante: este campo le brindará algunas opciones de autocompletado con los nombres de sus depósitos de S3. Sin embargo, su uso puede causar problemas con el redireccionamiento al extremo del depósito. Entonces, en su lugar, use el punto final del depósito directamente. Id. de origen: se completa cuando ingresa el Nombre de dominio de origen. Política de protocolo del visor: establezca en âÃÂÃÂRedirigir HTTP a HTTPSâÃÂÃÂ. Nombres de dominio alternativos: debe coincidir con el nombre del depósito de S3 al que está apuntando. Por ejemplo, âÃÂÃÂmywebsite.comâÃÂÃÂ. Certificado SSL: seleccione "Certificado SSL personalizado"y seleccione su nuevo certificado del menú desplegable Haga esto nuevamente para el segundo depósito S3 Las distribuciones pueden tardar un poco en activarse, así que mientras esperamos, hagamos los pasos finales. De nuevo en **S3 vaya a su depósito secundario (www.mywebsite.com), en la pestaña Propiedades y en Alojamiento de sitios web estáticos establezca el protocolo de redirección en HTTPS Finalmente, regresa a **Route53 Necesitamos actualizar los registros A personalizados que creamos para apuntar ahora a las distribuciones de CloudFront en lugar de a los depósitos de S3. Para cada registro, cambie el Alias ​​Target y seleccione la distribución de CloudFront disponible en el menú desplegable Nota: Nuevamente, si está utilizando otro servicio de DNS, deberá actualizar el registro CNAME desde allí para que apunte al nombre de dominio de CloudFront. ¡Y ahí lo tienes! ¡Su hermoso sitio web ahora está disponible en el dominio personalizado y se sirve con HTTPS! ¡Gracias por leer! Espero que esta guía haya sido útil y agradable, me encantaría saber si te resultó útil.