IPTABS技术题型


1.如何将本地80 端口的请求转发到8080 端口,当前主机IP 为192.168.216.135

[root@localhost ~]#  iptables -t nat -A PREROUTING  -d 192.168.216.135 -p tcp --dport 80 -j DNAT --to 192.168.216.135:8080

2.限制192.168.216.174访问本机的ssh,并记录日志

[root@localhost ~]# iptables -A INPUT  -p tcp --dport 22 -s 192.168.216.174 -j LOG

3.限制192.168.216.174访问本机的http服务

[root@localhost ~]# iptables -A INPUT -p tcp --dport 80 -s 192.168.216.174 -j REJECT

4.限制所有机器访问本机的1700:1800 178 1189端口

[root@localhost ~]# iptables -A INPUT -p tcp -m multiport --dports 178,1189,1700:1800  -j REJECT

5.将tcp协议的80端口专项7800端口

[root@localhost bin]# iptables -t nat -A PREROUTING -p tcp -d 192.168.216.170 --dport 7800 -j DNAT --to 192.168.216.170:80
[root@localhost ~]# iptables -t nat -A PREROUTING -d 192.168.216.137 -p tcp  --dport 8080 -j DNAT --to 192.168.216.137:80

6.开启内核IP转发

rhel6的开启方法:
[root@localhost ~]# vim /etc/sysctl.conf 
[root@xuli-two ~]# sysctl -p
net.ipv4.ip_forward = 1

rhel7的开启方法:
[root@localhost sysctl.d]# vim abc.conf
[root@localhost sysctl.d]# sysctl -p /etc/sysctl.d/abc.conf 
net.ipv4.ip_forward = 1

7.允许本机ping其他主机,禁止其他主机ping本机

方法一:
[root@localhost sysctl.d]# iptables -A INPUT -p icmp --icmp-type echo-request -j DROP 
[root@localhost sysctl.d]# iptables -A INPUT -p icmp ! --icmp-type echo-request -j ACCEPT
方法二:
[root@localhost sysctl.d]# iptables -A OUTPUT -p icmp --icmp-type echo-request -j ACCEPT
[root@localhost sysctl.d]# iptables -A OUTPUT -p icmp ! --icmp-type echo-request -j DROP

8.tcp标记细分控制(1.禁止入站的SYN请求包,检查4个标记位,其中SYN的位置2.放行入站访问的其他数据包)

[root@localhost ~]# iptables -A INPUT -i enss33 -p tcp --tcp-flags SYN,RST,ACK,FIN SYN -j DROP
[root@localhost ~]# iptables -A INPUT -i enss33 -p tcp ! --syn -j ACCEPT 

9.丢弃陌生的TCP响应包(防止反射/反弹式攻击)

[root@localhost ~]# iptables -A INPUT -m state --state NEW -p tcp ! --syn -j DROP
[root@localhost ~]# iptables -A FORWARD -m state --state NEW -p tcp ! --syn -j DROP

10.根据MAC地址封锁主机

[root@localhost ~]# iptables -A INPUT -m mac --mac-source 00:0c:29:74:BE:21 -j DROP

11.SSH登录的IP范围控制(允许从192.168.4.10-192.168.4.20登录,禁止192.168.4.0/24网段其他主机登录)

[root@localhost ~]# iptables -A INPUT -p tcp --dport 22 -m iprange --src-range 192.168.4.10-192.168.4.20 -j ACCEPT
[root@localhost ~]# iptables -A INPUT -p tcp --dport 22 -s 192.168.4.0/24 -j DROP

12.SNAT共享上网(选择路由后,针对来自局域网、即将从外网接口发出去的包,讲源IP地质修改为网关公网IP地址)

[root@localhost ~]# iptables -t nat -A POSTROUTING -s 192.168.4.0/24 -o eth1(外网接口) -j SNAT --to source 174.16.16.1

13.地址伪装(共享动态公网IP地址上网1.主要针对外网接口的IP地址不固定的情况2.将SNAT改为MASQUERADE即可3.对于ADSL宽带拨号连接,网络接口可写为ppp+)

[root@localhost ~]# iptables -t nat -A POSTROUTING -s 192.168.4.0/24 -o eth0 -j MASQUERADE --to-source 174.16.16.1

14.发布Web服务器(在选择路由之前,针对从外网接口收到的、访问本机公网地址TCP 80端口的数据包,将其目标地址修改为位于内网的web主机的IP地址)

[root@localhost ~]# iptables -t nat -A PREROUTING -i eth1 -d 174.16.16.1 -p tcp --dport 80 -j DNAT --to-destination 192.168.4.5

15.发布SSH服务器(执行ssh -p 2345 174.16.16.1时实际登录192.168.4.5)

[root@localhost ~]# iptables -t nat -A PREROUTING -i eth1 -d 174.16.16.1 -p tcp --dport 2345 -j DNAT --to-destination 192.168.4.5:22

16.发布FTP服务(注意事项:加载nf_nat_ftp、nf_conntrack_ftp)

[root@localhost ~]# modprobe -a nf_nat_ftpnf_conntrack_ftp
[root@localhost ~]# iptables -t nat -A PREROUTING -i eth1 -d 174.16.16.1 -p tcp --dport 20:21 -j DNAT --to-destination 192.168.4.5

17.自定义规则(作用:1.可以归类2.可以不要其他链干扰)

1.添加一条rhce的自定义链
[root@localhost ~]# iptables -N RHCE
2.RHCE中写一条规则
[root@localhost ~]# iptables -A RHCE -p tcp --dport 21 -j REJECT
3.开启用户自定义链
[root@localhost ~]# iptables -A INPUT -j RHCE
4.删除自定义链
[root@localhost ~]# iptables -X RHCE

18.iptables常用

修改默认规则(默认规则不能清空)
[root@localhost ~]# iptables -p INPUT DROP
iptables 导出
[root@localhost ~]# iptables-save
[root@localhost ~]# iptables-save > /root/myfw.rule
iptables 导入
[root@localhost ~]# service iptables stop
[root@localhost ~]# iptables-restore < /root/myfw.rele
[root@localhost ~]# service iptables status
开机后自动加载已保存的规则(/etc/sysconfig/iptables)
[root@localhost ~]# iptables-save > /etc/sysconfig/iptables
[root@localhost ~]# service iptables stop
[root@localhost ~]# service iptables start
[root@localhost ~]# chkconfig iptables on

清空防火墙规则和自定义链

[root@localhost ~]# iptables -F
[root@localhost ~]# iptables -X

用数字的方式来表示端口

[root@localhost ~]# iptables -vnL
[root@localhost ~]# iptables -nL

查看规则的数字序列,清空规则的数字序列

[root@localhost ~]# iptables -nL --line-numbers
[root@localhost ~]# iptables -Z

删除(-D)添加(-A)插入(-I)规则

[root@localhost ~]# tables -A INPUT -p tcp --dport 1800:1900 -j ACCEPT
[root@localhost ~]# tables -D INPUT -p tcp --dport 1800:1900 -j ACCEPT
[root@localhost ~]# tables -I INPUT 2 -p tcp --dport 1800:1900 -j ACCEPT

19.允许从内网访问外网的服务,禁止从外网访问内网

[root@localhost ~]# iptables -A FORWARD -s 192.168.4.0/24 -o eth0 -j ACCEPT
[root@localhost ~]# iptables -A FORWARD -d 192.168.4.0/24 -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
[root@localhost ~]# iptables -A FORWARED -f 192.l68.4.0/24 -i eth0 -m state --state NEW -j DROP

猜你喜欢

转载自blog.csdn.net/baidu_38432732/article/details/80637967
今日推荐