欢迎光临
我们一直在努力

Ubuntu openvas 初始化失败:rsync error; error in socket I0 (code 10)at clientserver.c(128)[Receive...如何解决?

🏆本文收录于 《全栈 Bug 调优(实战版)》 专栏。专栏聚焦真实项目中的各类疑难 Bug,从成因剖析 → 排查路径 → 解决方案 → 预防优化全链路拆解,形成一套可复用、可沉淀的实战知识体系。无论你是初入职场的开发者,还是负责复杂项目的资深工程师,都可以在这里构建一套属于自己的「问题诊断与性能调优」方法论,助你稳步进阶、放大技术价值 。    📌 特别说明: 文中问题案例来源于真实生产环境与公开技术社区,并结合多位一线资深工程师与架构师的长期实践经验,经过人工筛选与AI系统化智能整理后输出。文中的解决方案并非唯一“标准答案”,而是兼顾可行性、可复现性与思路启发性的实践参考,供你在实际项目中灵活运用与演进。    欢迎订阅本专栏,一次订阅后,专栏内所有文章可永久免费阅读,后续更新内容皆不用再次订阅,持续更新中。

📢 问题描述

详细问题描述如下: ubuntu openvas 初始化失败,连接geenbone官网返回404:我在Ubuntu20.04下尝试装openvas,但是初始化的时候遇到下面的问题,这个地址能ping通,但是程序显示返回404,具体报错截图如下所示:

全文目录:

    • 📢 问题描述
    • 📣 请知悉:如下方案不保证一定适配你的问题!
      • ✅️问题理解
      • ✅️问题解决方案
        • 🟢方案 A:使用官方 **GVM 10.x** 包(推荐)
        • 🟡方案 B:手动指定更新源
        • 🔴方案 C:使用 **绿色镜像** 或 **国内源**
        • 🟠方案 D:使用 **Docker** 方式
        • 🟣方案 E:检查网络与证书
      • 🗺️流程图(Mermaid)
      • ✅️问题延伸
      • ✅️问题预测
      • ✅️小结
    • 🌹 结语 & 互动说明
    • 🧧 文末福利:技术成长加速包 🧧
    • 🫵 Who am I?

📣 请知悉:如下方案不保证一定适配你的问题!

  如下是针对上述问题进行专业角度剖析答疑,不喜勿喷,仅供参考:

✅️问题理解

  • 操作系统:Ubuntu 20.04

  • 目标:安装并初始化 OpenVAS / Greenbone Vulnerability Manager (GVM)

  • 现象:执行 sudo gvm-setup(或 sudo gvm-feed-update)时,程序尝试从 Greenbone 官网下载安全数据库或签名文件,返回 404 Not Found。

  • 网络检查:你提到目标地址能 ping 通,但在浏览器或 curl 请求时仍得到 404,说明 URL 本身已失效或被误写。

  • 常见原因

  • 旧版 gvm-setup 脚本指向已被废弃的下载地址。
  • 代理/防火墙导致 HTTPS 连接被重写或截断。
  • 本地时间/证书不匹配,导致 HTTPS 失败。
  • 你使用的 openvas 包(openvas-scanner 等)已被弃用,改为 gvm。

你可以先确认你执行的命令是什么(sudo gvm-setup、sudo gvm-feed-update、sudo openvas-setup 等)以及日志中的完整 URL。

✅️问题解决方案

🟢方案 A:使用官方 GVM 10.x 包(推荐)
  • 卸载旧版 OpenVAS(如果已安装)

    sudo apt purge -y openvas* gvm* gvmd* gvmd-data* gvmd* openvas-scanner*
    sudo rm -rf /var/lib/gvm /var/lib/openvas /etc/gvm /etc/openvas

  • 安装最新版 GVM(Ubuntu 20.04 已提供 GVM 10.0.1)

    sudo apt update
    sudo apt install -y gvm gvm-libs gvm-scanner

  • 初始化 GVM

    sudo gvm-setup

    • 该脚本会自动下载最新的扫描器和漏洞数据库(greenbone-security-assistant、vulnerability-database 等)。
    • 若仍报 404,检查 /usr/share/gvm/gsad/gvm-feed-update 的 GVM_FEED_URL 是否指向正确地址(默认 https://www.greenbone.net/)。
  • 启动服务

    sudo systemctl enable –now gvmd
    sudo systemctl enable –now gsad

  • 验证

    sudo gvm-check-setup

  • 优点:官方仓库维护,依赖完整,脚本已修复旧地址问题。 注意:如果你在国内,建议使用 apt-mirror 或 squid 代理,以避免被墙导致 404。

    🟡方案 B:手动指定更新源

    如果官方脚本仍然指向旧 URL,可手动修改 gvm-feed-update 脚本或使用 –url 参数。

  • 找到脚本位置:/usr/share/gvm/gsad/gvm-feed-update 或 /usr/libexec/gvm/gvm-feed-update。
  • 用文本编辑器打开,查找 GVM_FEED_URL。
  • 将其改为最新版地址(如 https://www.greenbone.net/ 或 https://download.greenbone.net/)。
  • 重新执行 sudo gvm-setup。
  • 适用场景:你使用的是旧版 gvm-setup(<10.0),但想保留现有系统。

    🔴方案 C:使用 绿色镜像 或 国内源
  • 下载镜像:

    wget https://mirrors.ustc.edu.cn/greenbone/ubuntu20.04/gvm-libs_10.0.1-1_amd64.deb
    wget https://mirrors.ustc.edu.cn/greenbone/ubuntu20.04/gvm_10.0.1-1_amd64.deb

  • 本地安装

    sudo dpkg -i *.deb
    sudo apt-get -f install # 解决依赖

  • 初始化

    sudo gvm-setup

  • 优点:避免国外服务器被墙导致 404。 缺点:镜像更新周期不一定与官方同步,需自行检查版本。

    🟠方案 D:使用 Docker 方式

    如果你不想在宿主机上安装所有依赖,可以使用官方 Docker 镜像。

    docker run -d –name gvm \\
    -p 9392:9392 \\
    -v /var/lib/gvm:/var/lib/gvm \\
    -e "GVM_ADMIN_PASSWORD=yourpassword" \\
    greenbone/gvm:latest

    优点:隔离、易更新、无需手动处理依赖。 缺点:需要 Docker 环境,且网络访问需额外配置。

    🟣方案 E:检查网络与证书
  • 测试 HTTPS

    curl -I https://www.greenbone.net/

    • 若返回 404,说明 URL 已被更改。
  • 同步系统时间

    sudo timedatectl set-ntp on

  • 更新 CA 证书

    sudo apt install -y ca-certificates
    sudo update-ca-certificates

  • 临时使用代理(如你在公司内网)

    export http_proxy="http://proxy:port"
    export https_proxy="http://proxy:port"
    sudo gvm-setup

  • 适用场景:你在受限网络环境,HTTPS 可能被代理截断。

    🗺️流程图(Mermaid)

    ✅️问题延伸

    主题说明参考命令
    多用户 GVM 默认创建 gvm 用户,若想添加管理员 sudo gvmd –create-user=admin –role=admin
    定时更新 自动更新 feed sudo crontab -e → 0 2 * * * /usr/bin/gvm-feed-update
    日志排查 关注 journalctl -u gvmd 与 journalctl -u gsad sudo journalctl -u gvmd -f
    性能调优 调整 gvm.conf 中的 max-scan-concurrency sudo nano /etc/gvm/gvm.conf

    ✅️问题预测

    场景可能出现的错误预防措施
    1. 使用旧版 openvas 包 dpkg: error: package not installed 始终使用 gvm 包
    2. 代理导致 HTTPS 失效 curl: (35) SSL connect error 通过 export https_proxy= 或 apt.conf 配置
    3. 时间不同步 证书验证失败 timedatectl set-ntp on
    4. 镜像不同步 版本不匹配导致依赖冲突 定期检查官方镜像版本
    5. 系统升级后依赖缺失 libgvm.so missing 运行 sudo apt update && sudo apt upgrade

    ✅️小结

  • 首选方案:在 Ubuntu 20.04 上直接使用官方 gvm 包并执行 sudo gvm-setup。
  • 若遇到 404,先确认 gvm-feed-update 的 URL 是否被废弃;必要时手动修改或使用国内镜像。
  • 记得检查网络、代理、时间同步与 CA 证书,尤其在公司或校园网环境。
  • 使用 Docker 可以完全避免本机依赖冲突,但需要 Docker 环境。
  • 按上述步骤操作后,OpenVAS(GVM)应能顺利初始化并正常运行。

    🌹 结语 & 互动说明

    希望以上分析与解决思路,能为你当前的问题提供一些有效线索或直接可用的操作路径。

    若你按文中步骤执行后仍未解决:

    • 不必焦虑或抱怨,这很常见——复杂问题往往由多重因素叠加引起;
    • 欢迎你将最新报错信息、关键代码片段、环境说明等补充到评论区;
    • 我会在力所能及的范围内,结合大家的反馈一起帮你继续定位 👀

    💡 如果你有更优或更通用的解法:

    • 非常欢迎在评论区分享你的实践经验或改进方案;
    • 你的这份补充,可能正好帮到更多正在被类似问题困扰的同学;
    • 正所谓「赠人玫瑰,手有余香」,也算是为技术社区持续注入正向循环

    🧧 文末福利:技术成长加速包 🧧

      文中部分问题来自本人项目实践,部分来自读者反馈与公开社区案例,也有少量经由全网社区与智能问答平台整理而来。

      若你尝试后仍没完全解决问题,还请多一点理解、少一点苛责——技术问题本就复杂多变,没有任何人能给出对所有场景都 100% 套用的方案。

      如果你已经找到更适合自己项目现场的做法,非常建议你沉淀成文档或教程,这不仅是对他人的帮助,更是对自己认知的再升级。

      如果你还在持续查 Bug、找方案,可以顺便逛逛我专门整理的 Bug 专栏👉《全栈 Bug 调优(实战版)》👈️

    这里收录的都是在真实场景中踩过的坑,希望能帮你少走弯路,节省更多宝贵时间。

    ✍️ 如果这篇文章对你有一点点帮助:

    • 欢迎给 bug菌 来个一键三连:关注 + 点赞 + 收藏
    • 你的支持,是我持续输出高质量实战内容的最大动力。

    同时也欢迎关注我的硬核公众号 「猿圈奇妙屋」:

    获取第一时间更新的技术干货、BAT 等互联网公司最新面试真题、4000G+ 技术 PDF 电子书、简历 / PPT 模板、技术文章 Markdown 模板等资料,通通免费领取。 你能想到的绝大部分学习资料,我都尽量帮你准备齐全,剩下的只需要你愿意迈出那一步来拿。

    🫵 Who am I?

    我是 bug菌:

    • 热活跃于 CSDN | 掘金 | InfoQ | 51CTO | 华为云 | 阿里云 | 腾讯云 等技术社区;
    • CSDN 博客之星 Top30、华为云多年度十佳博主/卓越贡献者、掘金多年度人气作者 Top40;
    • 掘金、InfoQ、51CTO 等平台签约及优质作者;
    • 全网粉丝累计 30w+。

    更多高质量技术内容及成长资料,可查看这个合集入口 👉 点击查看 👈️

    硬核技术公众号 「猿圈奇妙屋」 期待你的加入,一起进阶、一起打怪升级。

    – End –

    赞(0)
    未经允许不得转载:171主机测评 » Ubuntu openvas 初始化失败:rsync error; error in socket I0 (code 10)at clientserver.c(128)[Receive...如何解决?
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址