[Home] [Kuri] [Sysad] [Internet?] [Blog] [Java] [Windows] [Download] [Profile] [Flash] [+] |
options IPFILTER #kernel ipfilter support options IPFILTER_LOG #ipfilter logging |
action in-out [log] [quick] [on interface] [proto protocol] [srcdist [flags flags] [keep keep] ] |
キーワード | 意 味 な ど |
---|---|
action | 許可は pass, 拒否は block |
in-out | 入ってくる時のチェックは in, 出ていく時は out |
log | ログに残す場合に指定 |
quick | 該当する場合移行のルールを見ずに適用させる場合に指定 |
on interface | 該当するインタフェースの指定 |
proto protocol | プロトコルの指定(icmp,tcp,udpなど |
srcdist | 送信元および送付先の指定 (all もしくは from object to object) |
flags flags | TCP のフラグ指定(F,S,R,P,A,U および establish でそれぞれ FIN, SYN, RST, PUSH, ACK, URG および S/SA に該当) |
keep | 状態が保存され、ポートや ACK# 等が一致すればリストを参照せずに許可 …だと思う(state,frag) |
object | IPアドレスおよびポートの指定(port = 110 や port > 1023 など) |
# # 最初に、入ってくる方向のルールが書いてあります。 # # IPFW とは異なり、最初にすべて拒否を入れておきます。 # 後の pass ルールに該当すれば、許可され、それ以外の許可されていない # パケットを拒否するためです。 block in from any to any # # localhost 同士は許可します。on lo0 がある方がいい気もします。 pass in from 127.0.0.1/32 to 127.0.0.1/32 # # 10.1.3.1 などのホストからのパケットを許可します。 pass in from 10.1.3.1/32 to any pass in from 10.1.3.2/32 to any ... (中略) # # 次に、出ていく方のパケットに対するルールです。 # あとは同様ですので、コメントは割愛します。 # block out from any to any # pass out from any to 127.0.0.1/32 # pass out from any to 10.1.3.1/32 pass out from any to 10.1.3.2/32 ... (後略) |
block in from any to any pass in from 127.0.0.1/32 to 127.0.0.1/32 pass in from any to 192.47.224.211 port = 80 keep state pass in from any to 192.47.224.211 port = 21 keep state pass in from 192.47.224.211 to any |
pass in quick from 127.0.0.1/32 to 127.0.0.1/32 pass in quick from any to 192.47.224.211 port = 80 keep state pass in quick from any to 192.47.224.211 port = 21 keep state pass in quick from 192.47.224.211 to any block in from any to any |
map ifname ipmask -> ipmask [portmap tcpudp portrange] |
キーワード | 意 味 な ど |
---|---|
ifname | 外に出ていく時のインタフェースを指定 |
ipmask | 適用するパケットのアドレス(およびネットマスク)の指定 |
portmap | ポートの書き換えを行う場合に指定 |
tcpudp | tcpあるいはudpの指定(もしくは両方(tcp/udp)) |
portrange | ポート番号の範囲指定(port : port) |
map ed0 10.0.0.0/8 -> 1.2.3.0/24 |
map ed0 10.0.0.0/8 -> 1.2.3.0/24 portmap tcp/udp 10000:40000 |
map ed0 10.0.0.0/8 -> 1.2.3.0/24 portmap tcp/udp 10000:40000 map ed0 10.0.0.0/8 -> 1.2.3.0/24 |
rdr ifname ipmask port port -> ipmask port port [udp] |
キーワード | 意 味 な ど |
---|---|
ifname | 外から入ってくるインタフェースを指定 |
ipmask | 適用するパケットのアドレスを指定 |
udp | デフォルトでは tcp なので、udp の場合は指定 |
rdr ed0 1.2.3.80/32 port 80 -> 192.168.0.80 port 80 |
arp -s 1.2.3.80 ed0のMACアドレス pub |
#!/bin/sh PATH="/usr/sbin:/usr/bin:/sbin" export PATH # ARP エントリの追加 # - 必要なければ %%ARPEND%% までコメントアウトすべし IF="ed0" MACADDR="`ifconfig $IF|grep ether|awk '{print $2}'`" arp -s www $MACADDR pub arp -s ftp $MACADDR pub ... # %%ARPEND%% # IP Filter の起動(というか設定を読み込ませる) if [ -f /etc/ipf.conf ]; then ipf -IFa -f /etc/ipf.conf > /dev/null && echo -n ' ipf' && $IPF -s fi if [ -f /etc/ipnat.conf ]; then ipnat -CF -f /etc/ipnat.conf > /dev/null && echo -n ' ipnat' fi |
# ipfstat -ih 0 pass in quick on lo0 from any to any 12491 pass in quick on hme0 from any to any 0 pass in quick on hme1 from any to 192.168.0.1/32 15259 pass in quick on hme1 from any to 192.168.0.2/32 ... |
# ipfstat -ls mapped in 5902 out 6929 added 123 expired 114 inuse 21 rules 27 List of active MAP/Redirect filters: map hme1 172.16.0.0/16 -> 1.2.3.2/32 portmap tcp/udp 10000:40000 map hme1 172.16.0.0/16 -> 1.2.3.2/32 rdr hme1 1.2.3.73/32 port 23 -> 172.16.0.73 port 23 tcp ... List of active sessions: MAP 172.16.0.211 1058 <- -> 1.2.3.2 10023 [4.3.2.1 23] RDR 172.16.0.73 23 <- -> 1.2.3.73 23 [4.3.2.85 32806] ... |
*** ipfboot.0 Thu Aug 5 02:30:48 1999 --- ipfboot Wed May 23 11:17:12 2001 *************** *** 16,22 **** modload /usr/kernel/drv/ipf [ -r ${IPFILCONF} ] && ipf -Fa -f ${IPFILCONF} [ -r ${IPNATCONF} ] && ipnat -CF -f ${IPNATCONF} ! # ipmon -sn & ;; stop) --- 16,22 ---- modload /usr/kernel/drv/ipf [ -r ${IPFILCONF} ] && ipf -Fa -f ${IPFILCONF} [ -r ${IPNATCONF} ] && ipnat -CF -f ${IPNATCONF} ! ipmon -Ds ;; stop) |
local0.info /var/log/ipflog |
map hme1 172.16.0.1/32 -> 1.2.3.4/32 proxy port ftp ftp/proxy |
map hme1 172.16.0.0/16 -> 1.2.3.0/24 proxy port ftp ftp/proxy |
map hme1 172.16.0.1/32 -> 1.2.3.0/24 proxy port ftp ftp/proxy |
[Home] [Kuri] [Sysad] [Internet?] [Blog] [Java] [Windows] [Download] [Profile] [Flash] [-] | |
usu@usupi.org | Last modified : Tue May 14 00:46:03 2002 |