Мне нужно настроить обратный прокси на nginx, который разрешает https. Предполагается, что это будет работать следующим образом:
Моя проблема в 3 и 4. Моя конфигурация успешно выполняет все это и перенаправляет на сайт, который должен быть, но вместо использования моего сертификата он использует сертификат сайт, на который я перенаправляюсь.
Конфигурация:
server {
listen 80;
server_name example.com;
return 301 https://$server_name:443;
}
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name example.com;
ssl_certificate /path/to/cert.crt;
ssl_certificate_key /path/to/key.key;
location {
proxy_pass https://another-site.com;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
Как я уже сказал, это работает, но не использует сертификат, который я указал в этой конфигурации.
я думаю, вы должны поместить в него больше конфигураций
, например
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name example.com;
ssl on;
ssl_certificate /path/to/cert.crt;
ssl_certificate_key /path/to/key.key;
keepalive_timeout 50;
ssl_session_timeout 10m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:AES128-SHA:AES256-SHA:AES; #Check ciphers at http://nginx.org/en/docs/http/ngx_http_ssl_module.html#ssl_ciphers
ssl_prefer_server_ciphers on;
ssl_dhparam /etc/nginx/dhparams_4096.pem; check dhparams at nginx documentation
ssl_session_cache shared:ssl_session_cache:20m;
}
Думаю, я разобрался. Конфигурация правильная, и она работает, проблема в том, что сайт, на который я перенаправляю трафик, также обертывает трафик своим собственным сертификатом, поэтому похоже, что я не использую свой собственный. Я понял это, пытаясь перенаправить трафик на другой сайт