将 mitmproxy 置于反向代理之后

将 mitmproxy 置于反向代理之后

我有一个在端口上运行的 mitmproxy 实例2222。我想把它放在反向代理(如 Nginx 或 Caddy)后面,这样我就可以将它用作mitmproxy.tld。似乎除了127.0.0.1或之外的任何东西都无法访问 mitmproxy localhost,但我对此并不确定。

curl -x http://mitmproxy.tld:80 google.com -v给了我一个500 Internal Server Error


我有一些东西可以起作用---

stream {
    map $ssl_preread_server_name $port {
            hostnames;
            proxy.history.* 2222;
            default '';
        }
        
    server {
        listen 127.0.0.1:1080;
        ssl_preread on;
        
        proxy_pass 127.0.0.1:2222;
    }

问题是代理主机名没有变量,所以我无法检查人们是否从正确的域访问代理。

答案1

默认情况下mitmproxymitmweb监听 localhost/127.0.0.1,但您可以指定它应该监听的主机/接口,例如如果它应该监听所有可用的 IPv4 接口,请使用0.0.0.0

mitmproxy --listen-host 0.0.0.0
mitmweb  --listen-host 0.0.0.0

如果您还想监听 IPv6,请使用::

mitmproxy --listen-host ::
mitmweb  --listen-host ::

mitmdump默认情况下已经在所有 IPv4 和 IPv6 接口上监听。

相关内容