如何通过aws UserData在bash中确认let-encrypt -dry-run测试

问题描述 投票:0回答:1

我已经编写了一个使用php和aws sdk的启动脚本,它调用相关的userdata.sh脚本来设置aws实例。部分脚本功能是通过let加密设置ssl证书,安装后加密并对ip等进行更改最终调用:

echo $(/opt/letsencrypt/certbot-auto certonly --webroot -w /var/www/html/$host.com/$environment.$domain.com -d $environment.$domain.com -d www.$environment.$domain.com -c /opt/letsencrypt/config.ini --agree-tos -n --dry-run)

以上回报:

请求使用root权限重新运行/ opt / letsencrypt / certbot-auto ...将调试日志保存到/var/log/letsencrypt/letsencrypt.log选择的插件:Authenticator webroot,安装程序无证书无法续订,但模拟续订干燥运行续订现有证书执行以下挑战:http:01 challenge for environment.domain.com挑战www.environment.domain.com的http-01挑战使用webroot路径/var/www/html/host.com/environment.domain .com适用于所有不匹配的域名。等待验证......清理挑战

重要注意事项: - 干运行成功。

我想在没有--dry-run标志的情况下再次尝试运行相同的命令之前验证测试是否成功。我怎样才能做到这一点?

bash aws-sdk lets-encrypt user-data
1个回答
0
投票

希望这将有助于其他人:

$testval = /opt/letsencrypt/certbot-auto certonly --webroot -w /var/www/html/$host.com/$environment.$domain.com -d $environment.$domain.com -d www.$environment.$domain.com -c /opt/letsencrypt/config.ini --agree-tos -n --dry-run

if [[ $($testval) == *" - The dry run was successful."* ]]; then echo "true"; else echo "false"; fi

© www.soinside.com 2019 - 2024. All rights reserved.