Re: Ошибка при использовании Reverse proxy и ssl
Maxim Dounin
mdounin на mdounin.ru
Чт Окт 12 14:04:03 UTC 2017
Hello!
On Thu, Oct 12, 2017 at 12:32:53AM -0400, emejibka wrote:
> Здравствуйте.
> Неожиданно один из сайтов перестал работать извне. В логах появились ошибки
> 2017/10/12 09:22:19 [error] 10729#0: *580 peer closed connection in SSL
> handshake (54: Connection reset by peer) while SSL handshaking to upstream,
> client: 83.169.216.72, server: mydomain.ru, request: "GET /favicon.ico
> HTTP/1.1", upstream: "https://192.168.255.4:443/favicon.ico", host:
> "mydomain.ru", referrer: "https://mydomain.ru/"
>
> Nginx настроен следующим образом
> server {
> listen 443 ssl;
> server_name mydomain.ru;
>
> ssl_certificate /usr/local/etc/nginx/ssl/certificate.crt;
> ssl_certificate_key /usr/local/etc/nginx/ssl/private.key;
>
> location / {
> proxy_pass https://mydomain.ru;
> }
> }
>
> Сертификаты на серверах одинаковые, mydomain.ru разрешается в разные адреса
> в зависимости от адреса клиента, т.е. клиенты извне присылают запросы на
> nginx, тот пересылает запросы на сервер внутри сети, клиенты в локальной
> сети отправляют запросы на сервер, минуя nginx.
>
> Я не могу никак понять почему nginx сам разрешает имя mydomain.ru в
> локальный ip адрес и посылает запрос используя ip адрес, а не доменное имя.
А что вы понимаете под словами "посылает запрос используя ip
адрес, а не доменное имя"? Послать HTTP-запрос, используя
доменное имя, невозможно. Нужно превратить имя в IP-адрес,
установить с ним соединение, и после этого посылать запрос.
В сообщении об ошибке явно указано, с каким адресом nginx пытался
общаться, когда произошла ошибка - 192.168.255.4. Если это
правильный адрес - то дальше надо разбираться, почему
соответствующий бекенд закрыл соединение. Если неправильный -
надо разбираться, почему он неправильный.
--
Maxim Dounin
http://nginx.org/
Подробная информация о списке рассылки nginx-ru