• 1
  • 2
  • 3
  • 4
  • 5
阿里云主机ECS 首 页  »  帮助中心  »  云服务器  »  阿里云主机ECS
ECS 服务器CentOS系统开放端口的具体操作
发布日期:2015-12-29 14:12:2

  ECS CentOS系统的服务器,初始的时候没有开启防火墙,服务器对端口没有屏蔽,若用户想在服务器内只允许特定的端口可对外使用,可在服务器内设置iptables规则,来实现对端口的控制,具体的方法如下所示:

  1、首次登录服务器,使用service iptables status 命令可查看到服务器的防火墙是关闭的状态,此时可使用 service iptables start 命令来启动防火墙,防火墙启动后,再次使用service iptables status可查看目前防火墙内是无规则的,端口全部不阻断。


  2、之后将服务器常用端口添加到防火墙内,以远程端口22为例,命令如下所示:

  iptables -A INPUT -p tcp --dport 22 -j ACCEPT

  iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT

  命令解释:

  --dport 就是目标端口 当数据从外部进入服务器为目标端口

  -A 指添加一条新的规则

  -p 指定是什么协议 通常指的是tcp协议,也可以使用udp

  反之 数据从服务器出去 则为数据源端口 使用 --sport

  -j 就是指定是 ACCEPT 接收或 DROP 不接收

  添加后使用service iptables save命令保存下规则(注:若端口号添加错误,用户可以将命令中的-A参数修改为-D,其他不变,执行后可以删除之前添加的规则),之后使用service iptables restart重启下防火墙,使用service iptables status查看下规则,可以看到目前防火墙的出站和 入站规则中,22端口是放行的状态,如果用户需要开启其他的端口,可以按照此方法自行开通下,规则添加完需要手动保存下,之后重启下防火墙才能生效。


  3、需放行的端口添加完毕后,输入下如下三条命令:

  iptables -P INPUT DROP

  iptables -P FORWARD DROP

  iptables -P OUTPUT DROP

  这三条命令的作用是禁止全部入站出站行为,之后保存重启下防火墙,此时防火墙会屏蔽除了您开放的端口之外的其他全部端口。