centos 配置端口

linux

Posted by Kinsomy on March 22, 2019

前言

最近在VPS上重新安装了centos6的系统,同时配置了ngnix服务器,但是当这些工作都搞定后,发现ss连接不上了,ip能ping通,所以并不是ip被墙了,于是那端口扫描工具随机扫了一遍端口,发现都是出于关闭状态,因此确定了是端口被禁用导致的连接失败。

扫描端口

执行命令扫描系统开放的端口:

/etc/init.d/iptables status

结果centos的防火墙导致初始状态只保留了极少的公共端口:

表格:filter
Chain INPUT (policy DROP)
num  target     prot opt source               destination         
1    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpts:39000:40000 
2    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:8888 
3    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:80 
4    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:22 
5    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:21 
6    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:20 
7    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:29006 
8    ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0           icmp type 255 
9    ACCEPT     all  --  127.0.0.1            127.0.0.1           
10   ACCEPT     all  --  127.0.0.1            127.0.0.1           
11   ACCEPT     all  --  127.0.0.1            127.0.0.1           
12   ACCEPT     all  --  127.0.0.1            127.0.0.1           
13   ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED 

配置防火墙

如果要为ss server增加端口就需要在防火墙内配置。

vi /etc/sysconfig/iptables

打开iptables可以看到

# Generated by iptables-save v1.4.7 on Fri Mar 22 00:14:16 2019
*filter
:INPUT DROP [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [1:140]
-A INPUT -p tcp -m state --state NEW -m tcp --dport 39000:40000 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 8888 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 20 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 29006 -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type any -j ACCEPT
-A INPUT -s 127.0.0.1/32 -d 127.0.0.1/32 -j ACCEPT
-A INPUT -s 127.0.0.1/32 -d 127.0.0.1/32 -j ACCEPT
-A INPUT -s 127.0.0.1/32 -d 127.0.0.1/32 -j ACCEPT
-A INPUT -s 127.0.0.1/32 -d 127.0.0.1/32 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
COMMIT
# Completed on Fri Mar 22 00:14:16 2019

在里面新增一个端口,并制定端口支持的协议即可:

-A INPUT -p tcp -m state --state NEW -m tcp --dport [port] -j ACCEPT

如果要增加一定范围的端口可以使用[port]:[port],例如[6000]:[8000] 然后执行命令重启防火墙:

service iptables restart

再次执行扫描端口命令发现增加的8589端口已经开放了。