web-dev-qa-db-ja.com

ロードウォリアーのipsecクライアントをゲートウェイとして使用する

シナリオ:

INTERNET --- VPN-Server <----> ROUTER <----> Roadwarrior  <----> Subnet 
             132.1.1.1       192.168.2.1     192.168.2.50       176.168.10.0/24 
                                  |  
                              INTERNET  

VPNサーバー:Cisco
Roadwarrior:Linux上のアライグマ

サブネット176.168.10.0/24からのすべてのインターネットトラフィックがルーターではなくVPNサーバーを通過するように、そのシナリオを設定しようとしています。

これまでのところ:Roadwarriorを介してVPNサーバーに接続できます。また、ロードウォリアーで生成されたすべてのトラフィックは、VPNサーバーを通過してインターネットに到達します。ただし、次のコマンドでルーティングされたサブネットからのトラフィックは、インターネットのルーターを通過します。

iptables -t nat -A POSTROUTING -s 176.168.10.0/24 -j SNAT --to-source 192.168.2.50

次のコマンドを使用すると、サブネットからのトラフィックはインターネットに渡されません(ルーター経由でもVPNサーバー経由でも)。

iptables -t nat -A POSTROUTING -s 176.168.10.0/24 -j SNAT --to-source 132.1.2.2 (internal ip assigned to roadwarrior from VPN-Server)

何か案は?

道行く戦士:

eth0   192.168.2.50
eth0:1 132.1.2.2
br0    176.168.10.1

ip route list
default via 192.168.2.1 dev eth0  src 132.1.2.2 
132.1.0.0/16 dev eth0  proto kernel  scope link  src 132.1.2.2 
132.1.1.1 via 192.168.2.1 dev eth0 
176.168.10.0/24 dev br0  proto kernel  scope link  src 176.168.10.1 
192.168.2.0/24 dev eth0  proto kernel  scope link  src 192.168.2.50 
2
scitech

私はそれを見つけました... phase1-up.shスクリプトには、最後に次の行が含まれています。

44 #
45 # XXX This is a workaround for Linux forward policies problem.
46 # Someone familiar with forward policies please fix this properly.
47 #
48 echo "
49 spddelete 0.0.0.0/0[any] ${INTERNAL_ADDR4}[any] any
50        -P fwd ipsec esp/tunnel/${REMOTE}-${LOCAL}/require;
51 " | setkey -c
52

転送ポリシーが削除されないように、このコードはコメントアウトする必要があります。次に、単純な

iptables -t nat -A POSTROUTING -o $WAN_IP -j MASQUERADE 

トリックを行います。

2
scitech