当前位置: 首页 > 工具软件 > ipfilter > 使用案例 >

Solaris 的防火墙ipfilter设置

郭子航
2023-12-01



作者: NetFlow  出自: http://www.linuxdiyf.com
MartriWang@gmail.com 20080509
# svcs -a |grep network |egrep "pfil|ipf"
disable 4:36:25 svc:/network/pfil:default
online 23:41:33 svc:/network/ipfilter:default
(查察IP Filter处事可否启动)

# ifconfig -a inet
lo0: flags=2001000849 mtu 8232 index 1
inet 127.0.0.1 netmask ff000000
pcn0: flags=1000843 mtu 1500 index 3
inet 10.4.128.226 netmask ffffff00 broadcast 10.4.128.25
(查察网卡设置配备装置名)

#vi /etc/ipf/pfil.ap
.......
#dnet -1 0 pfil
#pcelx -1 0 pfil
#spwr -1 0 pfil
pcn -1 0 pfil
.......
(将网卡设置配备装置名前诠释去失)

#vi /etc/ipf/ipf.conf
block in log quick proto tcp from 10.4.128.0/24 to any port = ftp
(编辑防火墙规定端正)

#svcadm enable svc:/network/ipfilter:default
(启动处事)

#svcs -a |grep -i ipf
(再次查察处事可否启动)

#autopush -f /etc/ipf/pfil.ap
(失效pfil.ap设置,此步调只须要做一次,以后调动防火墙规定端正就不须要再做)

#ifconfig pcn0 down unplumb
(禁用网卡)

#ifconfig pcn0 plumb 10.4.128.226 netmask 255.255.255.0 broadcast 10.4.128.255 up
#ifconfig pcn0 plumb 192.168.0.6 netmask 255.255.255.0 broadcast 192.168.0.255 up
(启用网卡)

这时分防火墙已经失效,各人可以试着FTP设置好的处事器,若以后须要调动规定端正请参照以下步调:
#vi /etc/ipf/ipf.conf
block in log proto tcp from 10.4.128.0/24 to any port = ftp
block in log proto tcp from 10.4.128.0/24 to any port = telnet

#ipf -Fa -f /etc/ipf/ipf.conf
#ipfstat -io
#ipfstat
#ipmon

调动完以后可以再次试着FTP。

各人可以比拟苍茫的便是规定端正方面了,其实它的规定端正很好懂,设置起来也很庞年夜:
防止便是block
经过便是pass
出去便是in
出去便是out

那么配合起来运用就行了,再加上可以指定在哪个网卡上运用,也便是再加个on pcn0,另外尚有一个要害字便是all,这是婚配(防止年夜要经过)所有的包,组合起来的例子便是:
block in on pcn0 all
(防止所有的包进入)

还可以针对网段、IP以及端口的设置,便是在包的后面加如from .... to .... port = ..就可以,等号的中心可以改成其他运算符,如<、>
网段:block in log proto tcp from 10.4.128.0/24 to any port = ftp
地址:block in log proto tcp from 10.4.128.163/32 to any port = ftp

关于协议的节制,它一样可以做的很好。协议的要害字有4种(icmp、tcp、udp、tcp/udp),启用对协议的节制便是在协议的要害字前加proto要害字如:
block in on pcn0 proto icmp from any to any

在运用ICMP协议节制的时分,可以运用icmp-type要害字来指定ICMP协议的类型,类型的值有4种:
ICMP Type Value Keyword
Echo reply 0 echorep
Echo request 8 echo
Router advertisement 9 routerad
Router solicitation 10 routersol

比方:
block out quick proto icmp from any to 10.4.128.163/32 icmp-type 0
(防止对PING的照应)

在这里要诠释一下quick的用法,这是个很好用的要害字,倘若你的防火墙有100条规定端正,最无效的可以只需前10条,那么quick是迥殊很是有须要的。

pass in log quick proto tcp from 10.4.128.163/32 to any port = telnet
block in log all from any to any

倘若你希冀防止处事器的所有包而只希冀一个IP只可以telnet的话,那么就可以加上quick要害字,quick的感化是当包符合这条规定端合法前,就不再向下防止遍历了。倘若没有quick的状态下,每一个包都要遍历整个规定端正表,这样的开支是十分年夜的,可是倘若滥用quick也是不明智的,由于它终究成果不会产生日记。




版权声明: 原创作品,准许转载,转载时请务必以超链接方式标明文章 原始理由 、作者信息和本声明。否则将清查执法责任。

转载于:https://www.cnblogs.com/zgqjymx/archive/2011/03/07/1975939.html

 类似资料: