跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 如何实现识别 tcp 中的包含 http 的包 (期望使用 iptables)
未分類
30 10 月 2020

如何实现识别 tcp 中的包含 http 的包 (期望使用 iptables)

如何实现识别 tcp 中的包含 http 的包 (期望使用 iptables)

資深大佬 : learningman 2

想要实现一个 tcp 透明代理,并将其中所有的 http 请求重定向到另外一个端口

为了避免 XYZ 问题,我说一下本来的需求:修改所有流经网关的 HTTP 流量中的 User-Agent

完整的说明在: https://v2ex.com/t/724819#reply0

大佬有話說 (11)

  • 資深大佬 : xchaoinfo

    试试 mitmproxy 能否解决主的需求

  • 資深大佬 : ahhui

    如果是代理的话,改头就行了,但是那你得用技术(转发? dns ?),要把访问目的地设定在你的代理 ip 上。但遇到 https,你就没法看到 http 头了。直接修改 tcp 包,一样有 https 的问题,而且即使是 http,你改了 header 还得重新计算 tcp 的 checksum: http://www.tcpipguide.com/free/t_TCPChecksumCalculationandtheTCPPseudoHeader-2.htm

  • 主 資深大佬 : learningman

    @ahhui https 不需要改,这里指的是狭义的 http
    检测到是 http 我就 redirect 到 nginx 去,应该就不用手动处理了吧

  • 資深大佬 : xuanbg

    Nginx 就可以实现了吧

  • 資深大佬 : Jirajine

    mitmproxy 已经支持透明模式,直接用就行了。

  • 資深大佬 : DoctorCat

    位于 7 层代理服务端更改 ua 就行了。印象中 iptalbes 默认不支持对应用层的包做任何更改

  • 資深大佬 : muzuiget

    这样还得先判断每个 TCP 链接是否 HTTP 链接,还要拆包,重新打包,兼容各种情况,麻烦得很。

    无非就是想绕过校园网限制,何必纠结在 UA 上面呢,买个带公网的 VPS,把所有流量包装成 HTTP 协议内容穿出去就是,说不定简单的 CONNECT 式的代理就能绕过了。

  • 資深大佬 : zhangsanfeng2012

    路由器起 http 代理服务器,代理服务器改 ua 不就行了

  • 主 資深大佬 : learningman

    @xuanbg
    @zhangsanfeng2012 已经用 nginx 改了,现在的问题是有的 http 请求不使用 80 端口,比如说 QQ 就用 8080 端口,但是如果用 iptables 直接转发 8080 的话,会有一些非 http 的 tcp 包也被转发到 nginx,这个 nginx 处理不了

    @muzuiget 国内的公网带宽价格离谱,国外的连接速度离谱

    @Jirajine 它能够做到非 http 的 tcp 直接放行吗?我看他也是一个 http 代理服务器

  • 資深大佬 : Jirajine

    @learningman 它只能处理 http/https,其他的流量当然是原样转发。

  • 資深大佬 : LGA1150

    @learningman #9
    nginx 前面再套个 sslh

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具