环境
- CentOS Linux release 7.5.1804
- Apache/2.4.6 (CentOS)
- root用户
前言
首先我们需要建立vhost文件,在目前的环境中安装的Apache会自动把目录为/etc/httpd/conf.d
下的所有*.conf
文件引入到配置文件/etc/httpd/conf/httpd.conf
中加载,所以我们只需要在/etc/httpd/conf.d
目录下配置我们的虚拟主机文件。
免费的证书我们可以通过证书授权机构Let’s Encrypt 获取,并且我们可以通过Certbot(由Let’s Encrypt推出的获取证书的客户端 )进行生成证书,Certbot提供了几种方式进行生产,我们选择最简单的方式certbot-auto
来进行自动配置
0x0001
通过编辑器编辑vhost文件
vim /etc/httpd/conf.d/vhost.conf
添加以下的内容,括号及括号内的内容自行去掉
<VirtualHost *:80>
ServerAdmin XXX@xxx.cn(邮箱)
directoryIndex index.html index.php index.htm
ServerName XXXX.com(域名)
DocumentRoot /www/web(网站目录)
<Directory "/www/web(网站目录)">
Options -Indexes
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
添加完内容后进行保存,并且我们用下面的命令来检查配置文件的语法是否有错误
httpd -t
如果测试是没有问题的,此时我们就可以重启服务器让配置文件生效
systemctl restart httpd
0x0002
这一步我们进行配置https,我们这里使用的是文章最开始提到的自动安装脚本,其他的安装方式以及如果文章离你查看的时间比较久远,建议你参照Certbot官方进行配置。
首先下载Certbot到当前目录下,并让Certbot具有执行权限
wget https://dl.eff.org/certbot-auto
chmod a+x certbot-auto
执行当前目录下的certbot-auto
,然后跟着提示操作就可以执行了
certbot-auto --apache
0X0003
我们可以通过renew
进行查看证书的有效期,还可以通过renew --dry-run
命令来更新证书,如果你需要自动更新可以参照官网或者其他脚本程序来进行实现也是没有任何问题的
certbot-auto renew 查看证书有效期
certbot-auto renew --dry-run 更新证书有效期
《Apache2-https安装教程》留言数:0