PPTP ポート転送

PPTP ポート転送

自宅に Debian サーバー (パブリック IP 付き) と ADSL 接続の Raspberry-PI があります。RP で Web サーバーを実行しており、外部からアクセスできるようにしたいと考えています。

PPTP を設定し、RP をサーバーに接続します。RP の IP は 10.0.0.100、ゲートウェイの IP は 10.0.0.1 です。

次のようにサーバー上の IP テーブルを使用してポート転送を設定しました: (xx.xx.xx.xx はパブリック IP です)。

iptables -t nat -A PREROUTING -d xx.xx.xx.xx -p tcp --dport 80 -j DNAT --to-dest 10.0.0.100:80
iptables -t nat -A POSTROUTING -d 10.0.0.100 -p tcp --dport 80 -j SNAT --to-source 10.0.0.1

net.ipv4.ip_forward = 1も設定しました

ポート 80 はサーバーと RP の両方で開いています。

しかし、奇妙な理由で RP に接続できません。

サーバーからcurlを実行すると、次のようにします: curl -Ihttp://10.zero.zero.100/肯定的な応答が得られました。つまり、サーバーとRP間の接続は機能しています。しかし、次のように外部でcurlフォームを実行すると: curl -Ihttp://xx.xx.xx.xx/curlを取得しました: (7) xx.xx.xx.xx ポート80への接続に失敗しました: 接続が拒否されました

何が間違っているのでしょうか?

RP 上のルーティング テーブルは次のようになります。

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.0.0.1        0.0.0.0         255.255.255.255 UH    0      0        0 ppp0

RP の ifconfig では次のように表示されます。

ppp0      Link encap:Point-to-Point Protocol  
          inet addr:10.0.0.100  P-t-P:10.0.0.1  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1496  Metric:1
          RX packets:16 errors:0 dropped:0 overruns:0 frame:0
          TX packets:14 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:3 
          RX bytes:678 (678.0 B)  TX bytes:7058 (6.8 KiB)

関連情報