普通にFreeBSDでポートフォワードとかで検索すると真っ先にこの方法が出てくる。
まずはnatd.confの設定ファイル。interface bge0 port natd redirect_port tcp FreeNASのアドレス:3690 Jailのアドレス:3690ファイアーウォールの設定スクリプト。最小限の設定(&最悪のセキュリティ)。タスクのPostInitで実行されるように設定。
#!/bin/sh ### IPFW="/sbin/ipfw" #ALLOW="allow log" ALLOW="allow" #DENY="deny log" DENY="deny" ### ipfw -q -f flush ${IPFW} add divert natd ip from any to any via bge0 ${IPFW} add allow tcp from any to any via bge0/conf/base/etc/rc.confに以下を追加。
gateway_enable="YES" firewall_enable="YES" firewall_type="OPEN" natd_enable="YES" natd_interface="外向けNIC。em0とかbge0とか。" natd_flags="-f お手製natd.confの場所"
設定を有効化するために再起動(しない方法もあるけど、省略)。
これがなぜかうまく行きません。natdに-verboseオプション付けたり、Jail側でtcpdumpしてみたところ、Jail側は接続要求(SYNフラグの立ったパケット)を受け取っておりACKも返しているのですが、FreeNASで抹殺されている模様。ipfwの設定が怪しいのですが現時点未解決。
Comments