Linux下Apache SSL配置,即开启https访问

Linux下Apache开启ssl

首先需要安装openssl和apache的ssl模块,默认ssl模块是不安装的,需要执行:

yum install openssl mod_ssl -y

即可,接下来的配置方法可以安装一下步骤走

1.引入mod_ssl 模块

 LoadModule ssl_module modules/mod_ssl.so

2.建立服务器密钥 openssl genrsa -out server.key 1024 

说明:这是用128位rsa算法生成密钥,得到server.key文件

3.建立服务器公钥 ,生成服务器证书请求,并按要求填些相关证书信息:
openssl req -new -key server.key -out server.csr 

说明:这是用步骤2的密钥生成证书请求文件server.csr, 这一步提很多问题,一一输入,注意Common Name为服务器域名,如果在本机,为本机IP

4.建立服务器证书 
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt

说明:这是用步骤1,2的的密钥和证书请求生成证书server.crt,-days参数指明证书有效期,单位为天

5.修改httpd-ssl.conf文件
注意在此文件中配置证书和密钥的路径
SSLCertificateFile /etc/httpd/conf/server.crt
SSLCertificateKeyFile etc/httpd/conf/server.key 

6.当然我们还需要设置ssl的虚拟主机,HTTPS的默认端口号为443


那就要配置虚拟主机文件,在文件中专门写一个监听443端口的虚拟主机,例如:

        DocumentRoot /var/www/html/merchantPlatform
        ServerName  xxx.xxx.com 这是你的域名
        SSLEngine on
        SSLCertificateFile /etc/httpd/conf/server.crt

        SSLCertificateKeyFile /etc/httpd/conf/server.key  

7.重启你的Apache,如果不出状况,你可以使用https访问你的网站了

可以使用httpd -k resatrt 软启动

ps:不过由于,我们的证书不是由第三方机构颁发的,而是我们自己颁发的,所以,访问的时候,浏览器在https协议出会显示红色的斜杠,告诉我们可能有安全隐患