因为工作关系,需要用到一台配置好SSL安全层的服务器(简而言之就是SSL证书)。在腾讯云上“免费”(活动)购得域名(送SSL证书)和服务器之后就开始配置。具体步骤的话百度上有很多,一步一步来不是很难。
好了,说重点。根据网上的配置步骤一步步配置好后,重启httpd服务,打开浏览器访问https://可以正常访问。但是好景不长,过了几天,再次访问的时候就访问不到(http可以正常显示,说明80端口正常)。这时首先想到的是配置文件出问题了,所以就上了服务器打开httpd-ssl.conf文件,看了一会儿也没发现什么异常。
心血来潮在服务器上wget https://我的域名 发现报了个错误 ip:443 failed: No route to host
[root@VM_0_4_centos extra]# wget https://wwwd.cn
--2017-09-13 18:06:02-- https://wwwd.cn/
Resolving hyfwechat.cn... 123.210.53.243
Connecting to hyfwechat.cn|123.210.53.243|:443... failed: No route to host.
接着想到应该是linux上的防火墙给我捣乱,于是就百度了一下,发现还真是这个问题,果真是这玩意儿没有给我开放443端口访问权限。
既然知道问题,那肯定就有解决的办法,查了下资料,发现得修改iptables文件
所以vi /etc/sysconfig/iptables
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
然后就能看到两个最熟悉的端口号22(ssh)和80(http),唯独少了可怜的443端口
接下来就简单了 增加443端口就行
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
**-A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT**
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
当然,别忘了重启iptables
[root@VM_0_4_centos extra]# service iptables restart
iptables: Setting chains to policy ACCEPT: filter [ OK ]
iptables: Flushing firewall rules: [ OK ]
iptables: Unloading modules: [ OK ]
iptables: Applying firewall rules: [ OK ]
接着wget… ok well done。
[root@VM_0_4_centos extra]# wget https://wwwd.cn
--2017-09-13 18:15:10-- https://wwwd.cn/
Resolving wwwd.cn... 123.210.53.243
Connecting to hyfwechat.cn|123.210.53.243|:443... connected.
HTTP request sent, awaiting response... 200 OK
小细节同样有大作用 希望能帮到你( ^_^ )