由于我在 Debian 10 上安装了 certbot,它总是显示此错误:
root@HypeTime:/home/sinusbot# apt update
Hit:1 http://security.debian.org/debian-security buster/updates InRelease
Hit:2 http://deb.debian.org/debian buster InRelease
Hit:3 http://deb.debian.org/debian buster-updates InRelease
Ign:4 http://ppa.launchpad.net/certbot/certbot/ubuntu focal InRelease
Err:5 http://ppa.launchpad.net/certbot/certbot/ubuntu focal Release
404 Not Found [IP: 2001:67c:1560:8008::15 80]
Reading package lists... Done
E: The repository 'http://ppa.launchpad.net/certbot/certbot/ubuntu focal Release' does not have a Release file.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
Run Code Online (Sandbox Code Playgroud)
有人知道如何解决这个错误吗?
我有多个域有多个证书:
$ ll /etc/letsencrypt/live/
> domain1.com
> domain2.com
> domain3.com
> ...
Run Code Online (Sandbox Code Playgroud)
我只需要续订domain1.com,但该命令会certbot renew更新所有域的证书.如何明确续订某些证书?
我实际上正在开发一个 web 应用程序,我Reactjs用于前端和Golang后端。这两个程序分别托管在Google-Compute-Engine. 我想为我的应用程序提供服务,https所以我选择Nginx用于在生产中为前端提供服务。首先,我为以下内容制作了配置文件Nginx:
#version: nginx/1.14.0 (ubuntu)
server {
listen 80 default_server;
listen [::]:80 default_server;
root /var/www/banshee;
server_name XX.XXX.XX.XXX; #public IP of my frontend VM
index index.html;
location / {
try_files $uri /index.html =404;
}
}
Run Code Online (Sandbox Code Playgroud)
对于这部分,一切都按预期工作,但在那之后,我想https按照本教程为我的应用程序提供服务。我安装的软件包software-properties-common,python-certbot-apache
以及certbot但是当我试图
sudo cerbot --nginx certonly
我收到以下消息:
gdes@frontend:/etc/nginx$ sudo certbot --nginx certonly
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Could not choose appropriate plugin: The …Run Code Online (Sandbox Code Playgroud) 我正在运行,certbot --apache但我收到以下错误:
Starting new HTTPS connection (1): acme-v01.api.letsencrypt.org
Obtaining a new certificate
Performing the following challenges:
Client with the currently selected authenticator does not support any
combination of challenges that will satisfy the CA.
Run Code Online (Sandbox Code Playgroud)
安装的版本0.10.2在Debian 8.10上
我想升级到0.21.0,这应该解决问题https://community.letsencrypt.org/t/certbot-0-21-0-release/50725
但我尝试了apt-get update/upgrade,我得到以下内容:
certbot is already the newest version.
certbot set to manually installed.
Run Code Online (Sandbox Code Playgroud)
有关如何更新的任何建议?
几个月前我曾经工作过Let's加密证书(使用旧的letsencrypt客户端).我使用的服务器是nginx.
Certbot正在创建.well-known文件夹,但不是acme-challenge文件夹
现在我尝试通过创建新证书 ~/certbot-auto certonly --webroot -w /var/www/webroot -d domain.com -d www.domain.com -d git.domain.com
但我总是得到这样的错误:
IMPORTANT NOTES:
- The following errors were reported by the server:
Domain: git.domain.com
Type: unauthorized
Detail: Invalid response from
http://git.domain.com/.well-known/acme-challenge/ZLsZwCsBU5LQn6mnzDBaD6MHHlhV3FP7ozenxaw4fow:
"<.!DOCTYPE html>
<.html lang='en'>
<.head prefix='og: http://ogp.me/ns#'>
<.meta charset='utf-8'>
<.meta content='IE=edge' http-equiv"
Domain: www.domain.com
Type: unauthorized
Detail: Invalid response from
http://www.domain.com/.well-known/acme-challenge/7vHwDXstyiY0wgECcR5zuS2jE57m8I3utszEkwj_mWw:
"<.html>
<.head><.title>404 Not Found</title></head>
<.body bgcolor="white">
<.center><.h1>404 Not Found</h1></center>
Run Code Online (Sandbox Code Playgroud)
(当然HTML标签内的点不是真的存在)
我找了一个解决方案,但还没找到.有谁知道为什么certbot没有创建文件夹?
提前致谢!
尝试使用 certbot 在 Amazon Linux 2 上更新 letsencript,我收到以下消息:
certbot-auto 不再支持您的系统。无法安装 Certbot。
我完全迷失了,我不知道该怎么办。我找不到任何提供解决方案的详尽文档。
在我的Ubuntu 16.04服务器上,我有一个Apache conf文件/etc/apache2/sites-enabled/000-default.conf,看起来像这样(缩写):
WSGIApplicationGroup %{GLOBAL}
<VirtualHost *:80>
ServerName example.com
WSGIDaemonProcess myprocess user=ubuntu group=ubuntu threads=10 home=/home/ubuntu/myapp
WSGIProcessGroup myprocess
...
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
它在HTTP模式下工作正常,但是当我运行$ sudo certbot --apache设置HTTPS时,它会失败并显示错误Syntax error on line 7 of /etc/apache2/sites-enabled/000-default.conf: Name duplicates previous WSGI daemon definition. 第7行是以行开头的行WSGIDaemonProcess.
我正在为我的网站使用Let's Encrypt,我的cron作业中出现错误,当我尝试手动续订($ sudo letsencrypt renew)时导致错误:
错误:urn:acme:error:rateLimited ::给定类型的请求太多::创建新authz时出错::当前待处理的授权太多.
我的证书已经过期,所以我不能等待7天才能清除.
该让我们加密网站表示我可以清除挂起的申请:
如果您有大量待处理的授权对象并且正在获得速率限制错误,则可以通过向其中一个挑战提交JWS签名的POST来触发对这些授权对象的验证尝试,如ACME规范中所述.
我有带URL的日志,但我不明白如何手动发送"JWS签名的POST".
这是从日志中被拒绝的今天的例子:
2017-03-31 06:40:32,180:DEBUG:root:Sending POST request to https://acme-v01.api.letsencrypt.org/acme/new-authz.
args: (), kwargs: {
'data': '{
"header": {
"alg": "RS256",
"jwk": {"e": "AQAB", "kty": "RSA", "n": "srgrg....huXi0sQ"}
},
"protected": "rsgrgs....ZJIn0",
"payload": "srgrg....In0",
"signature": "sgggserg....Tc-Q"
}'
}
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?
有许多关于如何使用letsencrypt创建和续订证书的在线教程,但我想删除并停止更新我创建的证书(它仅用于测试目的).如何停止续订最初使用该letsencrypt命令获得的证书(同时仍继续续订其他证书)?
我没有看到任何人在其他任何地方提出这个问题的单个实例,也没有看到这样的命令man letsencrypt.
目前我正在使用以下cron作业续订证书:
30 2 * * 1 /usr/bin/letsencrypt renew >> /var/log/le-renew.log
35 2 * * 1 /bin/systemctl reload nginx
Run Code Online (Sandbox Code Playgroud) 我正在尝试按照教程Nginx 和 Let's Encrypt with Docker in Less Than 5 Minutes来使用 docker + nginx 设置一个 Django 项目。
问题是当我运行脚本 init-letsencrypt.sh 时,我最终遇到了失败的挑战。
这是我的脚本的内容:
#!/bin/bash
if ! [ -x "$(command -v docker-compose)" ]; then
echo 'Error: docker-compose is not installed.' >&2
exit 1
fi
domains=(xxxx.yyyy.net www.xxxx.yyyy.net)
rsa_key_size=4096
data_path="./data/certbot"
email="myemail@example.com" # Adding a valid address is strongly recommended
staging=1 # Set to 1 if you're testing your setup to avoid hitting request limits
if [ -d "$data_path" ]; then
read -p "Existing data …Run Code Online (Sandbox Code Playgroud)