阿里云(CentOS+Apache) 获取免费SSL证书并配置多个https链接

由于微信小程序需要使用https配置服务器,刚好之前购买了3年的阿里云ECS,故研究了一下,特此Mark下。

首先,需要在阿里云有个万网的域名,之前做项目下了血本,买了好几个,刚好还有库存,不用再去备案


一、阿里云控制台-》域名与网站(万网)-》域名-》域名列表

点击操作栏里的SSL证书,进入证书的申请,有付费也有免费的,本教程用于测试,使用的是免费的证书(一个域名下,一次只能添加一个证书,最多申请3个免费证书用于测试。)


二、输入要申请的域名,如:www.abc.com,之后就等待阿里云自动审核,一会就OK了


三、通过后,在SSL证书列表的操作栏里,点击下载,下载对应平台的证书,并参考阿里云提供的教程去配置服务器


四、由于本人的服务器是apache,所以安装过程如下:

1. 证书文件1531573628367.pem,包含两段内容,请不要删除任何一段内容。

2. 如果是证书系统创建的CSR,还包含:证书私钥文件1531573628367.key、证书公钥文件public.pem、证书链文件chain.pem。

( 1 ) 在Apache的安装目录下创建cert目录,并且将下载的全部文件拷贝到cert目录中。如果申请证书时是自己创建的CSR文件,请将对应的私钥文件放到cert目录下并且命名为1531573628367.key;

#cd /usr/local/apache56/
#mkdir cert
( 2 ) 打开 apache 安装目录下 conf 目录中的 httpd.conf 文件,找到以下内容并去掉“#”:
#LoadModule ssl_module modules/mod_ssl.so (如果找不到请确认是否编译过 openssl 插件)
#Include conf/extra/httpd-ssl.conf

( 3 ) 打开 apache 安装目录下 conf/extra/httpd-ssl.conf 文件 (也可能是conf.d/ssl.conf,与操作系统及安装方式有关), 在配置文件中查找以下配置语句(PS:不用每一句都配置,该步骤仅供参考,重点在第4步):
# 添加 SSL 协议支持协议,去掉不安全的协议
SSLProtocol all -SSLv2 -SSLv3
# 修改加密套件如下
SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM
SSLHonorCipherOrder on
# 证书公钥配置
SSLCertificateFile cert/public.pem
# 证书私钥配置
SSLCertificateKeyFile cert/1531573628367.key
# 证书链配置,如果该属性开头有 '#'字符,请删除掉
SSLCertificateChainFile cert/chain.pem
( 4 ) 在conf/extra/httpd-ssl.conf中配置相应的VirtualHost,有多个证书需配置的,直接复制,然后修改下目录和域名等信息
<VirtualHost *:443>
DocumentRoot "/data/weixin/stock"
ServerName www.abc.com
ServerAdmin admin@linuxeye.com
ErrorLog "/data/wwwlogs/abc_error_log"
TransferLog "/data/wwwlogs/abc_access_log"


<Directory "/data/weixin/stock">
    SetOutputFilter DEFLATE
    Options FollowSymLinks ExecCGI
    Require all granted
    AllowOverride All
    Order allow,deny
    Allow from all
    DirectoryIndex index.html index.php
</Directory>


SSLEngine on
SSLCertificateFile "/usr/local/apache56/cert/www.abc.com/public.pem"
SSLCertificateKeyFile "/usr/local/apache56/cert/www.abc.com/214828082520020.
key"
SSLCertificateChainFile "/usr/local/apache56/cert/www.abc.com/chain.pem"


<FilesMatch "\.(cgi|shtml|phtml|php)$">
    SSLOptions +StdEnvVars
</FilesMatch>
<Directory "/usr/local/apache56/cgi-bin">
    SSLOptions +StdEnvVars
</Directory>


BrowserMatch "MSIE [2-5]" \
         nokeepalive ssl-unclean-shutdown \
         downgrade-1.0 force-response-1.0


CustomLog "/usr/local/apache56/logs/ssl_request_log" \
          "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"


</VirtualHost>
( 5 ) 重启 Apache。
#service httpd restart
( 6 ) 添加相应的域名解析A记录(关键)

这样就差不多了,后续有问题再更新,如果还不行的话,检测下防火墙是否正常,服务器是否正常监听443端口等,也可私信我,有在线的话会帮忙解答的!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值