NAT网关安装笔记 -- 网络系统 -- IT技术博客大学习 -- 共学习 共进步!
source link: https://blogread.cn/it/article/329?f=hot1
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
NAT网关安装笔记
!!!绝对不要远程调试防火墙配置!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
硬件需求:
双网卡
内存 > 64M
硬盘 > 1G
注:
NAT网关本身效率都很高,所以即使在配置很低的机器上运行效率也是足够的(仍建议尽可能多的增加内存 > 256M),如果需要记录日志做分析,则会产生很大的I/O操作并占用大量硬盘空间,建议使用SCSI硬盘并做日志轮循。
假设2块网卡分别按照以下网段设置:
内网网卡IP地址:192.168.0.1/255.255.255.0 本身为网关
外网网卡IP地址:111.222.111.222/255.255.255.192 网关:111.222.111.1
安全策略:
- 作为网关,安全性非常重要,建议除了远程登录用的SSH外,尽可能多的停掉所有不相关服务。
- 本安装文档只是最简单的配置,没有任何安全过滤规则,更多安全过滤规则需要根据实际情况补充。
FreeBSD 4.7上用IPFIREWALL做NAT网关
安装FreeBSD系统时包含开发平台(gcc工具等),因为内核缺省不支持地址转发和防火墙,所以需要重新编译内核。内核编译
========
由于内核缺省不支持地址转发和防火墙,所以需要重新编译内核:
#cd /usr/src/sys/i386/conf/
#cp GENERIC GATEWAY
#vi GATEWAY
修改后的内核配置:修改了名称和增加了IPFIREWALL的相关选项:
#diff GATEWAY GENERIC
25c25
< ident GATEWAY
---
> ident GENERIC
62,64d61 加入IPFIREWALL选项
< options IPFIREWALL
< options IPFIREWALL_VERBOSE
< options IPDIVERT
重新编译:大约需要30分钟左右
#/usr/sbin/config GATEWAY
#cd ../../compile/GATEWAY/
#make depend; make; make install
重启机器一次,确认新的KERNEL正常启动。
修改rc.conf中的相关配置:假设内网使用网卡fxp0,外网网卡使用xl0
###############################################
gateway_enable="YES"
ifconfig_fxp0="inet 192.168.0.1 netmask 255.255.255.0"
ifconfig_xl0="inet 111.222.111.222 netmask 255.255.255.0"
defaultrouter="111.222.111.1"
natd_enable="YES"
natd_interface="xl0"
firewall_enable="YES"
firewall_type="open"
###############################################
防火墙过滤规则设置
==================
ipfw的规则是通过运行/etc/rc.firewall这个脚本生效的,rc.firewall脚本会检查rc.conf中firewall_type等配置,然后根据firewall_type定义的模式"open" "client" "simple"等切换到rc.firewall中相应部分执行。
一个安全的防火墙本身是一个非常复杂的策略。为了方便配置,可以以rc.firewall文件为基础,在各种缺省模式的基础上加入自己的规则。缺省最简单的防火墙配置是在rc.conf里设置使用"open"模式,
注意:修改rc.firewall配置建议从最简单的"open"模式开始,而且让修改生效前,一定将旧的成功运行的配置文件备份成rc.firewall.bak,便于以后的错误后恢复,如果防火墙配置错误可能导致远程无法登陆,因此修改防火墙配置一定要在服务器终端界面进行。
日志记录
========
文件系统优化: 使用异步文件系统提高性能async
vi /etc/fstab
/dev/da0s1f /tmp ufs rw,async 2 2
/dev/da0s1g /usr ufs rw,async 2 2
修改rc.firewall中"open"模式中的配置:打开记录日志
#${fwcmd} add 65000 pass all from any to any
${fwcmd} add 65000 pass log all from any to any
修改/etc/newsyslog.conf 增加security日志的存储上限从100k到 10000K
/var/log/security 600 10 10000 * Z
新的配置生效
============
修改防火墙配置后,可以用
#sh /etc/rc.firewall
让新的配置生效
常用命令
========
ipfw list:显示目前的配置规则:
#ipfw list
00050 divert 8668 ip from any to any via xl0
00100 allow ip from any to any via lo0
00200 deny ip from any to 127.0.0.0/8
00300 deny ip from 127.0.0.0/8 to any
65000 allow log ip from any to any
65535 deny ip from any to any
ipfw show:显示各种规则的统计信息
# ipfw show
00050 1008267 632203534 divert 8668 ip from any to any via vr0
00100 0 0 allow ip from any to any via lo0
00200 0 0 deny ip from any to 127.0.0.0/8
00300 0 0 deny ip from 127.0.0.0/8 to any
65000 1782079 1257247553 allow ip from any to any
65535 36 31871 deny ip from any to any
RedHat 8上用iptables做NAT网关
将下列内容加入/etc/rc.local文件中:eth0绑内网IP eth1绑外网IP################
echo 1 > /proc/sys/net/ipv4/ip_forward
/sbin/modprobe ip_tables
/sbin/modprobe iptable_filter
/sbin/modprobe iptable_nat
/sbin/modprobe ip_conntrack
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ip_nat_ftp
/sbin/iptables --flush INPUT
/sbin/iptables --flush FORWARD
/sbin/iptables --flush POSTROUTING --table nat
/sbin/iptables --policy FORWARD DROP
/sbin/iptables --table nat --append POSTROUTING --out-interface eth1 --source 192.168.0.0/24 --jump MASQUERADE
/sbin/iptables --append FORWARD --in-interface eth1 --match state --state ESTABLISHED,RELATED --jump ACCEPT
/sbin/iptables --append FORWARD --source 192.168.0.0/24 --jump ACCEPT
################
iptables --list查看过滤表
参考资料:
王波:FreeBSD使用大全
http://tech.sina.com.cn/focus/FreeBSD/2000-01-19/196.shtml
FreeBSD IPFW-HOWTO
http://www.freebsd-howto.com/HOWTO/Ipfw-HOWTO
ipfw的命令参考:
http://www.chedong.com/phpMan.php/man/ipfw
《linux下如何用iptables做NAT上网》原文作者:upkill98
http://it.rising.com.cn/newSite/Channels/Safety/SysSafety/Safe_Unix/200211/06-094108327.htm
IPTables的日志分析:
http://www.linuxlinks.com/Software/Log_Analyzers/
iptqlog
软盘防火墙制作:
http://www.zelow.no/floppyfw
http://directory.google.com/Top/Computers/Software/Operating_Systems/Linux/Distributions/Tiny/Floppy_Sized/
建议继续学习:
扫一扫订阅我的微信号:IT技术博客大学习
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK