Poznámka
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Https (HTTP přes šifrovaná připojení TLS) je standardní způsob, jak provádět požadavky HTTP na internetu z důvodů zabezpečení, integrity a ochrany osobních údajů. Při použití reverzního proxy serveru, jako je YARP, je potřeba vzít v úvahu několik aspektů HTTPS/TLS.
Ukončení protokolu TLS
YARP je proxy server úrovně 7, což znamená, že proxy server plně dešifruje příchozí připojení HTTPS/TLS, aby mohl zpracovávat a předávat požadavky HTTP. To se běžně označuje jako ukončení protokolu TLS. Odchozí připojení k cílovým umístěním můžou nebo nemusí být šifrovaná v závislosti na zadané konfiguraci.
Tunelové propojení TLS (CONNECT)
Tunelování TLS pomocí metody CONNECT je funkce používaná k proxy žádostem bez jejich dešifrování. Toto není podporováno YARP a neexistují žádné plány jej přidat.
Konfigurace příchozích připojení
YARP může běžet na všech serverech ASP.NET Core a konfigurace HTTPS/TLS pro příchozí připojení je specifická pro každý server. Podrobnosti o konfiguraci najdete v dokumentaci k Kestrel, IIS a http.sys.
Pokročilé filtry TLS s Kestrel
Kestrel podporuje zachycování příchozích připojení před metodou handshake protokolu TLS. YARP obsahuje rozhraní API TlsFrameHelper, které dokáže analyzovat nezpracovanou výměnu přístupových údajů protokolu TLS a umožňuje shromažďovat vlastní telemetrii nebo okamžitě odmítnout připojení. Tato rozhraní API nemohou upravit metodu handshake protokolu TLS ani dešifrovat datový proud. Podívejte se na příklad .
Konfigurace odchozích připojení
Pokud chcete povolit šifrování TLS při komunikaci s cílem, zadejte cílovou adresu jako https
jako "https://destinationHost"
. Příklady najdete v dokumentaci ke konfiguraci .
Název hostitele zadaný v cílové adrese se použije pro metodu handshake protokolu TLS ve výchozím nastavení, včetně ověření SNI a certifikátu serveru. Pokud je povolené proxy původní hlavička hostitele, použije se tato hodnota pro metodu handshake protokolu TLS. Pokud je potřeba použít vlastní hodnotu hostitele, použijte k nastavení hlavičky hostitele transformaci RequestHeader.
Odchozí připojení k cílům jsou zpracovávána pomocí HttpClient/SocketsHttpHandler. Pro každý cluster je možné nakonfigurovat jinou instanci a nastavení. Některá nastavení jsou k dispozici v konfiguračním modelu, zatímco jiná je možné nakonfigurovat pouze v kódu. Podrobnosti najdete v dokumentaci k HttpClient.
Certifikáty cílového serveru musí být důvěryhodné proxy serverem nebo je potřeba použít vlastní ověření prostřednictvím konfigurace HttpClient.