让ubuntu使用apache2支持ssl

Posted 智慧大数据

tags:

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

让ubuntu使用apache2支持ssl

Key是私用秘钥,通常是RSA算法,
Csr是证书请求文件,用于申请证书,
Crt是CA认证后的证书文件,签署人用自己的key给你签署凭证

一、生成KEY和CRT文件

  • 1、apache2启用 ssl 模块

a2enmod ssl

a2enmod proxy #让apache2支持代理


    1. 安装openssl

apt-get -y install openssl


    1. 创建CA签名(不使用密码去除-des3选项)

openssl genrsa -des3 -out server.key 1024

输入密码,确认密码,记住密码,后面会用到


    1. 创建CSR(Certificate Signing Request)

openssl req -new -key server.key -out server.csr

  • 5、备份服务器密钥文件

cp server.key server.key.org

  • 6、去除文件口令

openssl rsa -in server.key.org -out server.key

  • 7、自己生成证书文件server.crt

openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt


二、apache2配置

  • 1、复制证书到目录

mkdir /etc/apache2/ssl

cp server.crt /etc/apache2/ssl/certs

cp server.key /etc/apache2/ssl/private

  • 2、软连接

//查看软连接是否正常

ll /etc/apache2/mods-enabled/ssl/ssl.*

//新建一个软连接

ln -s /etc/apache2/sites-available/default-ssl.conf /etc/apache2/sites-enabled/default-ssl.conf

  • 3、更新ssl配置

vim /etc/apache2/sites-enabled/default-ssl.conf

# 修改web目录

DocumentRoot /var/www/html/public

# 开启ssl

SSLEngine on

# A self-signed (snakeoil) certificate can be created by installing

# the ssl-cert package. See

# /usr/share/doc/apache2/README.Debian.gz for more info.

# If both key and certificate are stored in the same file, only the

# SSLCertificateFile directive is needed.

# 修改下面注释的内容为不注释的内容

# SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem

# SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key

SSLCertificateFile /etc/apache2/ssl/certs

SSLCertificateKeyFile /etc/apache2/ssl/private

  • 4、重新加载apache2

/etc/init.d/apache2 force-reload

/etc/init.d/apache2 restart

netstat -nltp|grep 443


以上是关于让ubuntu使用apache2支持ssl的主要内容,如果未能解决你的问题,请参考以下文章

apache 2.2/Ubuntu 12.04 的 SSL 问题

Ubuntu Apache2配置SSL证书

志银Ubuntu Apache2配置SSL证书

Ubuntu系统Apache 2部署SSL证书

ubuntu下apache2 安装 配置 卸载 CGI设置 SSL设置

Ubuntu16下apache2安装ssl阿里云证书