有思俱乐部学习园地

端口开放及指定ip段访问

端口开放

在DMZ中需要开放的端口较多,需要添加iptables规则开放需要的端口,但是在ubuntu系统中机子重启后添加的规则都会失效,所以我们需要将规则写入sh文件中使其可以开机自动运行

首先创建一个sh文件,(这里文件名为ip,可根据自身需求修改文件名)

#touch ip.sh

进入ip.sh文件

#vi ip.sh

在ip.sh中添加iptables规则

例子(这里以我们常用的远程访问端口22为例子,端口号可自行更改)
iptables -A INPUT -p tcp --dport 22 -j ACCEPT  (接收包)
iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT (发送包)
讲解:
-A 参数就看成是添加一条 INPUT 的规则
-p 指定是什么协议 我们常用的tcp 协议,还有udp协议
--dport 就是目标端口 当数据从外部进入服务器为目标端口
--sport 数据从服务器出去 则为数据源端口
-j 指定是 ACCEPT 接收 或者 DROP 不接收
INPUT 接收  OUTPUT 发出  FORWARD 转发

在sh脚本中添加以下规则


#设置成防火墙默认拒绝
iptables -P INPUT DROP   

#指定IP段访问的办法,指定端口22
iptables -I INPUT -s 58.250.198.0/24 -p tcp --dport 1221 -j ACCEPT
iptables -I INPUT 2 -p tcp --dport 1221 -j DROP

#172.16.8.2:22
iptables -A INPUT -p tcp --dport 10000 -j ACCEPT  

#172.16.8.2:9425
iptables -A INPUT -p tcp --dport 10001 -j ACCEPT  

#172.16.8.3:22
iptables -A INPUT -p tcp --dport 10002 -j ACCEPT  

#172.16.8.4:22
iptables -A INPUT -p tcp --dport 10003 -j ACCEPT  

 #172.16.8.5:22
iptables -A INPUT -p tcp --dport 10004 -j ACCEPT 

#172.16.8.6:22
iptables -A INPUT -p tcp --dport 10005 -j ACCEPT 

#172.16.8.7:22
iptables -A INPUT -p tcp --dport 10006 -j ACCEPT  

#172.16.8.8:22
iptables -A INPUT -p tcp --dport 10007 -j ACCEPT  

 #172.16.8.9:22
iptables -A INPUT -p tcp --dport 10008 -j ACCEPT 

#172.16.8.10:22
iptables -A INPUT -p tcp --dport 10009 -j ACCEPT  

#172.16.8.11:22
iptables -A INPUT -p tcp --dport 10010 -j ACCEPT  

#172.16.8.12:22
iptables -A INPUT -p tcp --dport 10011 -j ACCEPT  

#172.16.8.20:22
iptables -A INPUT -p tcp --dport 10012 -j ACCEPT  

#172.16.8.20:873
iptables -A INPUT -p tcp --dport  873   -j ACCEPT   

#172.16.8.30:22
iptables -A INPUT -p tcp --dport 10013 -j ACCEPT  

#172.16.8.31:22
iptables -A INPUT -p tcp --dport 10014 -j ACCEPT  

#172.16.8.32:22
iptables -A INPUT -p tcp --dport 10015 -j ACCEPT  

#172.16.8.33:22
iptables -A INPUT -p tcp --dport 10016 -j ACCEPT  

 #172.16.8.34:22
iptables -A INPUT -p tcp --dport 10017 -j ACCEPT 

 #172.16.8.35:22
iptables -A INPUT -p tcp --dport 10018 -j ACCEPT 

#172.16.8.36:22
iptables -A INPUT -p tcp --dport 10019 -j ACCEPT  

#172.16.8.37:22
iptables -A INPUT -p tcp --dport 10020 -j ACCEPT  

#172.16.8.38:22
iptables -A INPUT -p tcp --dport 10021 -j ACCEPT  

#172.16.9.10:22
iptables -A INPUT -p tcp --dport 11001 -j ACCEPT  

#172.16.9.12:22
iptables -A INPUT -p tcp --dport 11002 -j ACCEPT  

#172.16.9.14:22
iptables -A INPUT -p tcp --dport 11003 -j ACCEPT  

#172.16.9.16:22
iptables -A INPUT -p tcp --dport 11004 -j ACCEPT  

#172.16.9.18:22
iptables -A INPUT -p tcp --dport 11005 -j ACCEPT  

#172.16.9.20:22
iptables -A INPUT -p tcp --dport 11006 -j ACCEPT  

#172.16.9.20:3306
iptables -A INPUT -p tcp --dport 11007 -j ACCEPT  

 #172.16.9.22:22
iptables -A INPUT -p tcp --dport 11008 -j ACCEPT 

