Apache https(SSL)启用

本文记录如何启用ssl也就是使你的apache支持https协议
执行

sudo a2enmod ssl

看到如下提示

Enabling module ssl.
See /usr/share/doc/apache2.2-common/README.Debian.gz on how to configure SSL and create self-signed certificates.
Run '/etc/init.d/apache2 restart' to activate new configuration!

证明成功启用ssl模块
下面我们要生成ssl证书,需要用到openssl
执行

sudo apt-get install openssl

安装成功后执行如下命令创建key

openssl genrsa -des3 -out server.key 1024

期间会提示输入密码和确认密码
下面创建CSR 证书签发请求

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

系统会向你索取一些信息,简单的英文,逐一填写好就是了
执行如下命令获取server.key和server.csr的路径

locate *server.key*

我系统中两个文件在/etc/cups/ssl中
进入该目录

cd /etc/cups/ssl

执行如下两条命令安装证书

sudo cp server.crt /etc/ssl/certs

sudo cp server.key /etc/ssl/private

接下来修改虚拟主机配置,让其启用ssl,编辑/etc/apache2/sites-available/default,在<VirtualHost>中,DocumentRoot一行的下方加入下面内容:
SSLEngine on
SSLOptions +StrictRequire
SSLCertificateFile /etc/ssl/certs/server.crt
SSLCertificateKeyFile /etc/ssl/private/server.key

重启apache

/etc/init.d/apache2 restart

测试一下,是不是会返回错误

安全连接失败
连接localhost时发生错误。
SSL 接收到一个超出最大准许长度的记录。
(错误码: ssl_error_rx_record_too_long)

编辑/etc/apache2/sites-available/default 把

<VirtualHost *:80>

改为

<VirtualHost *>

重启apache试试,成功了吧?之前到底为什么会提示安全连接失败我不知道,猜测是虚拟主机配置的问题,修改之后apache启动会有一个 warn,不过不影响什么。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值