apache2.4配置ssl

Posted 光何

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了apache2.4配置ssl相关的知识,希望对你有一定的参考价值。

1,yum 安装openssl和openssl-devel,httpd-devel

2,生成证书(也可以从公司的证书颁发机构获取):

#建立服务器密钥
openssl genrsa -des3 1024 > /opt/apache/conf/server.key
# 从密钥中删除密码(可不做,只是后续操作要输密码)
openssl rsa -in /opt/apache/conf/server.key > /opt/apache/conf/server2.key
mv /opt/apache/conf/server2.key /opt/apache/conf/server.key
#建立服务器密钥请求文件
openssl req -new -key /opt/apache/conf/server.key -out /opt/apache/conf/server.csr
#建立服务器证书
openssl x509 -in /opt/apache/conf/server.csr -out /opt/apache/conf/server.crt -req -signkey /opt/apache/conf/server.key -days 365

3,修改Apache的配置文件httpd.conf
打开ssl模块,没有这个模块就需要安装依赖包:mod_ssl,安装后就会在modules里面找到:
LoadModule ssl_module modules/mod_ssl.so(在httpd-ssl.conf第一行添加)
引入ssl配置文件,增加支持ssl:
Include conf/extra/httpd-ssl.conf(去掉行首的注释)
启动重定向(可选),使用用户HTTP访问自动重定向为HTTPS,直接在http.conf最后配置即可,在httpd.conf文件尾加入如下内容:
RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^/?(.*)$ https://%{SERVER_NAME}/$1 [L,R]

放开这一行的注释
LoadModule socache_shmcb_module modules/mod_socache_shmcb.so

修改允许访问

<Directory />
  AllowOverride all
  Require all granted
</Directory>



4,修改加密文件ssl.conf,通过yum安装好的httpd,在conf.d目录下面有ssl.conf配置文件,我们需要在里面配置一个VirtualHost和配置证书和密钥:

<VirtualHost *:443>

  DocumentRoot "/opt/apache/htdocssl"
  ServerName www.guangsoft.org
  ServerAdmin [email protected]

  SSLCertificateFile "/opt/apache/conf/server.crt"

  SSLCertificateKeyFile "/opt/apache/conf/server.key"

</VirtualHost>

 

5,启动apahce验证,输入https://172.16.0.50  或 172.16.0.50:443(ip为试验机ip)能访问即可(注意打开服务器443端口的防火墙)
















































以上是关于apache2.4配置ssl的主要内容,如果未能解决你的问题,请参考以下文章

apache2.4配置ssl

如何将 Apache 2.4 配置从 SSL 支持更改为 TLS

Phpstudy apache2.4 配置 https

具有两个子目录的 apache2 虚拟主机配置

centos 配置apache和tomcat共同使用https

Apache 2.4 跨域