您的位置:首页 > 运维架构 > Linux

linux防火墙的语法规则,以及常用防火墙命令的意思

2017-03-01 15:32 495 查看
一、语法规则
iptables -t 表名(小写) 选项(大写) 链名(大写) 条件(小写) -j 动作(大写)
raw -A(末尾添加) PREROUTING -p(协议名地址匹配) DROP(丢弃)
mangle -I(插入,默认在最前面) INPUT -s(源ip) ACCEPT(允许)
nat -D(删除) FORWARD -d(目标地址) REJECT(拒接)
filter -L(列出) OUTPUT -i(入站网卡) LOG(日志)
-v(列出详细信息) POSTROUTING -o(出战网卡)
--line-numbers(显示行号) --sport(源端口)
-n(数字化显示) --dport(目标端口)
-F(清空规则) --tcp-flags(检查范围)
-P(设置默认规则) --icmp-type(ICMP类型)
-m multiport --sports (源端口)
-m mutiportt --dports (目端口)
-m iprange --src-rang (IP范围ip1-ip2)
-m mac --mac-source (MAC 地址)
-m state --state (链接状态)
ESTABLISHED(已经建立链接的会话)
NEW(新建立的会话)
RELATED(已经链接的会话相关的会话)
由ENW到ESTABLISHED
由RELATED到ESTABLISHED
使用SNAT和DNAT都必须开启路由功能

SNAT:局域网主机共享单个公网ip上网,隐藏内网主机。通过修改数据包的源IP地址实现
iptables -t nat -A POSTROUTING -s 内网网段 -o 外网网卡 -j MASQUERADE
iptables -t nat -A POSTROUTING -s 内网IP -o 外网网卡 -j SANT --to-source 外网卡IP
DNAT:发布内部服务器使用,通过修改数据包的目的地址实现,在路由前时机将公网客户机访问网关的数据中目的 修改为内网服务器地址
iptables -t nat -A PREROUTING -i 外网网卡 -d 外网IP -p tcp --dport 发布的服务端口 -j DNAT --to-destination 内网服务器IP:端口

二、常用
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT ##在防火墙规则的尾部追加一条入站规则:开启链接跟踪对本机的状态检测功能。让本机通信并且状态属于ESTABLISHED,RELATED的数据包让它通过。大概意思就是能够快速的转发数据包,而且每个数据包都去进行过虑了。
Iptables -A INPUT -p tcp -m multiport --dports 20,21,80,443,50000:60000 -j ACCEPT ##在防火墙规则的尾部追加一条入战规则:允许20,21,80,443,50000:60000 端口通过
iptables -t nat -A PREROUTING -i eth0 -d 192.168.20.107 -p tcp --dport 80 -j DNAT --to-destination 192.168.100.250:80 ##发布web
iptables -t nat -A PREROUTING -i eth0 -d 192.168.20.107 -p tcp --dport 20:21 -j DNAT --to-destination 192.168.100.250 ##发布ftp
iptables -t nat -A PREROUTING -i eth0 -d 192.168.20.107 -p tcp --dport 3333 -j DNAT --to-destination 192.168.100.250:22 ##发布ssh(发布ftp的时候需要加载ip_nat_ftp,命令是:modprobe ip_nat_ftp,查看是否加载:lsmod |grep ftp)
iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o eth0 -j SNAT --to-source 192.168.20.107
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息