#172.16.9.22:3306
iptables -A INPUT -p tcp --dport 11009 -j ACCEPT  

#172.16.9.24:22
iptables -A INPUT -p tcp --dport 11010 -j ACCEPT  

#172.16.9.24:3306
iptables -A INPUT -p tcp --dport 11011 -j ACCEPT  

#172.16.9.26:22
iptables -A INPUT -p tcp --dport 11012 -j ACCEPT  

 #172.16.9.26:3306
iptables -A INPUT -p tcp --dport 11013 -j ACCEPT 

#172.16.9.30:3306
iptables -A INPUT -p tcp --dport 11014 -j ACCEPT  

#172.16.9.101:3389
iptables -A INPUT -p tcp --dport 11301 -j ACCEPT  

#172.16.9.101:1433
iptables -A INPUT -p tcp --dport 11302 -j ACCEPT 

#172.16.9.103:3389
iptables -A INPUT -p tcp --dport 11303 -j ACCEPT  

#172.16.9.103:1433
iptables -A INPUT -p tcp --dport 11304 -j ACCEPT  

#172.16.9.105:3389
iptables -A INPUT -p tcp --dport 11305 -j ACCEPT  

#172.16.9.105:1433
iptables -A INPUT -p tcp --dport 11306 -j ACCEPT  

#172.16.9.106:3389
iptables -A INPUT -p tcp --dport 11307 -j ACCEPT  

#172.16.9.201:22
iptables -A INPUT -p tcp --dport 11601 -j ACCEPT  

#172.16.9.203:22
iptables -A INPUT -p tcp --dport 11603 -j ACCEPT 

#172.16.9.205:22
iptables -A INPUT -p tcp --dport 11605 -j ACCEPT  

#172.16.9.201:27017
iptables -A INPUT -p tcp --dport 11602 -j ACCEPT  

#172.16.9.203:27017
iptables -A INPUT -p tcp --dport 11604 -j ACCEPT  

#172.16.9.205:27017
iptables -A INPUT -p tcp --dport 11606 -j ACCEPT  

#172.16.10.98:22
iptables -A INPUT -p tcp --dport 13000 -j ACCEPT 

#172.16.10.98:3306
iptables -A INPUT -p tcp --dport 13001 -j ACCEPT 

#172.16.10.98:3000
iptables -A INPUT -p tcp --dport 13002 -j ACCEPT  

#172.16.10.91:3389
iptables -A INPUT -p tcp --dport 13051 -j ACCEPT  

#172.16.10.91:13052
iptables -A INPUT -p tcp --dport 13052 -j ACCEPT  

#172.16.10.91:8080
iptables -A INPUT -p tcp --dport 13055 -j ACCEPT  

#172.16.10.105:3389
iptables -A INPUT -p tcp --dport 13101 -j ACCEPT  

#172.16.10.105:443
iptables -A INPUT -p tcp --dport 13102 -j ACCEPT  

#172.16.8.17:20
iptables -A INPUT -p tcp --dport 20 -j ACCEPT  

#172.16.8.17:21
iptables -A INPUT -p tcp --dport 21 -j ACCEPT  

#172.16.8.17:13151-13195
iptables -A INPUT -p tcp --dport 13151:13195 -j ACCEPT  

#172.16.10.121:22
iptables -A INPUT -p tcp --dport 13200 -j ACCEPT  

#172.16.10.121:80
iptables -A INPUT -p tcp --dport 13201 -j ACCEPT  

#172.16.10.122:22
iptables -A INPUT -p tcp --dport 13202 -j ACCEPT  

#172.16.10.122:80
iptables -A INPUT -p tcp --dport 13203 -j ACCEPT  

#172.16.10.123:22
iptables -A INPUT -p tcp --dport 13204 -j ACCEPT  

#172.16.10.123:80
iptables -A INPUT -p tcp --dport 13205 -j ACCEPT  

#172.16.10.111:22
iptables -A INPUT -p tcp --dport 13251 -j ACCEPT  

#172.16.10.112:22
iptables -A INPUT -p tcp --dport 13252 -j ACCEPT  

#172.16.10.114:22
iptables -A INPUT -p tcp --dport 13259 -j ACCEPT  

#172.16.10.113:22
iptables -A INPUT -p tcp --dport 13253 -j ACCEPT  

 #172.16.10.113:80
iptables -A INPUT -p tcp --dport 13258 -j ACCEPT 

#172.16.10.113:445
iptables -A INPUT -p tcp --dport 13255 -j ACCEPT  

#172.16.10.113:137
iptables -A INPUT -p udp --dport 3256  -j ACCEPT  
 
