add 100 deny log all from any to 192.168.0.0/16 recv tun0 add 200 divert natd all from any to any via tun0 add 300 allow all from any to 192.168.0.0/16 recv tun0 add 400 allow all from 192.168.0.0/16 to any
>>938 調べてみたんですがnatの場合にestablishedを通さないといけない理由がわかりません。 add allow all from 192.168.0.0/16 to any このルールがnatdへのdivertより前にあるとソースアドレスが外にでていっちゃいますけど、natdにdivertした後に置いてあると問題ないように思えます。 実際ちゃんとアドレス変換されてるのがモニタできました。 establishedってコネクションを張るサービス毎にrecvルールを書かなくても良いとか、コネクション中のパケットを優先的に受けるようにする為の物じゃないんですか?
ここからは、漏れの独断と偏見によるお勧めだ。 add allow ip from any to any via lo0 を頭に書くべし。 自分から自分への IP のルール評価が速く終わる。 ちみの 100 のルールを漏れ流に書くと、 add deny log ip from 192.168.0.0/16 to any in via tun0 add deny log ip from any to 192.168.0.0/16 out via tun0 になる。
add 100 deny log all from any to 192.168.0.0/16 **in** tun0 add 200 divert natd all from any to any via tun0 add 300 allow all from any to 192.168.0.0/16 recv tun0 add 400 allow all from 192.168.0.0/16 to any
で、192.168.0.3から外にpingうったら
ipfw: 300 Accept UDP <routerのIP>:53 192.168.0.3:1829 in via tun0 ってなった。
FreeBSD4.6にしようと思って、 cd /usr/share/examples/cvsup/ vi stable-supfile (以下のように書き換える。 *default host=cvsup2.jp.FreeBSD.org *default release=cvs tag=RELENG_4) cd /usr/src cvsup stable-supfile make buildworld buildkernel shutdown now(シングルユーザモード) cd /usr/src make installworld installkernel まで行ったのですが、 なぜか、 make installworld installkernel におきまして、 ERROR:Required smmsp user is missing ***ERROR code1*** stop in /usr/src
20020217: sendmail 8.12.2 has been imported. The sendmail binary is no ....
Due to the import of sendmail 8.12.2, a new user and group are required in order for sendmail to run as a set-group-ID binary. A 'make installworld' will use the new user and group to set the owner and group of /var/spool/clientmqueue and will fail if the new user and group do not exist. The 'smmsp' user and group must be merged from src/etc/group and src/etc/master.passwd before using 'make installworld'. 'mergemaster -p' will do this. You may need to install
>>965 内側から外へ向かうパケットはsis1とtun0と2度通るということは理解してるつもりでしたが、 add dely all from any to 192.168.0.0/16 recv tun0 このルールはtun0からの受信時だけに働くと思っていたのです。 log取ってみると外から戻ってきたパケットがnat変換されてtun0で受付けています。 次にsis1を通って内側に送られるわけですが、なぜかsis1を通るはずのパケットがこのルールにマッチして落とされてしまうのです。 ということはsisi1を通って内部に送られるパケットがどこから来たのかまでこのルールでチェックしてると解釈しました。 だけど、 >>970 でもつっこまれてるようにやっぱり変ですよね?