目的
用Apache和let's encrypt配置SSL
版本
Debian 9
Apache 2.4
配置顺序
开启socache_shmcb和ssl模块
$ sudo a2enmod socache_shmcb
$ sudo a2enmod ssl
生成SSL证书
下面命令生成证书。
$ sudo certbot certonly --webroot -w /var/www/html -d hogehoge.info
-
/var/www/html:DocumentRoot(文件根目录)
-
hogehoge.info:域名
生成的证书的存放地址写在“IMPORTANT NOTES:”的下面。
例如:
IMPORTANT NOTES:
- Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/hogehoge.info/fullchain.pem
Your key file has been saved at:
/etc/letsencrypt/live/hogehoge.info/privkey.pem
(接续)
修改conf文件
debian版apache的conf在/etc/apache2/sites-enabled/目录。 写这个项目在<VirtualHost *:443>的下面
- ServerAdmin:服务器管理员的邮箱
- DocumentRoot:文件根目录的路径
- ServerName:服务器的名字
- ServerAlias:服务器的别名
- ErrorLog:错误日志的路径
- CustomLog:别的日志的路径
- SSLEngine:开启ssl
- SSLCertificateFile:存放fullchain.pem的地方的路径
- SSLCertificateKeyFile:存放privkey.pem的地方的路径
例如:
<VirtualHost *:443>
ServerAdmin hoge@hoge.com
DocumentRoot /var/www/html
ServerName hogehoge.info
ServerAlias 192.168.xx.xx
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/hogehoge.info/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/hogehoge.info/privkey.pem
</VirtualHost>
重启Apache
$ sudo service apache2 restart