#172.16.7.10:22
iptables -A INPUT -p tcp --dport 14001 -j ACCEPT  

#172.16.7.11:22
iptables -A INPUT -p tcp --dport 14002 -j ACCEPT  

#172.16.7.12:22
iptables -A INPUT -p tcp --dport 14003 -j ACCEPT  

#172.16.7.10:22
iptables -A INPUT -p tcp --dport 14022 -j ACCEPT  

#172.16.7.10:7001
iptables -A INPUT -p tcp --dport 14004 -j ACCEPT  

#172.16.7.10:7002
iptables -A INPUT -p tcp --dport 14005 -j ACCEPT  

#172.16.7.11:7001
iptables -A INPUT -p tcp --dport 14006 -j ACCEPT  

#172.16.7.11:7002
iptables -A INPUT -p tcp --dport 14007 -j ACCEPT  

#172.16.7.12:7001
iptables -A INPUT -p tcp --dport 14008 -j ACCEPT  

#172.16.7.12:7002
iptables -A INPUT -p tcp --dport 14009 -j ACCEPT  

 #172.16.7.20:3389
iptables -A INPUT -p tcp --dport 14020 -j ACCEPT 

#172.16.7.20:8085
iptables -A INPUT -p tcp --dport 14021 -j ACCEPT  

#172.16.10.60:3389
iptables -A INPUT -p tcp --dport 12508 -j ACCEPT  

#172.16.10.31:22
iptables -A INPUT -p tcp --dport 12509 -j ACCEPT  

 #172.16.10.61:3389
iptables -A INPUT -p tcp --dport 12510 -j ACCEPT 

#172.16.10.61:80
iptables -A INPUT -p tcp --dport 12511 -j ACCEPT  

#172.16.10.28:22
iptables -A INPUT -p tcp --dport 12512 -j ACCEPT  

#172.16.10.28:80
iptables -A INPUT -p tcp --dport 12513 -j ACCEPT  

#172.16.10.27:22
iptables -A INPUT -p tcp --dport 12514 -j ACCEPT  

#172.16.10.27:1337
iptables -A INPUT -p tcp --dport 12515 -j ACCEPT  

#172.16.10.40:22
iptables -A INPUT -p tcp --dport 12101 -j ACCEPT  

#172.16.10.40:80
iptables -A INPUT -p tcp --dport 12102 -j ACCEPT  

#172.16.10.40:81
iptables -A INPUT -p tcp --dport 12103 -j ACCEPT  

 #172.16.10.32:22
iptables -A INPUT -p tcp --dport 12104 -j ACCEPT 

#172.16.10.32:80
iptables -A INPUT -p tcp --dport 12105 -j ACCEPT  

#172.16.10.32:81
iptables -A INPUT -p tcp --dport 12106 -j ACCEPT  

#172.16.10.51:22
iptables -A INPUT -p tcp --dport 12201 -j ACCEPT  

#172.16.10.52:22
iptables -A INPUT -p tcp --dport 12202-j ACCEPT   

#172.16.10.53:22
iptables -A INPUT -p tcp --dport 12203 -j ACCEPT  

#172.16.10.71:22
iptables -A INPUT -p tcp --dport 12301 -j ACCEPT  

#172.16.10.20:3389
iptables -A INPUT -p tcp --dport 12002 -j ACCEPT  

#172.16.10.21:3389
iptables -A INPUT -p tcp --dport 12003 -j ACCEPT  

#172.16.11.10:22
iptables -A INPUT -p tcp --dport 12004 -j ACCEPT  

#172.16.11.11:3389
iptables -A INPUT -p tcp --dport 12005 -j ACCEPT  

#172.16.11.12:3389
iptables -A INPUT -p tcp --dport 12006 -j ACCEPT  

#172.16.11.13:3389
iptables -A INPUT -p tcp --dport 12007 -j ACCEPT  

#172.16.11.14:3389
iptables -A INPUT -p tcp --dport 12008 -j ACCEPT  

#172.16.10.10:3389
iptables -A INPUT -p tcp --dport 12501 -j ACCEPT  

#172.16.10.11:3389
iptables -A INPUT -p tcp --dport 12502 -j ACCEPT  

 #172.16.10.12:3389
iptables -A INPUT -p tcp --dport 12503 -j ACCEPT 

#172.16.10.13:3389
iptables -A INPUT -p tcp --dport 12504 -j ACCEPT  

#172.16.10.14:3389
iptables -A INPUT -p tcp --dport 12505 -j ACCEPT  

 #172.16.10.15:3389
iptables -A INPUT -p tcp --dport 12506 -j ACCEPT 

#172.16.10.16:3389
iptables -A INPUT -p tcp --dport 12507 -j ACCEPT  

