X-Forwarded-For - X-Forwarded-For
HTTP |
---|
Vyžádejte si metody |
Pole záhlaví |
Stavové kódy |
Bezpečnostní metody řízení přístupu |
Zranitelnosti zabezpečení |
The X-Forwarded-For (XFF) Pole záhlaví HTTP je běžná metoda pro identifikaci původu IP adresa klienta připojujícího se k webový server přes HTTP proxy nebo vyvažovač zátěže.
The X-Forwarded-For
Hlavičku požadavku HTTP zavedl Oliheň ukládání do mezipaměti vývojáři serveru proxy.[Citace je zapotřebí ]
X-Forwarded-For
je také e-mailová hlavička což znamená, že e-mailová zpráva byla předáno z jednoho nebo více dalších účtů (pravděpodobně automaticky).[1]
V této souvislosti jsou servery pro ukládání do mezipaměti nejčastěji servery velké ISP kteří buď povzbuzují nebo nutí své uživatele používat pro přístup k serveru proxy servery Celosvětová Síť, něco, co se často provádí ke snížení vnější šířky pásma pomocí ukládání do mezipaměti. V některých případech jsou tyto proxy servery transparentní proxy a uživatel si nemusí být vědom toho, že je používá.
Bez použití XFF nebo jiné podobné techniky by jakékoli připojení prostřednictvím serveru proxy odhalilo pouze původní IP adresu serveru proxy, čímž by se server proxy změnil na anonymizační služba, čímž je detekce a prevence zneužívajících přístupů podstatně těžší, než kdyby byla k dispozici původní IP adresa. Užitečnost XFF závisí na tom, jak proxy server pravdivě hlásí IP adresu původního hostitele; z tohoto důvodu vyžaduje efektivní využití XFF znalost důvěryhodnosti proxy serverů, například jejich vyhledáním na seznamu povolených serverů, jejichž správcům lze důvěřovat.
Formát
Obecný formát pole je:
- X-Forwarded-For: klient, proxy1, proxy2[2]
kde hodnota je seznam adres IP oddělených čárkami + mezerami, přičemž nejvíce vlevo je původní klient a každý následující proxy server, který předal požadavek, přidal adresu IP, odkud požadavek přijal. V tomto příkladu požadavek předán prostřednictvím proxy1, proxy2 a poté proxy3 (není zobrazen v záhlaví). proxy3 se zobrazí jako vzdálená adresa požadavku.
Příklady[3]:
X-Forwarded-For: 203.0.113.195, 70.41.3.18, 150.172.238.178 X-Forwarded-For: 203.0.113.195 X-Forwarded-For: 2001: db8: 85a3: 8d3: 1319: 8a2e: 370: 7348
Protože je snadné vytvořit pole X-Forwarded-For, měly by se dané informace používat opatrně. Pravá IP adresa je vždy adresa IP, která se připojuje k poslednímu proxy serveru, což znamená, že je nejspolehlivějším zdrojem informací. Data X-Forwarded-For lze použít ve scénáři vpřed nebo vzad proxy.
Pouhé přihlášení do pole X-Forwarded-For není vždy dostačující, protože poslední adresa IP proxy v řetězci není obsažena v poli X-Forwarded-For, je ve skutečné hlavičce IP. Webový server by měl pro úplnost přihlásit OBOU zdrojovou adresu IP požadavku a informace o poli X-Forwarded-For.
Proxy servery a mezipaměti
Tato sekce obsahuje informace nejasné nebo sporné důležitost nebo relevantnost k předmětu článku.Březen 2015) (Zjistěte, jak a kdy odstranit tuto zprávu šablony) ( |
Pole X-Forwarded-For je podporováno většinou serverů proxy, včetně Sítě A10, aiScaler,[4]Oliheň,[5]Apache mod_proxy,[6]Libra,[7]HAProxy,[8][9]Lak,[10]IronPort Webové bezpečnostní zařízení,[11]AVANU WebMux,Array Networks,Radware AppDirector, Alteon ADC, ADC-VX a ADC-VA,F5 Big-IP,[12]Blue Coat ProxySG,[13]Cisco Cache Engine, McAfee Web Gateway, Phion Airlock, Finjan's Vital Security,NetApp NetCache, jetNEXUS, Crescendo Networks 'Maestro, Web Adjuster, Websense Web Security Gateway,[14]Brána Microsoft Forefront pro správu hrozeb 2010 (TMG)[15]aNGINX.[16]
Protokolování X-Forwarded-For je podporováno mnoha webovými servery, včetně Apache. IIS může pro toto filtrování také použít modul HTTP.[17][18][19]
Zscaler maskuje záhlaví X-Forwarded-For pomocí Z-Forwarded-For, než přidá vlastní záhlaví X-Forwarded-For identifikující původní IP adresu zákazníka. Tím se zabrání úniku interních IP adres z uzlů vynucování Zscaler a poskytovatelům obsahu třetích stran poskytne skutečnou IP adresu zákazníka. Výsledkem je požadavek HTTP, který není kompatibilní s RFC.
Vyrovnávače zatížení
AVANU WebMux Network Traffic Manager, řešení pro rozložení zátěže sítě pro doručování aplikací, ve výchozím nastavení vloží záhlaví X-Forwarded-For v režimu One-Armed Single Network Mode a je k dispozici jako možnost farmy ve Two-Armed NAT, Two-Armed Transparent a One -Armed Direct Server Return Modes.[20]
Barracuda Load Balancer od Barracuda Networks podporuje uživatelem definované hlavičky, jako je X-Forwarded-For pro vložení IP adresy klienta do požadavku klienta.[21]
Systémy Citrix „NetScaler podporuje uživatelem definovaná pole, jako je X-Forwarded-For, pro vložení adresy IP klienta do požadavku klienta.[22]
Toto pole mohou také vložit moduly pro vyrovnávání zatížení Cisco ACE, obvykle implementované, když je nástroj pro vyrovnávání zatížení nakonfigurován tak, aby fungoval zdroj NAT, aby mohl nástroj pro vyrovnávání zatížení existovat v a jednoramenná konfigurace, a zároveň poskytuje mechanismus, který mohou skutečné servery použít k účtování zdrojové adresy IP klienta. Odkaz uvádí x-vpřed, lze však nahradit X-Forwarded-For.[23]
Sítě F5 vyvažovače zatížení podporují X-Forwarded-For pro konfigurace s jedním a více rameny.[24] Big-IP může být také nakonfigurován tak, aby delegoval důvěru na proxy více než jeden skok pryč a přijímal vlastní záhlaví X-Forwarded-For z jiných zdrojů.[25]
Virtuální nástroje pro vyrovnávání zatížení LineRate podporují X-Forwarded-For prostřednictvím konfigurací jednotek příkazového řádku nebo pomocí skriptů node.js.[26]
KEMP Technologies LoadMaster podporuje X-Forwarded-For pro neprůhledné vyvažování zátěže v obou jednoramenná konfigurace a víceramenné konfigurace.[27]
Kojotové bodové systémy Ekvalizér podporuje pole X-Forwarded-For pro rozložení zátěže v obou jednoramenná konfigurace a víceramenné konfigurace.[28]
OpenBSD relé mohou vložit a / nebo změnit toto pole.[29]
Služba Amazon Elastic Load Balancing podporuje toto pole.
LBL LoadBalancer podporuje X-Forwarded-For pro konfigurace s jedním a více rameny.
Radware AppDirector ADC, Alteon ADC, ADC-VX a ADC-VA podporují také vkládání záhlaví X-Forwarded-For pro provoz, který je zdrojovým NAT směrem k serverům, stejně jako schopnost zajistit stálost provozu na základě X-Forwarded -Pro záhlaví pro distribuci provozu z proxy připojení na více serverů při zachování perzistence na servery.
Loadbalancer.org Vyvažovače zatížení Enterprise ve výchozím nastavení podporují vyvážení zátěže X-Forwarded-For [30]
Alternativy a varianty
RFC 7239 standardizovaný a Předán
Záhlaví HTTP s podobným účelem, ale více funkcí ve srovnání s X-Forwarded-For
Záhlaví HTTP.[31] Příklad a Předán
syntaxe záhlaví:
Přeposláno: for = 192.0.2.60; proto = http; by = 203.0.113.43
HAProxy definuje PROXY protokol, který může komunikovat IP adresu původního klienta bez použití X-Forwarded-For
nebo Předán
záhlaví.[32] Tento protokol lze použít na více transportních protokolech a nevyžaduje kontrolu vnitřního protokolu, takže není omezen na HTTP.
Viz také
- Soukromí na internetu
- Seznam proxy softwaru
- X-pocházející IP pro SMTP ekvivalent
- Seznam polí záhlaví HTTP
Reference
- ^ "{titul}". Archivovány od originál dne 2014-09-20. Citováno 2014-05-05.
- ^ "squid: follow_x_forwarded_for konfigurační směrnice". Squid-cache.org. Citováno 12. listopadu 2017.
- ^ „X-Forwarded-For“. Webové dokumenty MDN. Citováno 2020-11-06.
- ^ „Průvodce správcem strana 152“ (PDF). Aiscaler.com. Citováno 12. listopadu 2017.
- ^ SquidFaq / ConfiguringSquid - Squid Web Proxy Wiki. Wiki.squid-cache.org (06.02.2012). Citováno 2012-12-24.
- ^ mod_proxy - Apache HTTP Server. Httpd.apache.org. Citováno 2012-12-24.
- ^ Libra proxy, v části „Žádost o protokolování“
- ^ Manuál pro konfiguraci HAProxy. haproxy.1wt.eu. Citováno 2012-12-24.
- ^ haproxy.1wt.eu. haproxy.1wt.eu. Citováno 2012-12-24.
- ^ Časté dotazy k laku Archivováno 29. Března 2008 v Wayback Machine týkající se přihlášení
- ^ Webová zabezpečovací zařízení IronPort. Ironport.com (26.11.2012). Citováno 2012-12-24.
- ^ "Používání" X-Forwarded-For "v Apache nebo PHP". devcentral.f5.com.
- ^ Článek znalostní báze Bluecoat 000010319. Kb.bluecoat.com (29.06.2009). Citováno 2014-03-06.
- ^ "Používání" X-Forwarded-For "ve Websense WSG". Websense.com. Citováno 12. listopadu 2017.
- ^ „Winfrasoft - X-Forwarded-For - pro TMG, ISA Server a IIS“. Winfrasoft.com. Citováno 12. listopadu 2017.
- ^ „NGINX reverzní proxy - NGINX“. Nginx.com. Citováno 12. listopadu 2017.
- ^ Winfrasoft XFF pro IIS. Winfrasoft.com
- ^ Pokročilé protokolování IIS. Iis.net (10. 8. 2009). Citováno 2013-06-05.
- ^ X-Forwarded-For HTTP Module for IIS7, Source Included! Joe Pruitt Devcentral.f5.com. (05.07.2013).
- ^ „Technické zdroje WebMux - Vyrovnávání zatížení sítě pro doručování aplikací“. Avanu.com. Citováno 12. listopadu 2017.
- ^ Inc, Barracuda Networks. „Služby HTTP (S) vrstvy 7“. Kampus Barracuda. Citováno 12. listopadu 2017.
- ^ Příručka Citrix NetScaler Traffic Management - vydání 9.1... Support.citrix.com. Citováno 2012-12-24.
- ^ Cisco ACE se zdrojovým NAT a záhlaví IP klienta. Cisco.com. Citováno 2012-12-24.
- ^ Pomocí pole záhlaví X-Forwarded-For HTTP k uchování původní IP adresy klienta pro provoz překládaný SNAT. Support.f5.com (2012-09-26). Citováno 2012-12-24.
- ^ Přehled záhlaví Trusted X-Forwarded-For. Support.f5.com (2012-09-26). Citováno 2012-12-24.
- ^ Vložení záhlaví X-Forwarded-For s LineRate (29/29/2014) Citováno 2015-10-05.
- ^ Příručka k produktu LoadMaster. Kemptechnologies.com. Citováno 2012-12-24.
- ^ Uživatelská příručka ekvalizéru. Coyotepoint.com. Citováno 2012-12-24.
- ^ manuald.conf manuální stránka. Openbsd.org (29. 11. 2017). Citováno 2018-02-04.
- ^ Loadbalancer.org X-forwarded-for.Loadbalancer.org. Citováno 2017-12-15.
- ^ Petersson, A; Nilsson, M (červen 2014). Předané rozšíření HTTP. IETF. doi:10.17487 / RFC7239. RFC 7239. Citováno 20. února 2020.
- ^ Willy Tarreau: Protokol PROXY. haproxy.1wt.eu. Citováno 2012-12-24.
externí odkazy
- Apache mod_extract_forwarded