일반 모드에서는 프록시 서버를 통해 웹사이트 콘텐츠를 얻을 수 있습니다(소규모 에이전트):
curl https://anysite.any/
또는
curl -x 127.0.0.1:8888 https://anysite.any/
그러나 어떤 이유로 iptable masquerading
이 기능을 활성화하고 싶은데 일단 활성화하면 프록시를 사용하여 어떤 웹사이트에도 액세스할 수 없습니다!
iptables -t nat -A POSTROUTING -j MASQUERADE
curl -x 127.0.0.1:8888 https://anysite.any/
반품:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<title>403 Access denied</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body>
<h1>Access denied</h1>
<p>The administrator of this proxy has not configured it to service requests from your host.</p>
<hr />
<p><em>Generated by <a href="https://www.banu.com/tinyproxy/">tinyproxy</a> version 1.8.1.</em></p>
</body>
</html>
하지만 이 명령은 문제 없이 잘 작동합니다.
curl https://anysite.any/
내 문제는 무엇입니까?
답변1
iptables 명령을 추가 -o eth0
하고 문제를 해결했습니다.
이 옵션은 iptables가 패킷이 전송될 때만 작업을 수행하도록 지시합니다.
iptables -t nat -I POSTROUTING -j MASQUERADE -o eth0
오징어를 사용할 수도 있습니다. 오징어에는 이런 문제가 없습니다.