#172.16.10.17:22
iptables -A INPUT -p tcp --dport 14032 -j ACCEPT  

#172.16.11.51:22
iptables -A INPUT -p tcp --dport 13351 -j ACCEPT  

#172.16.11.51:443
iptables -A INPUT -p tcp --dport 13352 -j ACCEPT  

#172.16.10.200:22
iptables -A INPUT -p tcp --dport 12601 -j ACCEPT  

#172.16.9.102:3389
iptables -A INPUT -p tcp --dport 12602 -j ACCEPT  

#172.16.7.21:22
iptables -A INPUT -p tcp --dport 14030 -j ACCEPT  

 #172.16.7.21:3306
iptables -A INPUT -p tcp --dport 14028 -j ACCEPT 

 #172.16.7.22:22
iptables -A INPUT -p tcp --dport 14031 -j ACCEPT 

#172.16.7.22:3306
iptables -A INPUT -p tcp --dport 14029 -j ACCEPT  

#172.16.7.23:22
iptables -A INPUT -p tcp --dport 14034 -j ACCEPT  

#172.16.7.23:3306
iptables -A INPUT -p tcp --dport 14035 -j ACCEPT  

#172.16.7.24:22
iptables -A INPUT -p tcp --dport 14036 -j ACCEPT  

#172.16.7.24:3306
iptables -A INPUT -p tcp --dport 14037 -j ACCEPT  

#172.16.11.20:22
iptables -A INPUT -p tcp --dport 14038 -j ACCEPT  

#172.16.11.22:137
iptables -A INPUT -p udp --dport  137  -j ACCEPT  

#172.16.11.22:138
iptables -A INPUT -p udp --dport  138 -j ACCEPT  

#172.16.11.22:139
iptables -A INPUT -p tcp --dport 139  -j ACCEPT  

#172.16.11.22:445
iptables -A INPUT -p tcp --dport 445 -j ACCEPT

#172.16.11.22:3389
iptables -A INPUT -p tcp --dport 14040 -j ACCEPT  

#172.16.11.35:22
iptables -A INPUT -p tcp --dport 14041 -j ACCEPT  

 #172.16.11.36:22
iptables -A INPUT -p tcp --dport 14042 -j ACCEPT 



#指定IP段访问的办法,指定端口1221
iptables -I INPUT -s 113.105.119.0/24 -p tcp --dport 1221 -j ACCEPT  (俱乐部)
iptables -I INPUT -s 113.98.58.0/24 -p tcp --dport 1221 -j ACCEPT   (教东)
iptables -I INPUT 2 -p tcp --dport 1221 -j DROP


#设置成防火墙默认拒绝
iptables -P INPUT DROP    

指定IP段访问的办法,指定端口1221

在sh文件下面添加规则

iptables -I INPUT -s 113.105.119.0/24 -p tcp --dport 1221 -j ACCEPT
iptables -I INPUT 2 -p tcp --dport 1221 -j DROP           

讲解

iptables -I INPUT -s IP -p tcp --dport 端口号 -j ACCEPT
-s ip来源
-j 就是指定是 ACCEPT 接收 或者 DROP 不接收  (这里为接收 )          
            

设置防火墙启动

 iptables -P INPUT DROP  
注解
iptables规则执行有先后顺序,需要先提前执行打开需要的开放端口,然后在执行指定ip段访问,最后才能把防火墙开启,
若先开启防火墙后面再执行开端口则会有一段时间DMZ中的流量都将被挡在外面 
查看已经连接的服务端口
#netstat -a
查看使用中的端口,并删除指定端口
#iptables -t nat -L -n
root@ubuntu:~# iptables -L -n --line-numbers 
Chain INPUT (policy DROP)
num  target     prot opt source               destination         
1    ACCEPT     tcp  --  10.3.16.0/24         0.0.0.0/0            tcp dpt:1221
2    ACCEPT     tcp  --  10.3.15.0/24         0.0.0.0/0            tcp dpt:1221
3    DROP       tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:1221

Chain FORWARD (policy ACCEPT)
num  target     prot opt source               destination         
1    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0     

Chain OUTPUT (policy ACCEPT)
num  target     prot opt source               destination         
1    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp spt:10000
2    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp spt:10001

可以看到左边有显示规则和相对应的编号,那么我们就可以进行删除了
#iptables -D INPUT 2 (删除INPUT下的第2条规则)
#iptables -D FORWARD 1(删除FORWARD下的第1条规则)
#iptables -D OUTPUT 2 (删除OUTPUT下的第2条规则)   

清空所有规则,开放所有端口
#iptables -P INPUT ACCEPT 
#iptables -F>


工作人员

 
作者:庄皓俊
信息录入:庄皓俊