certbot 命令详解

| 选择喜欢的代码风格  

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

certbot 命令安装:


-bash: certbot: command not found

#Debian
apt-get install certbot

#Ubuntu
apt-get install certbot

#Alpine
apk add certbot

#Arch Linux
pacman -S certbot

#Kali Linux
apt-get install certbot

#CentOS
yum install certbot

#Fedora
dnf install certbot

#OS X
brew install certbot

#Raspbian
apt-get install certbot

#Docker
docker run cmd.cat/certbot certbot

certbot 命令补充说明:


certbot 可以获取并安装 HTTPS / TLS / SSL 证书。 默认,它将尝试使用网络服务器来获取和安装证书。

certbot 命令语法:


certbot [SUBCOMMAND] [options] [-d DOMAIN] [-d DOMAIN] ...

更多 certbot 请详见 certbot-auto

certbot 命令实例:


certbot 通过 webroot 授权获取新证书,但不要自动安装它:

sudo certbot certonly --webroot --webroot-path path/to/webroot --domain subdomain.example.com

certbot 通过 nginx 授权获取新证书,并自动安装新证书:

sudo certbot --nginx --domain subdomain.example.com

certbot 通过 apache 授权获取新证书,并自动安装新证书:

sudo certbot --apache --domain subdomain.example.com

certbot 续订所有在 30 天或更短时间内到期的 Let's Encrypt 证书(不要忘了之后重新启动使用它们的任何服务器):

sudo certbot renew

certbot 模拟获取新证书,但实际上不将任何新证书保存到磁盘:

sudo certbot --webroot --webroot-path path/to/webroot --domain subdomain.example.com --dry-run

certbot 获取不受信任的测试证书:

sudo certbot --webroot --webroot-path path/to/webroot --domain subdomain.example.com --test-cert

certbot 命令的坑:


注意修改其中的任何文件 /etc/letsencrypt 可能会损坏它们,因此 Certbot 无法再正确管理其证书,我们不建议这样做..

$ certbot --nginx

Saving debug log to /var/log/letsencrypt/letsencrypt.log
The nginx plugin is not working; there may be problems with your existing configuration.
The error was: NoInstallationError("Could not find a usable 'nginx' binary. Ensure nginx exists, the binary is executable, and your PATH is set correctly.")

这个时候,certbot 在默认的 nginx 的路径没有找到,需求如下配置:

#假设你的 nginx 路径是自定义安装在了 /app/nginx 下

ln -s /app/nginx/sbin/nginx /usr/sbin/nginx
ln -s /app/nginx/conf/ /etc/nginx

其他系统,可以尝试用下面方式解决(但在刚才 CentOS 下无效):

sudo env PATH="$PATH" certbot --nginx

certbot 命令扩展阅读:




certbot 命令评论