随着互联网的快速发展和普及,越来越多的网站采用HTTPS安全协议,保障用户的浏览安全与隐私保护。然而,自己在服务器上手动为网站添加HTTPS证书,需要一些繁琐的步骤。为此,letsencrypt在2015年推出了免费、自动化、开源的SSL/TLS证书申请工具。本文将从多个方面详细介绍letsencrypt申请证书的方法及流程。
一、自动申请letsencrypt工具
letsencrypt提供了多种自动申请工具,如Certbot和acme.sh等,其中Certbot在大多数Linux发行版中都可以直接安装。以下以Certbot为例,介绍如何自动化申请letsencrypt证书。
1、安装Certbot
# for Ubuntu sudo apt-get update sudo apt-get install certbot python-certbot-apache # for CentOS sudo yum install certbot python2-certbot-apache
2、申请证书
sudo certbot --apache
3、选择需要申请证书的域名
在此步骤,Certbot将调用Apache的配置文件,列出已在服务器上配置的虚拟主机,让用户选择需要申请证书的域名。选择好域名后,Certbot会自动在Apache的配置文件中增加HTTPS相关的配置,之后重新加载配置文件,此时证书即可顺利生成。
二、群晖letsencrypt证书怎么搞
群晖有自己的操作系统且已经开启了HTTPS权限,可以通过官方提供的证书查询页面来验证证书是否成功,并且可以通过以下步骤生成letsencrypt证书。
1、在群晖的“控制面板”中进入“安全”选项,并开启“启用HTTP连接自动转换HTTPS连接”选项
2、进入“证书管理”页面,点击“添加证书”按钮
3、在添加证书页面中,选择letsencrypt,并填写相关信息。
4、点击确认按钮,证书即可自动获取并安装到群晖的系统中。
三、其他常用操作系统的letsencrypt证书申请方法
1.使用NGINX申请证书
以下以CentOS为例,介绍如何使用NGINX来自动化申请letsencrypt证书。
1、安装Certbot
sudo yum install epel-release sudo yum install certbot-nginx
2、在NGINX中新增HTTPS配置
在NGINX的配置文件中找到需要申请证书的域名配置块,在server段中增加如下配置
location ~ /.well-known/acme-challenge { allow all; } ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_session_timeout 5m; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384...[自行添加] ssl_session_cache builtin:1000 shared:SSL:10m; ssl_stapling on; ssl_stapling_verify on; }3、申请证书
sudo certbot --nginx4、选择需要申请证书的域名
工具会自动检测你的 Nginx 配置文件,将需要申请证书的域名列出
2.使用Tomcat申请证书
以下以CentOS为例,介绍如何使用Tomcat来自动化申请letsencrypt证书。
1、下载acme4j.jar文件
在acme4j官方网站中,下载最新版本的acme4j.jar文件,例如acme4j-2.7.5版本。
2、修改Tomcat配置文件
将下载的acme4j.jar文件拷贝到Tomcat的lib目录下,在Tomcat的启动脚本中添加如下参数
export CATALINA_OPT="$CATALINA_OPTS -Dacme4j.directory=/var/www/acme"3、申请证书
java -jar acme4j.jar \ --h authenticator=tomcat\ --h tomcat.keystore=/path/to/tomcat.keystore\ --h tomcat.keystore.pass=mypassword\ --h tomcat.keystore.keypass=mypassword --h \ --h domain=myexample.com --h csr=/path/to/csr.pem\ --h webroot=/var/www/tomcat/ROOT\ --h challenge-dir=/var/www/acme4、证书即可自动获取并安装到Tomcat的系统中。
总结
letsencrypt证书,提供了绿色、免费的、自动化的证书服务,让每个网站都能够享有安全、可靠、可信赖的HTTPS服务。无论你使用哪种操作系统,只要按照上述步骤,申请证书就可以轻而易举地实现。