前几天同学开了个博客,我去帮他的网站启用了https服务,本来觉得自己弄过一遍了应该弄起来很简单,但是结果遇到了各种各样的问题,折腾了我一个晚上,现在以疲惫的精神写这篇文章来记录cerbot的使用指南。
使用环境:CentOS,Apache.
Step 1: 安装Certbot
这里通过下载官网的一键配置程序来安装。其实通过yum也能安装,但是由于经常会出现缺环境等的问题,所以推荐还是通过官网的certbot-auto安装,省时省力。
# wget https://dl.eff.org/certbot-auto
给certbot-auto执行权限
# chmod 755 certbot-auto
执行certbot
# ./certbot-auto
之后会自动检查所有需要的依赖项,提示确认后输入y即可。
然后会安装python运行库,这里需要耐心等待一会,完成后会进入证书配置步骤。
Step 2: 生成证书并配置
进入证书配置步骤后,首先根据提示输入邮箱以及是否需要注册账号,然后会出现两种情况,一种是certbot已经识别出了当前网站的域名,然后会出现一个列表,输入需要配置证书的域名序号即可,或者需要输入域名,按照步骤进行就好。
如果不出现错误的话,此时ssl已经配置完成(完成后请直接进入第三步),而我在安装的时候遇到了以下报错:
Unable to find a virtual host listening on port 80 which is currently needed for
Certbot to prove to the CA that you control your domain.
Please add a virtual host for port 80.
这是因为你的httpd.conf已经修改过,certbot无法识别你的站点,此时只需手动配置一个vitual host 即可解决问题。
Step 2.5: 错误处理
首先编辑httpd.conf文件,配置一个Vitual Host:(需要将domain.com改为你的域名)
# vim /etc/httpd/conf/httpd.conf
使用? Listen 80 命令找到这一行,在这一行下面添加 Vitual Host 配置:
创建/www/test目录:
# mkdir /www # mkdit /www/test
检查语法是否有误:
# httpd -t
出现Syntax OK说明语法正确,接下来重启apache服务:
# service httpd restart
回到Step2,执行 ./certbot-auto ,应该就能正常配置了。
Step 3: 为Wordpress配置https
首先使用https访问博客域名,检查ssl是否生效,确认生效后在WordPress中安装以下两个插件: Velvet Blues Update URLs 和 Really Simple SSL 然后通过更新域名将所有http替换为https,然后启用第二个插件即可实现全站https访问且http自动重定向到https了。
以上就是本次教程所有内容了,如果还是有不懂的欢迎评论提问。
发表评论