通常モードでは、プロキシサーバーを介してWebサイトのコンテンツを取得できます(小規模エージェント):
curl https://anysite.any/
または
curl -x 127.0.0.1:8888 https://anysite.any/
ただし、何らかの理由でiptable masquerading
この機能を有効にしたいのですが、一度有効にすると、プロキシを使用してどのWebサイトにもアクセスできなくなります。
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
イカを使うこともできます。イカにはこのような問題はありません。