V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
NGINX
NGINX Trac
3rd Party Modules
Security Advisories
CHANGES
OpenResty
ngx_lua
Tengine
在线学习资源
NGINX 开发从入门到精通
NGINX Modules
ngx_echo
qq258076067
V2EX  ›  NGINX

Nginx 能正向代理 https get 请求吗?

  •  
  •   qq258076067 · 2017-02-21 22:53:11 +08:00 · 6964 次点击
    这是一个创建于 2593 天前的主题,其中的信息可能已经有所发展或是发生改变。
    如题,能不能正向代理 https get 请求啊?
    23 条回复    2017-02-22 21:18:31 +08:00
    lhbc
        1
    lhbc  
       2017-02-21 23:32:18 +08:00
    不能。
    qq258076067
        2
    qq258076067  
    OP
       2017-02-21 23:38:37 +08:00
    @lhbc 好吧😓 那什么可以啊? 需要想 nginx 一样可以该 args 的那种...
    ryd994
        3
    ryd994  
       2017-02-22 02:26:34 +08:00 via Android
    https 已经把具体请求罩住了
    你需要破了 SSL ,也就是说,中间人
    squid 可以,前提是客户端信任 squid 签的证书
    hcwhan
        4
    hcwhan  
       2017-02-22 02:47:11 +08:00
    @ryd994 想请问下 我理解 SS 应该是正向代理 为什么可以代理 https
    ryd994
        5
    ryd994  
       2017-02-22 02:53:15 +08:00 via Android
    @hcwhan 你先了解一下 TCP 和 HTTP 和 TLS 是什么关系再说
    你要的那种, Nginx 最新版也可以,做 sni
    hcwhan
        6
    hcwhan  
       2017-02-22 03:02:07 +08:00
    @ryd994 #5 HTTPs 最近还看的比较多 我说下我的理解 请问下是否正确
    因为 TLS 只是加密的数据 对于代理服务器还是知道 通过 TCP 层获取到实际访问 IP 的
    代理服务器直接把数据转发 访问服务器
    对于代理服务器和访问服务器中间的连接不是 HTTPs 连接
    hcwhan
        7
    hcwhan  
       2017-02-22 03:11:42 +08:00
    @ryd994 #5 代理服务只是做数据转发不关心传递的具体是什么协议的内容
    binux
        8
    binux  
       2017-02-22 04:05:12 +08:00
    理论上可以,不知道 api 支持到什么程度,做一个 tunnel 就好了
    msg7086
        9
    msg7086  
       2017-02-22 05:22:39 +08:00
    @hcwhan SS 的话看不到 SSL 隧道内的内容,更不用提篡改报文了。#2 那种应该是做不到的。
    lslqtz
        10
    lslqtz  
       2017-02-22 09:41:12 +08:00 via iPhone
    @ryd994 最新版怎么搞…
    qq258076067
        11
    qq258076067  
    OP
       2017-02-22 09:51:11 +08:00
    @ryd994 我用 charles 就可以作为中间代理并且更改 url 里的某个 parameter 依然正常使用。。
    qq258076067
        12
    qq258076067  
    OP
       2017-02-22 09:51:49 +08:00
    @ryd994 大神能留个联系方式吗? 或者加我 Q Q 258076067
    qq258076067
        13
    qq258076067  
    OP
       2017-02-22 09:52:22 +08:00
    @hcwhan 我用 nginx 做 http 的 forward proxy 就可以改某些 parameter 啊
    ryd994
        14
    ryd994  
       2017-02-22 10:19:28 +08:00 via Android
    ryd994
        15
    ryd994  
       2017-02-22 10:22:52 +08:00 via Android
    @qq258076067 因为 Charles 实际上中间人攻击你了
    你看证书 CA 是 Charles 给你安装的一个证书
    这需要客户端信任(安装)证书,不然 HTTPS 怎么安全嘛
    ryd994
        16
    ryd994  
       2017-02-22 10:23:24 +08:00 via Android
    @qq258076067 QQ 1026437535 不常在
    qq258076067
        17
    qq258076067  
    OP
       2017-02-22 10:32:52 +08:00
    @ryd994 所以我有办法实现 https 的 forward 的同时更改某些参数吗。。。
    whx20202
        18
    whx20202  
       2017-02-22 10:38:15 +08:00
    jasontse
        19
    jasontse  
       2017-02-22 10:39:09 +08:00 via iPad
    想劫持返利参数?哈哈,这不可能。
    qq258076067
        20
    qq258076067  
    OP
       2017-02-22 11:08:44 +08:00
    @jasontse 不是的😅
    sighforever
        21
    sighforever  
       2017-02-22 11:22:28 +08:00 via Android
    @qq258076067
    如果客户端也是你自己的,比如从你的 app 发出的请求,那是可以的
    如果客户端是浏览器就不行了
    lslqtz
        22
    lslqtz  
       2017-02-22 11:51:03 +08:00 via iPhone
    @ryd994 提前发现了,但还是发个感谢
    vttc
        23
    vttc  
       2017-02-22 21:18:31 +08:00
    除了中间人攻击 没其他的办法 , https 的 ssl 设计就是加密请求,你不解密,怎么修改内容。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2832 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 14:53 · PVG 22:53 · LAX 07:53 · JFK 10:53
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.