在OpenVAS中使用Let'sEncrypt验证SSL证书:如何引用.pem文件?
在OpenVAS(GVM)中配置Let's Encrypt SSL证书
刚好之前帮朋友配置过OpenVAS(现在官方叫Greenbone Vulnerability Manager,简称GVM)的Let's Encrypt证书,给你一步步说清楚怎么引用你的.pem证书文件:
1. 确认你的Certbot证书文件位置
Certbot生成的证书默认存在/etc/letsencrypt/live/你的域名/目录下,你需要用到两个核心文件:
fullchain.pem:包含服务器证书+中间证书链,用于客户端验证privkey.pem:你的证书私钥,必须妥善保管
2. 配置GVM的网页服务(gsad)
OpenVAS的网页界面由gsad服务提供,这是你需要配置SSL证书的核心服务:
方式1:修改systemd服务文件
找到gsad的systemd服务文件(通常在/etc/systemd/system/gsad.service或/usr/lib/systemd/system/gsad.service),编辑ExecStart行,添加证书和私钥参数:
ExecStart=/usr/sbin/gsad --listen=0.0.0.0 --port=443 --ssl-cert=/etc/letsencrypt/live/你的域名/fullchain.pem --ssl-key=/etc/letsencrypt/live/你的域名/privkey.pem
方式2:修改gsad配置文件
如果你的系统有/etc/gvm/gsad.conf配置文件,可以直接添加以下两行:
ssl-cert = "/etc/letsencrypt/live/你的域名/fullchain.pem" ssl-key = "/etc/letsencrypt/live/你的域名/privkey.pem"
3. 调整证书文件权限
GVM默认以gvm用户运行,需要确保这个用户能读取证书文件:
# 给证书目录添加gvm组的读取权限 chmod -R 750 /etc/letsencrypt/live/你的域名/ chmod -R 750 /etc/letsencrypt/archive/你的域名/ # 将证书目录的组权限设为gvm chown -R root:gvm /etc/letsencrypt/live/你的域名/ chown -R root:gvm /etc/letsencrypt/archive/你的域名/
4. 重启服务并验证
完成配置后,重启相关服务使设置生效:
systemctl daemon-reload systemctl restart gsad gvmd
然后访问https://你的域名,检查浏览器地址栏的证书信息,确认是Let's Encrypt颁发的即可。
5. 证书自动更新后的适配
Let's Encrypt证书有效期只有90天,Certbot会自动更新证书,但更新后需要重启GVM服务才能加载新证书。你可以添加一个更新钩子:
- 创建钩子脚本:
nano /etc/letsencrypt/renewal-hooks/post/restart-gvm.sh
- 写入以下内容:
#!/bin/bash systemctl restart gsad gvmd
- 给脚本添加执行权限:
chmod +x /etc/letsencrypt/renewal-hooks/post/restart-gvm.sh
这样每次Certbot更新证书后,会自动重启GVM服务,无需手动操作。
内容的提问来源于stack exchange,提问作者Yo Gonçalves
相关产品推荐
相关产品推荐

