阿里云申请证书,有个专门的免费的申请方式与普通证书是平级的功能;
访问服务器,判断apache是不是开启ssl功能,如果没有安装就安装它
[root@centos ~]# rpm -qa | grep mod_ssl
//什么没显示说明没装
yum install mod_ssl openssl //问下载吗,输y - yes
rpm -qa | grep mod_ssl //再次检查 就显示版本号了
至此ssl安装就完成了,原来ssl.conf没有,甚至都没有module_ssl.so文件,这时候都会有了
[root@centos ~]# mkdir /etc/httpd/cert //需个文件夹,可以去看一下,没有就创建
然后把阿里云三个文件放里面,两个crt与一个key文件
在阿里云证书界面有免费版,期间要验证域名TXT -author拷贝到域名解析里填上;填好点验证,一般会自动跳转通过。
完成后在管理里右边有下载,选择apache版本,就会下载个包含三个文件的压缩包
配置ssl /etc/httpd/conf/extra/httpd-ssl.conf(这是默认路径,如果有工具winscp,直接去刷新一下就看到了,如果没有这个文件,也许你的名字叫做ssl.conf,看下一条内容)
[root@centos ~]# vim /etc/httpd/conf.d/ssl.conf //也许你的路径是这样的
添加SSL支持模块
LoadModule ssl_module modules/mod_ssl.so //这句可能不一定要加上,加上顶多Log里多个警告,提示重复加载,详见Log,Log后面会重点讲解;
#监听端口443,如果有#号需删除
Listen 443 https
关于443端口,如果你是阿里云,你可能需要在网页上设置好安全组,确认443入方向放行的
service httpd restart //重启apache
Log日志在哪看?
默认在/etc/httpd/logs有个快捷方式,(其实路径是在var/log/httpd下面),根据时间,查看刚刚报出来的日志,精准定位问题可以解决99%的问题;
Apache启动失败,提示 key验证问题:certificate routines:X509_check_private_key:key values mismatch
如果文件没问题,这说明key映射有问题,请确认Log=》ssl_error,然后去刚才的ssl.conf检查一下三个文件的路径,记住
apache是三个文件,是两个crt、一个key,但是配置中有四个,最后一个名字叫做#SSLCACertificateFile 这是CA认证的没必要解开,就用前三个,看名字就知道了,路径搞错必报这个错误:
SSLCertificateFile //这是public
SSLCertificateKeyFile //这是key
SSLCertificateChainFile //这是chain