available
是什么意思?可用表示端口,例如
80
未处于监听状态。以下表明端口111不可用。user@localhost ~ $ ss -nat
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 *:111 *:*
此问题的目的是什么?
该问题的目的是查找当端口80已经由certbot以外的其他进程分配时,一种停止Ansible运行的方法。 Certbot要求端口80可用,否则无法更新证书。可以在这里找到问题。
#1 楼
我认为您正在寻找wait_for
模块。当某个端口可用或更多时,它将允许您检查并采取措施。#2 楼
基于@ 13nilux'的回答,已创建以下代码:- name: Check whether port 80 is available
wait_for:
port: 80
state: stopped
timeout: 10
#3 楼
Letsencrypt已长期重命名为certbot。您可以通过以下方式来自动进行证书续订过程:配置主机,该主机为域提供服务,方法是安装certbot,并将Web服务器配置为在Let's Encrypted certs证书下将用于处理具有auth令牌的目录的域名作为/.well-known/acme-challenge/
,然后使用Ansible手册进行手动续订或由cron运行相同的命令。评论
是的,但是如果端口80不可用怎么办?然后证书更新过程失败
– 030
17年5月5日在9:45
@ 030手动模式不需要任何端口,因为它是手动的。 http方法使用现有的Web服务器。
–chupasaurus
17-6-5在12:35
/path/to/http/authenticator.sh和/path/to/http/cleanup.sh驻留在哪里?也许您可以将其添加到问题中,以防止不赞成使用该链接的信息丢失。
– 030
17年5月5日在14:10
@ 030这些是用户定义的脚本,可以在任何地方(提供示例内容),但是实际的实现方式可能因方法和Web服务器配置的不同而有所差异。
–chupasaurus
17年5月5日在15:17
评论
应该使用停止状态?
– 030
17年5月5日在10:08
如果我正确理解您的特定用例-是的。
– 13dimitar
17年5月5日在10:23