Как отобразить имя сервера для ошибки рукопожатия SSL в Nginx - PullRequest
0 голосов
/ 28 марта 2019

У меня есть несколько локальных внутренних приложений, настроенных в gunicorn с общедоступным сервером nginx (внутри экземпляра vagrant, хотя это может быть неважно для этого конкретного вопроса). Ошибка SSL handshake для любого из приложений отображается в моем файле /var/log/nginx/error.log следующим образом:

2019/03/27 22:38:24 [info] 4710#4710: *30 SSL_do_handshake() failed (SSL: error:14094415:SSL routines:ssl3_read_bytes:sslv3 alert certificate expired:SSL alert number 45) while SSL handshaking, client: 192.168.33.1, server: 0.0.0.0:443

Мне было интересно, возможно ли, что вместо 0.0.0.0:443 я смогу отобразить server_name (в приведенной ниже конфигурации сервера это будет domain.com) для любого из моих доменов, как указано в их .conf файлы. Простая конфигурация для одного из моих серверов выглядит примерно так внутри файла nginx.conf:

server {
    # listen on port 443 (https)
    listen 443 ssl;
    server_name domain.com;

    # location of the self-signed SSL certificate
    ssl_certificate /home/ubuntu/microblog/certs/cert.pem;
    ssl_certificate_key /home/ubuntu/microblog/certs/key.pem;

    # write access and error logs to /var/log
    access_log /var/log/microblog_access.log;
    error_log /var/log/microblog_error.log;

    location / {
        # forward application requests to the gunicorn server
        proxy_pass http://localhost:8000;
        proxy_redirect off;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }

    location /static {
        # handle static files directly, without forwarding to the application
        alias /home/ubuntu/microblog/app/static;
        expires 30d;
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...