今天决定给自己的站点配置SSL,配置完成后发现不能正常访问,思来想去发现是未开启443端口。

Linux防火墙开放特定端口

方法一

找到/etc/sysconfig/iptables文件加入如下代码,并保存

-A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT

重启防火墙

service iptables restart

方法二

查看状态:

iptables -L -n

使用iptables开放如下端口

/sbin/iptables -I INPUT -p tcp --dport 443 -j ACCEPT

上述操作,默认将规则插入第一条 iptables命令传送门

将配置保存

/etc/rc.d/init.d/iptables save

重启服务

service iptables restart

查看需要打开的端口是否生效?

/etc/init.d/iptables status

本文到此结束


iptables命令详解

(1)-A -append

   在所选择的链末添加一条或更多规则。当源(地址)或者/与 目的(地址)转换为多个地址时,这条规则会加到所有可能的地址(组合)后面。

(2)-D -delete

   从所选链中删除一条或更多规则。这条命令可以有两种方法:可以把被删除规则指定为链中的序号(第一条序号为1),或者指定为要匹配的规则。

(3)-R -replace

   从选中的链中取代一条规则。如果源(地址)或者/与 目的(地址)被转换为多地址,该命令会失败。规则序号从1开始。

(4)-I -insert

   根据给出的规则序号向所选链中插入一条或更多规则。所以,如果规则序号为1,规则会被插入链的头部。这也是不指定规则序号时的默认方式。

(5)-L -list

   显示所选链的所有规则。如果没有选择链,所有链将被显示。也可以和z选项一起使用,这时链会被自动列出和归零。精确输出受其它所给参数影响。

(6)-F -flush

   清空所选链。这等于把所有规则一个个的删除。

(7)--Z -zero

   把所有链的包及字节的计数器清空。它可以和 -L配合使用,在清空前察看计数器,请参见前文。

(8)-N -new-chain

   根据给出的名称建立一个新的用户定义链。这必须保证没有同名的链存在。

(9)-X -delete-chain

   删除指定的用户自定义链。这个链必须没有被引用,如果被引用,在删除之前你必须删除或者替换与之有关的规则。如果没有给出参数,这条命令将试着删除每个非内建的链。

(10)-P -policy

   设置链的目标规则。

(11)-E -rename-chain

   根据用户给出的名字对指定链进行重命名,这仅仅是修饰,对整个表的结构没有影响。TARGETS参数给出一个合法的目标。只有非用户自定义链可以使用规则,而且内建链和用户自定义链都不能是规则的目标。

(12)-h Help.

   帮助。给出当前命令语法非常简短的说明。

参考资料:(1)https://www.cnblogs.com/wucg/...
(2)https://blog.csdn.net/qq_2629...

PS:大佬请留步,让我疑惑的是,明明云主机的安全组放通了所有端口啊,为什么还是会出现443端口未开启这个问题,明白的大佬可以帮忙解答一下


Mr_houzi
964 声望22 粉丝