- 论坛徽章:
- 0
|
<原创>用PF限制部分机器上网完美方案公司上网方式通过FreeBSD6.1+PF,最近公司领导要求只允许部分机器上网,一直没有在网上找到有关用PF来限制部分机器上网的资料,现在写个草稿欢迎各位老大,各们前辈,指点修改有问题的地方;
(实现功能:现在要求IP为10.0.0.1,10.0.0.6,10.0.0.8,10.0.016,10.0.0.20 这五个IP能上网,其它全部不
能上)
int_if = "fxp0" ###内网
ext_if = "rl0" ##外网
icmp_types = "echoreq"
router_ip = "{10.0.0.1,10.0.0.6, 10.0.0.8, 10.0.0.16, 10.0.0.20} ###定义能上网的IP
set block-policy return
set loginterface $ext_if ###记录日志
scrub in all ###流量整修
nat on $ext_if from $router_ip to any -> ($ext_if) ###让router_ip地址上网
block all ###禁止所有数据包
pass quick on lo0 all ###允许虚拟网络接口
pass quick on tun0 all ###adsl用户这个可千万别忘记了!要不然上不了网!呵呵
pass in on $int_if from $router_ip to any keep state ###允许内网互访
pass out on $int_if from any to $router_ip keep state
pass out on $ext_if proto tcp all modulate state flags S/SA ###允许数据包通过防火墙
pass out on $ext_if proto { tcp, udp } all keep state
以上经过一个上午反复调试,实验终于成功!呵呵,第一时间分离与CU的兄弟们!!!!! :em11:
[ 本帖最后由 qdmacat 于 2007-1-7 16:01 编辑 ] |
|