雅虎香港 搜尋

搜尋結果

  1. X-Forwarded-For 是一个 HTTP 扩展头部。 HTTP/1.1(RFC 2616)协议并没有对它的定义,它最开始是由 Squid 这个缓存代理软件引入,用来表示 HTTP 请求端真实 IP。 如今它已经成为事实上的标准,被各大 HTTP 代理、负载均衡等转发服务广泛使用,并被写入 RFC 7239(Forwarded HTTP Extension)标准之中。 X-Forwarded-For 请求头格式非常简单,就这样: X-Forwarded-For: client, proxy1, proxy2. 可以看到,XFF 的内容由「英文逗号 + 空格」隔开的多个部分组成,最开始的是离服务端最远的设备 IP,然后是每一级代理设备的 IP。

    • Overview
    • 安全和隐私考虑
    • 指令
    • 解析
    • 选择一个 IP 地址
    • 参见

    X-Forwarded-For(XFF)请求标头是一个事实上的用于标识通过代理服务器连接到 web 服务器的客户端的原始 IP 地址的标头。

    当客户端直接连接到服务器时,其 IP 地址被发送给服务器(并且经常被记录在服务器的访问日志中)。但是如果客户端通过正向或反向代理服务器进行连接,服务器就只能看到最后一个代理服务器的 IP 地址,这个 IP 通常没什么用。如果最后一个代理服务器是与服务器安装在同一台主机上的负载均衡服务器,则更是如此。X-Forwarded-For 的出现,就是为了向服务器提供更有用的客户端 IP 地址。

    有关使用此标头的详细指引,请参阅解析和选择一个 IP 地址部分。

    此标头的标准化版本是 HTTP Forwarded 标头。

    按照设计的目的,此标头暴露隐私敏感信息,比如客户端的 IP 地址。因此,在应用此标头时,需要将用户的隐私问题考虑在内。

    当在客户端和服务器之间没有受信任的反向代理服务器时(比如一个负载均衡服务器),X-Forwarded-For 标头是不可信的。如果客户端和所有的代理服务器都没有恶意且行为良好,那么此标头中的 IP 地址列表具有指令部分所描述的意义。但是如果客户端或任意代理服务器存有恶意或配置错误,那么此标头的任意部分(或整体)可能是伪造的(并且有可能不是一个列表或者甚至不包含 IP 地址)。

    如果客户端和服务器之间存在任意受信任的反向代理服务器,最终 X-Forwarded-For 中的 IP 地址列表是可信的,因为这些 IP 是由受信任的代理服务器添加的(只要服务器只能通过这些代理服务器进行访问而不是可以被直接访问)。

    使用 X-Forwarded-For 进行安全相关的操作时(比如速率限制或基于 IP 的访问控制),必须仅使用由受信任的代理服务器添加的 IP 地址。使用不可信的 IP,可能导致速率限制被规避、访问控制被绕过、内存耗尽,或其他与安全性或可用性相关的负面后果。

    客户端的 IP 地址。

    ,

    如果请求经过多个代理服务器,每个代理服务器的 IP 地址会依次出现在列表中。这意味着,如果客户端和代理服务器行为良好,最右边的 IP 地址会是最近的代理服务器的 IP 地址,最左边的 IP 地址会是原始客户端的 IP 地址。

    对 X-Forwarded-For 标头的不当解析可能导致伪造的值被用于安全相关的目地,造成上文提及过的负面后果。

    在一个请求中可能出现多个 X-Forwarded-For 标头。这些标头中的 IP 地址必须被当作一个列表进行处理,从第一个标头中的第一个 IP 地址开始,直到最后一个标头中的最后一个 IP 地址结束。有两种方法生成这个列表:

    •用逗号拼接所有 X-Forwarded-For 标头的值,然后用逗号将其分割成一个列表

    •用逗号将每一个 X-Forwarded-For 标头的值都分割成一个列表,然后将这些列表合并成一个列表

    只使用多个 X-Forwarded-For 标头中的一个是不够的。

    (一些反向代理服务器会自动将多个 X-Forwarded-For 标头合并成一个,但是最安全的做法是不要假设就是这种情况。)

    选择地址时,必须使用从所有 X-Forwarded-For 标头生成的完整 IP 列表。

    当选择离客户端最近的 X-Forwarded-For IP 地址时(不可信并且不用于安全相关的目地),应该选择最左边的、第一个有效且不是私有/内部地址的 IP 地址。(要求”有效“是因为伪造的值可能根本就不是 IP 地址;要求“不是私有/内部地址”是因为客户端使用的代理服务器可能在它们的内部网络中,在这种情况下代理服务器可能添加了私有 IP 地址空间中的地址。)

    当选择第一个可信的 X-Forwarded-For 客户端 IP 地址时,需要进行额外的配置。有两种常用的方法:

    •受信任代理服务器数量:配置了互联网和服务器之间的反向代理服务器数量。从 X-Forwarded-For IP 列表的最右边开始搜索,第(受信任代理服务器数量 - 1)个地址就是目标地址。(例如,如果只有一个反向代理服务器,这个代理服务器会添加客户端的 IP 地址,因此应该使用最右边的地址。如果有三个反向代理服务器,最后两个 IP 地址将是内部地址。)

    •受信任代理服务器列表:配置了受信任反向代理服务器的 IP 或 IP 范围。从 X-Forwarded-For IP 列表的最右边开始搜索,跳过受信任代理服务器列表中的所有地址。第一个不匹配的地址就是目标地址。

    第一个可信的 X-Forwarded-For IP 地址可能属于一个不受信任的中间代理服务器,而不是实际的客户计算机,但这是唯一一个适用于安全用途的 IP 了。

  2. X-Forwarded-For (XFF)標頭是辨識用戶端透過 HTTP 代理或負載平衡 IP 位置來源的,事實上的標準。 如果流量是在伺服器與用戶端中間擷取,伺服器日誌就只會代理或負載平衡的 IP 位置。 如果要檢查用戶端的 IP 的原始來源,就會去檢查 X-Forwarded-For 請求標頭。 這個標頭用於除錯、分析、產生與位置相關的內容、透過設計也洩漏部分隱私資訊,例如用戶端的 IP 位置。 因此在部署此標頭時,必須考慮到用戶的隱私。 此 HTTP 標頭的標準化版本為 Forwarded 標頭。 X-Forwarded-For 也是個說明 email-message 是從哪個帳戶轉發的 email-header。 語法. http.

  3. X-Forwarded-For(XFF)是用來辨識通過HTTP 代理或負載均衡方式連接到Web伺服器的客戶端最原始的IP位址的HTTP頭欄位。 Squid 快取代理伺服器的開發人員最早引入了這一HTTP頭欄位,並由 IETF 在HTTP頭欄位標準化草案 [1] 中正式提出。

  4. 使用 “x for x in” 语法,我们可以快速过滤、操作或转换原始列表的元素。 下面是一个简单的例子,展示了如何使用 “x for x in” 语法将一个列表中的所有元素翻倍: numbers = [1, 2, 3, 4, 5] . doubled_numbers = [x * 2 for x in numbers] print(doubled_numbers) 输出结果为: [2, 4, 6, 8, 10] 在上面的例子中,我们遍历原始列表numbers中的每个元素,并将其翻倍,然后将结果存储在新的列表doubled_numbers中。 除了简单的数学计算,我们还可以使用 “x for x in” 语法进行条件筛选和操作。

  5. 2023年7月24日 · The X-Forwarded-For (XFF) request header is a de-facto standard header for identifying the originating IP address of a client connecting to a web server through a proxy server. Warning: Improper use of this header can be a security risk. For details, see the Security and privacy concerns section.

  6. alpinejs.dev › directives › forfor — Alpine.js

    x-for. Alpine's x-for directive allows you to create DOM elements by iterating through a list. Here's a simple example of using it to create a list of colors based on an array. <ul x-data="{ colors: ['Red', 'Orange', 'Yellow'] }"> <template x-for="color in colors"> <li x-text="color"></li> </template> </ul> Red. Orange. Yellow.

  1. 其他人也搜尋了