ubuntu下apache ssl证书安装

一、环境要求
1、ubuntu
2、apache2服务器

二、开始安装Certbot
Certbot介绍:
这里写图片描述
1、下载Certbot免费https证书客户端certbot-auto
wget https://dl.eff.org/certbot-auto
2、给予可执行权限
sudo chmod a+x certbot-auto
3、生成证书
3-1 :首先需要关闭apache
sudo service apache2 stop
3-2生成
./certbot-auto certonly --email [email protected] -- agree-tos --webroot -w (你的项目路径例如www/project)-d (你的域名)
3-3启动apache
service apache2 start
参数 –webroot -w (你的项目路径例如www/project)这个可选 就是为了在sites-available文件夹下生成 默认ssl配置
default-ssl.conf
执行完命令后会在 /etc/letsencrypt/live/ 路径下生成证书 如果像查看此目录需要使用root用户
如果你的Ubuntu没有开启su那么过程如下
1、sudo passwd root
然后会提示输入新的root密码 输入两次即可创建root用户
2、su
3、输入刚才你输入的密码进入root
4、cd /etc/letsencrypt/live/

证书文件 /etc/letsencrypt/live/你的刚才输入的域名/cert.pem
私钥文件 /etc/letsencrypt/live/你的刚才输入的域名/privkey.pem
证书链接文件 /etc/letsencrypt/live/你的刚才输入的域名/chain.pem

效果如下:
这里写图片描述
三、开启ssl模块
sudo a2enmod ssl
sudo service apache2 reload
四、配置
进入 /etc/apache2/sites-available 下找到default-ssl.conf对照下面代码修改

<IfModule mod_ssl.c>
        <VirtualHost _default_:443>
                ServerAdmin webmaster@localhost
                DocumentRoot (项目目录)
                ErrorLog ${APACHE_LOG_DIR}/error.log
                CustomLog ${APACHE_LOG_DIR}/access.log combined
                #   SSL Engine Switch:
                #   Enable/Disable SSL for this virtual host.
                SSLEngine on
                SSLCertificateFile      /etc/letsencrypt/live/(你的域名)/cert.pem
                SSLCertificateKeyFile /etc/letsencrypt/live/(你的域名)/privkey.pem
                SSLCertificateChainFile /etc/letsencrypt/live/(你的域名)/chain.pem
                <FilesMatch "\.(cgi|shtml|phtml|php)$">
                                SSLOptions +StdEnvVars
                 </FilesMatch>
        </VirtualHost>
</IfModule>

如果没有那个文件 可以新建一个.conf文件 复制以上代码修改即可
五、启用配置
sudo a2ensite default-ssl.conf
sudo service apache2 reload
即可访问
注:
1、https与http端口不同 https端口为443 http则为80
2 、Let’s Encrypt 生成的免费证书为3个月时间,我们可以使用续签脚本无线续签renew-cert.sh
脚本如下:

!/bin/bash
#停止apache2 
service apache2 stop

#续签
#--force-renew 强制更新
/root/certbot-auto renew --force-renew

#启动apache2 
service apache2 start
发布了14 篇原创文章 · 获赞 8 · 访问量 6142

猜你喜欢

转载自blog.csdn.net/KangTongShun/article/details/82083873
今日推荐