Nginx com SSL atrás de outro Nginx (com nginx-proxy)

Nginx com SSL atrás de outro Nginx (com nginx-proxy)

Eu tenho dois VMS. O primeiro é VM1 e o segundo é VM2. O primeiro é um servidor VPN e o segundo é um cliente. Na VM1, o Nginx é instalado como proxy reverso do repositório oficial do Docker. Na VM2, o Nginx é instalado como proxy reverso doRepositório Docker nginx-proxy. Estou tentando configurar uma conexão SSL de VM1 para VM2, mas recebo um erro

curl: (35) erro:1408F10B:Rotinas SSL:ssl3_get_record:número de versão errado

Configuração Nginx da VM1 (redirecionar todas as consultas de 80 e 443 para a VM2)

server {
    listen       80;
    listen  [::]:80;
    server_name  _;

    location / {
        proxy_pass http://vm2-client-ip:80;
    }
}

server {
    listen       443;
    listen  [::]:443;
    server_name  _;

    location / {
        proxy_pass http://vm2-client-ip:443;
    }
}

Na VM2, o nginx-proxy gera a próxima configuração:

# whoami.my-domain.com
upstream whoami.my-domain.com {
    ## Can be connected with "home-network" network
    # who-am-i
    server 10.0.0.2:80;
}
server {
    server_name whoami.my-domain.com;
    listen 80 ;
    access_log /var/log/nginx/access.log vhost;
    # Do not HTTPS redirect Let'sEncrypt ACME challenge
    location ^~ /.well-known/acme-challenge/ {
        auth_basic off;
        auth_request off;
        allow all;
        root /usr/share/nginx/html;
        try_files $uri =404;
        break;
    }
    location / {
        return 301 https://$host$request_uri;
    }
}
server {
    server_name whoami.my-domain.com;
    listen 443 ssl http2 ;
    access_log /var/log/nginx/access.log vhost;
    ssl_session_timeout 5m;
    ssl_session_cache shared:SSL:50m;
    ssl_session_tickets off;
    ssl_certificate /etc/nginx/certs/whoami.my-domain.com.crt;
    ssl_certificate_key /etc/nginx/certs/whoami.my-domain.com.key;
    ssl_dhparam /etc/nginx/certs/whoami.my-domain.com.dhparam.pem;
    ssl_stapling on;
    ssl_stapling_verify on;
    ssl_trusted_certificate /etc/nginx/certs/whoami.my-domain.com.chain.pem;
    add_header Strict-Transport-Security "max-age=31536000" always;
    include /etc/nginx/vhost.d/default;
    location / {
        proxy_pass http://whoami.my-domain.com;
    }
}

Os certificados SSL são gerados comeste repositório. Com base nos logs deste contêiner, os certificados são gerados com êxito.

Uma conexão HTTP funciona bem. PS Se for um problema, ambos os Nginxes funcionam a partir de contêineres.

informação relacionada