Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

302
Vistas
Cómo manejar certificados SSL para implementar la opción WhiteLabel en una aplicación web que se ejecuta en el servidor NGINX

Estoy trabajando en una aplicación web.

Mi aplicación se ejecuta en el subdominio app.mydomain.com

Necesito WhiteLabel mi aplicación. Estoy pidiendo a mis Clientes que apunten a su propio sitio web a través de CNAME a mi aplicación.

design.customerwebsite.com apunta a app.mydomain.com

Esto es lo que he intentado resolver.

Creé un nuevo archivo en /etc/nginx/sites-available llamado customerwebsite.com Agregué un enlace simbólico al archivo.

Instalé SSL usando certbot con el siguiente comando.

sudo certbot --nginx -n --redirect -d design.customerwebsite.com

Aquí está el código para mi archivo de configuración NGINX de customerwebsite.com

 server { server_name www.customerwebsite.com; return 301 $scheme://customerwebsite.com$request_uri; } server { # proxy_hide_header X-Frame-Options; listen 80; listen 443; server_name design.customerwebsite.com; ssl_certificate /etc/letsencrypt/live/design.customerwebsite.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/design.customerwebsite.com/privkey.pem; root /opt/bitnami/apps/myapp/dist; location / { proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_hide_header X-Frame-Options; proxy_pass http://localhost:3000; } proxy_set_header X-Forwarded-Proto $scheme; if ( $http_x_forwarded_proto != 'https' ) { return 301 https://$host$request_uri; } }

Puedo ejecutar correctamente mi aplicación web en https://design.customerwebsite.com

Pero el certificado SSL muestra que apunta a app.mydomain.com y se muestra inseguro.

Mi app.mydomain.com tiene un certificado SSL de Amazon ACM que se adjunta a través de Load Balancer.

¿Cuál debería ser el enfoque para resolver esto?

over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

Hay dos soluciones para esto 1: agregue los certificados ssl al equilibrio de carga: debe solicitar un certificado con todos los nombres de DNS admitidos (app.mydomain.com y design.customerwebsite.com)/ y debe administrar customerwebsite.com dominio con Route53. Creo que eso no es posible en tu caso.

2- No use ssl en el balanceador de carga: para esta opción, no terminaremos ssl en el balanceador de carga, sin embargo, se pasará a nginx para que lo maneje. Las configuraciones de su balanceador de carga deberían verse como

ingrese la descripción de la imagen aquí

necesita generar un nuevo certificado SSL que incluya ambos dominios

 sudo certbot --nginx -n --redirect -d app.mydomain.com -d *.mydomain.com -d design.customerwebsite.com -d *.customerwebsite.com

Configuraciones de Nginx

 server { server_name www.customerwebsite.com; return 301 $scheme://customerwebsite.com$request_uri; } server { listen 80 default_server; server_name design.customerwebsite.com; return 301 https://$host$request_uri; } server { listen 443 ssl default_server; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; ssl_certificate /etc/letsencrypt/live/design.customerwebsite.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/design.customerwebsite.com/privkey.pem; server_name design.customerwebsite.com; root /opt/bitnami/apps/myapp/dist; location / { resolver 127.0.0.11 ipv6=off; proxy_set_header Host $host; proxy_set_header X-Forwarded-Proto https proxy_set_header X-Real-IP $remote_addr; proxy_hide_header X-Frame-Options; proxy_pass http://localhost:3000; } }
over 4 years ago · Santiago Trujillo Denunciar

0

Creo que los elementos proporcionados al ACM Load Balancer deben coincidir con todos los dominios en los que puede recibir solicitudes. En el certificado, debe tener un Nombre alternativo del sujeto que contenga todos los dominios coincidentes.

Por ejemplo, en stackoverflow.com, el certificado tiene un CN *.stackexchange.com pero tiene ese Nombre alternativo del sujeto:

 DNS:*.askubuntu.com, DNS:*.blogoverflow.com, DNS:*.mathoverflow.net, DNS:*.meta.stackexchange.com, DNS:*.meta.stackoverflow.com, DNS:*.serverfault.com, DNS:*.sstatic.net, DNS:*.stackexchange.com, DNS:*.stackoverflow.com, DNS:*.stackoverflow.email, DNS:*.superuser.com, DNS:askubuntu.com, DNS:blogoverflow.com, DNS:mathoverflow.net, DNS:openid.stackauth.com, DNS:serverfault.com, DNS:sstatic.net, DNS:stackapps.com, DNS:stackauth.com, DNS:stackexchange.com, DNS:stackoverflow.blog, DNS:stackoverflow.com, DNS:stackoverflow.email, DNS:stacksnippets.net, DNS:superuser.com
over 4 years ago · Santiago Trujillo Denunciar

0

te estás olvidando de algunos detalles... tienes que hacer una configuración para el dominio

/////// app.myDominio.com ////////

tal como lo hizo para el dominio normal y también cree SSL solo para este dominio. Puedes usar el script let. Configure una ruta para el REGISTRO DE NGINX para que pueda verificar los errores que detecta NGINX.

También puede usarlo en la configuración de NGINX * .domain.com (donde * significa aplicación, tal vez lo detecte)

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda