我有一个非常简单的设置。docker 中的三个容器我想在它们之间进行通信,没有其他的。攻击者(带有 nginx 的 kali)、反向代理(带有 nginx 的 alpine)和受害者(alpine)。我想在受害者内部 curl 反向代理并获取攻击者的网站。到目前为止,我可以直接通过 获取攻击者的网站,curl http://172.17.0.2:5555
通过 获取反向代理的网站curl http://172.17.0.3/
。但是当我这样做时,curl http://172.17.0.3/merlin
我得到:
<html>
<head><title>404 Not Found</title></head>
<body>
<center><h1>404 Not Found</h1></center>
<hr><center>nginx/1.18.0</center>
</body>
</html>
对于反向代理(172.17.0.3),我的/etc/nginx/conf.d/default.conf
:
server {
listen 80;
listen [::]:80;
server_name proxy;
#access_log /var/log/nginx/host.access.log main;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
location /merlin {
proxy_pass http://172.17.0.2:5555;
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}
对于攻击者(172.17.0.2),我的/etc/nginx/conf.d/default.conf
:
server {
listen 5555;
listen [::]:5555;
server_name localhost;
#access_log /var/log/nginx/host.access.log main;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}
YouTube 上的 Grant Collins 已经成功相似的东西,但我就是无法让它工作。