У меня есть сервер IIS с двумя веб-привязками. Один для http и один для https. Оба работают нормально с сервера локально с помощью «Invoke-WebRequest». (Рукопожатие TLS также отлично работает при вызове через DNS-имя)
Всякий раз, когда я пытаюсь выполнить запрос с другой Linux-машины, у меня заканчивается тайм-аут для вызова https:
curl -vvv 192.168.1.140:443
Trying 192.168.1.140:443 ...
TCP_NODELAY set
Connected to 192.168.1.140 (192.168.1.140) port 443 (#0)
GET / HTTP/1.1
Host: 192.168.1.140:443
User-Agent: curl/7.67.0
Accept: */*
Для порта 80 работает нормально:
curl -vvv 192.168.1.140:80
Trying 192.168.1.140:80 ...
TCP_NODELAY set
Connected to 192.168.1.140 (192.168.1.140) port 80 (#0)
GET / HTTP/1.1
Host: 192.168.1.140:80
User-Agent: curl/7.67.0
Accept: */*
Mark bundle as not supporting multiuse
HTTP/1.1 200 OK
...
В журнале IIS я вижу только запросы порта 80 и локальные запросы 443.
Я использовал эти команды для настройки привязки:
New-WebBinding -IPAddress 192.168.1.140 -Name "Default Web Site" -Port 443 -Protocol "https"
(Get-WebBinding -Name "Default Web Site" -Protocol https).AddSslCertificate("foo", "my")
Любые идеи о том, как я могу проанализировать эту проблему, были бы ценными! Мой IIS работает в контейнерных окнах.