Код: Выделить всё
#!/bin/sh
FwCMD="/sbin/ipfw -q"
LanOut="em0"
NetOut="xxx.xxx.xxx.xxx
IpOut="xxx.xxx.xxx.xxx"
LanIn="em1"
NetIn="10.0.0.0/8"
${FwCMD} -f flush
${FwCMD} -f pipe flush
${FwCMD} -f queue flush
#pipe
${FwCMD} add 100 allow ip from any to any via lo0
${FwCMD} add 101 deny ip from any to 127.0.0.1/8
${FwCMD} add 102 deny ip from 127.0.0.1/8 to any
${FwCMD} add 103 deny ip from table\(40\) to any
${FwCMD} add 104 deny ip from any to table\(40\)
${FwCMD} add 105 deny tcp from table\(40\) to any
${FwCMD} add 106 deny tcp from any to table\(40\)
${FwCMD} add 107 deny udp from table\(40\) to any
${FwCMD} add 108 deny udp from any to table\(40\)
${FwCMD} add 110 deny all from 10.0.0.0/8 to any in via em0
${FwCMD} add 111 divert natd all from any to any via em0
${FwCMD} add 112 deny log ip from any to me 3306
${FwCMD} add 113 deny log tcp from any to me 3306
${FwCMD} add 114 deny log udp from any to me 3306
${FwCMD} add 200 tee 7223 ip from any to any via em0
${FwCMD} add 201 reject tcp from any to any tcpflags fin, syn, rst, psh, ack, urg
${FwCMD} add 202 reject tcp from any to any tcpflags !fin, !syn, !rst, !psh, !ack, !urg
${FwCMD} add 203 reject log tcp from any to any not established tcpflags fin
${FwCMD} add 204 deny log ip from any to any not verrevpath in
#64Kbit/s
${FwCMD} pipe 10 config mask src-ip 0xffffffff bw 64Kbit/s queue 20Kbytes
${FwCMD} pipe 15 config mask dst-ip 0xffffffff bw 64Kbit/s queue 20Kbytes
${FwCMD} add pipe 10 all from table\(10\) to any in
${FwCMD} add pipe 15 all from any to table\(10\) out
${FwCMD} add allow tcp from table\(10\) to any
${FwCMD} add allow tcp from any to table\(10\)
${FwCMD} add allow udp from table\(10\) to any
${FwCMD} add allow udp from any to table\(10\)
#128Kbit/s
${FwCMD} pipe 20 config mask src-ip 0xffffffff bw 128Kbit/s queue 20Kbytes
${FwCMD} pipe 25 config mask dst-ip 0xffffffff bw 128Kbit/s queue 20Kbytes
${FwCMD} add pipe 20 all from table\(12\) to any in
${FwCMD} add pipe 25 all from any to table\(12\) out
${FwCMD} add allow tcp from table\(12\) to any
${FwCMD} add allow tcp from any to table\(12\)
${FwCMD} add allow udp from table\(12\) to any
${FwCMD} add allow udp from any to table\(12\)
#256Kbit/s
${FwCMD} pipe 30 config mask src-ip 0xffffffff bw 256Kbit/s queue 20Kbytes
${FwCMD} pipe 35 config mask dst-ip 0xffffffff bw 256Kbit/s queue 20Kbytes
${FwCMD} add pipe 30 all from table\(14\) to any in
${FwCMD} add pipe 35 all from any to table\(14\) out
${FwCMD} add allow tcp from table\(14\) to any
${FwCMD} add allow tcp from any to table\(14\)
${FwCMD} add allow udp from table\(14\) to any
${FwCMD} add allow udp from any to table\(14\)
#512Kbit/s
${FwCMD} pipe 40 config mask src-ip 0xffffffff bw 512Kbit/s queue 20Kbytes
${FwCMD} pipe 45 config mask dst-ip 0xffffffff bw 512Kbit/s queue 20Kbytes
${FwCMD} add pipe 40 all from table\(16\) to any in
${FwCMD} add pipe 45 all from any to table\(16\) out
${FwCMD} add allow tcp from table\(16\) to any
${FwCMD} add allow tcp from any to table\(16\)
${FwCMD} add allow udp from table\(16\) to any
${FwCMD} add allow udp from any to table\(16\)
########################################################################
${FwCMD} pipe 50 config mask src-ip 0xffffffff bw 1Mbit/s queue 20Kbytes
${FwCMD} pipe 55 config mask dst-ip 0xffffffff bw 1Mbit/s queue 20Kbytes
${FwCMD} add pipe 50 all from table\(18\) to any in
${FwCMD} add pipe 55 all from any to table\(18\) out
${FwCMD} add allow tcp from table\(18\) to any
${FwCMD} add allow tcp from any to table\(18\)
${FwCMD} add allow udp from table\(10\) to any
${FwCMD} add allow udp from any to table\(10\)
${FwCMD} add 449 deny all from any 139 to me in via em0
${FwCMD} add 449 deny all from any 145 to me in via em0
${FwCMD} add 450 allow ip from me to 10.0.0.0/8
${FwCMD} add 550 allow ip from 10.0.0.0/8 to me
#########################################################################################################################################
#DNS
${FwCMD} add 560 allow udp from any 53, 123 to any
${FwCMD} add 570 allow udp from any to any 53, 123
#Counter-Strike
${FwCMD} add 575 allow udp from any 27000-29999 to any
${FwCMD} add 577 allow udp from any to any 27000-29999
${FwCMD} add 579 allow tcp from any 27000-29999 to any
${FwCMD} add 581 allow tcp from any to any 27000-29999
#WOW
${FwCMD} add 607 allow tcp from any 1119, 3000, 3724 to any
${FwCMD} add 608 allow tcp from any to any 1119, 3000, 3724
#FTP 20
${FwCMD} add 609 allow tcp from any 20 to any
${FwCMD} add 610 allow tcp from any to any 20
${FwCMD} add 611 allow udp from any 20 to any
${FwCMD} add 612 allow udp from any to any 20
#FTP 21
${FwCMD} add 613 allow tcp from any 21 to any
${FwCMD} add 614 allow tcp from any to any 21
${FwCMD} add 615 allow udp from any 21 to any
${FwCMD} add 616 allow udp from any to any 21
#Ventrilo
${FwCMD} add 616 allow udp from any 3908 to any
${FwCMD} add 617 allow udp from any to any 3908
${FwCMD} add 618 allow tcp from any 3908 to any
${FwCMD} add 619 allow tcp from any to any 3908
${FwCMD} add 620 allow udp from any 4088 to any
${FwCMD} add 621 allow tcp from any 4088 to any
${FwCMD} add 622 allow udp from any to any 4088
${FwCMD} add 623 allow tcp from any to any 4088
#garena
#${FwCMD} add 638 allow tcp from any 6100-9999 to any
#${FwCMD} add 639 allow tcp from any to any 6100-9999
#${FwCMD} add 640 allow udp from any 6100-9999 to any
#${FwCMD} add 641 allow udp from any to any 6100-9999
${FwCMD} add 642 allow tcp from any 1513, 1514, 8688, 7456, 6112, 4000, 6200, 8080 to any
${FwCMD} add 643 allow tcp from any to any 1513, 1514, 8688, 7456, 6112, 4000, 6200, 8080
${FwCMD} add 644 allow udp from any 1513, 1514, 8688, 7456, 6112, 4000, 6200, 8080 to any
${FwCMD} add 645 allow udp from any to any 1513, 1514, 8688, 7456, 6112, 4000, 6200, 8080
#Lord of the Rings
${FwCMD} add 646 allow tcp from any 20, 21, 1080, 2900, 2937, 3389, 6015, 7000, 9000, 9002, 9004, 9006, 9008, 9010, 9012, 9014, 9016, 19001, 19093 to any
${FwCMD} add 647 allow tcp from any to any 20, 21, 1080, 2900, 2937, 3389, 6015, 7000, 9000, 9002, 9004, 9006, 9008, 9010, 9012, 9014, 9016, 19001, 19093
${FwCMD} add 648 allow udp from any 2900, 9000, 9002, 9004, 9006, 9008, 9010, 9012, 9014, 9016 to any
${FwCMD} add 649 allow udp from any to any 2900, 9000, 9002, 9004, 9006, 9008, 9010, 9012, 9014, 9016
${FwCMD} add 750 allow tcp from any to me in via em0
${FwCMD} add 810 allow tcp from me to any out via em0
${FwCMD} add 3026 pass tcp from any 3908 to any
${FwCMD} add 3027 deny icmp from any to me via em0
${FwCMD} add 3028 deny icmp from any to me via em1
${FwCMD} add deny all from any to any via em0
${FwCMD} add deny log ip from any to any
Если какая то строчка не в том месте находится, плз подскажи.
Кстати, ipfw по умолчанию deny.