AWVS 在 Ubuntu 22.04 上安装失败?手把手教你排查 libgbm1 等依赖问题和 hosts 配置

张开发
2026/5/3 14:50:16 15 分钟阅读
AWVS 在 Ubuntu 22.04 上安装失败?手把手教你排查 libgbm1 等依赖问题和 hosts 配置
AWVS 在 Ubuntu 22.04 上的疑难杂症全解析从依赖缺失到服务验证最近在 Ubuntu 22.04 上部署 AWVS 时你是否遇到了各种莫名其妙的报错明明按照教程一步步操作却总是在某个环节卡住。这篇文章将带你深入排查那些教程里不会告诉你的隐藏问题特别是 Ubuntu 22.04 特有的图形库依赖和 hosts 配置陷阱。1. 依赖问题那些被忽略的图形库AWVS 作为一款功能强大的 Web 应用安全扫描工具其图形界面依赖于一系列底层库。在 Ubuntu 22.04 上最常见的安装失败原因就是缺少这些图形相关的依赖。1.1 典型错误信息分析当你执行安装脚本时可能会遇到如下错误error while loading shared libraries: libgbm.so.1: cannot open shared object file: No such file or directory或者libcairo.so.2: cannot open shared object file: No such file or directory这些错误表明系统缺少必要的图形库支持。以下是 Ubuntu 22.04 上 AWVS 运行所需的关键依赖包依赖包名称功能描述安装命令libgbm1图形缓冲区管理sudo apt install libgbm1libcairo22D图形库sudo apt install libcairo2libatk-bridge2.0-0辅助技术sudo apt install libatk-bridge2.0-0libxcomposite1X窗口合成sudo apt install libxcomposite1提示安装这些依赖时建议先更新软件包列表sudo apt update1.2 依赖关系排查技巧如果安装后仍然报错可以使用ldd命令检查二进制文件的依赖关系ldd /path/to/awvs/binary | grep not found这将列出所有缺失的库文件。对于每个缺失的库你可以使用apt-file来查找提供该库的软件包sudo apt install apt-file sudo apt-file update apt-file search libgbm.so.12. hosts 文件配置那些容易踩的坑AWVS 安装后无法访问管理界面很可能是 hosts 文件配置出了问题。2.1 hosts 文件编辑的正确姿势许多教程会告诉你简单地在/etc/hosts中添加一行记录但实际上需要注意以下几点使用 root 权限编辑sudo vim /etc/hosts添加的内容应该包括 IPv4 和 IPv6 的解析127.0.0.1 erp.acunetix.com ::1 erp.acunetix.com保存后立即生效无需重启服务2.2 验证 hosts 配置编辑后使用以下命令验证配置是否生效ping erp.acunetix.com如果返回的是 127.0.0.1说明配置成功。如果仍然解析到外部 IP可能是文件保存失败检查权限DNS 缓存未更新尝试sudo systemd-resolve --flush-caches有其他网络配置覆盖了 hosts 设置3. 服务启动验证看不见的问题安装脚本显示成功但服务实际上没有正常运行这种情况并不少见。3.1 检查服务状态使用 systemctl 检查 AWVS 服务状态sudo systemctl status acunetix健康的状态应该显示 active (running)。如果服务失败查看日志获取详细信息journalctl -u acunetix -n 50 --no-pager3.2 端口监听检查即使服务显示运行中也可能没有正确监听端口。检查 3443 端口是否被监听sudo netstat -tulnp | grep 3443或者使用更现代的 ss 命令sudo ss -tulnp | grep 3443如果没有输出说明服务没有正确绑定端口可能需要检查防火墙设置sudo ufw statusSELinux 状态如果启用其他服务占用了 3443 端口4. 逆向思维当所有步骤都正确却仍然失败有时候即使按照所有正确的步骤操作AWVS 仍然无法正常工作。这时候需要一些非常规的排查手段。4.1 环境变量问题某些情况下缺失的环境变量会导致 AWVS 运行异常。尝试在启动前设置必要的环境变量export DISPLAY:0 export LIBGL_ALWAYS_INDIRECT1然后重新启动服务sudo systemctl restart acunetix4.2 用户权限检查AWVS 通常以特定用户如 acunetix运行。检查相关文件和目录的权限sudo ls -la /home/acunetix/.acunetix/确保 acunetix 用户对这些目录有适当的读写权限。如果需要修复权限sudo chown -R acunetix:acunetix /home/acunetix/.acunetix4.3 系统日志深度分析当所有表面检查都正常时需要深入系统日志寻找线索sudo grep -i acunetix /var/log/syslog或者查看内核日志dmesg | grep -i acunetix这些命令可能会揭示一些深层次的问题如内存不足、内核模块缺失等。5. 预防性措施安装前的系统准备为了避免安装后的问题在安装 AWVS 前做好系统准备可以事半功倍。5.1 系统更新确保系统是最新的sudo apt update sudo apt upgrade -y5.2 图形相关依赖预安装提前安装常见的图形库依赖sudo apt install -y libgbm1 libcairo2 libatk-bridge2.0-0 \ libxcomposite1 libatspi2.0-0 libxkbcommon0 libcups2 \ libxdamage1 libxrandr2 libatk1.0-0 libpango-1.0-0 \ libxfixes3 libasound25.3 系统资源检查确保系统有足够的资源运行 AWVSfree -h # 检查内存 df -h # 检查磁盘空间 nproc # 检查CPU核心数AWVS 对资源要求较高建议至少4GB 可用内存20GB 可用磁盘空间2个CPU核心6. 安装后的健康检查成功安装后进行全面的健康检查可以避免后续使用中的意外问题。6.1 Web界面访问测试使用 curl 测试 Web 界面是否可访问curl -k https://localhost:3443-k参数忽略证书错误。如果返回 HTML 内容说明服务基本正常。6.2 扫描功能测试创建一个简单的测试扫描# 获取API密钥假设已设置 API_KEY$(sudo cat /home/acunetix/.acunetix/data/license/license_info.json | jq -r .api_key) # 创建测试扫描 curl -k -X POST -H X-Auth: $API_KEY \ -H Content-Type: application/json \ -d {target:http://testphp.vulnweb.com,profile_id:11111111-1111-1111-1111-111111111111} \ https://localhost:3443/api/v1/scans6.3 性能监控安装后监控系统资源使用情况top -b -n 1 | grep acunetix或者使用更详细的工具sudo apt install htop htop7. 常见问题快速参考遇到问题时可以快速查阅这个表格寻找解决方案问题现象可能原因解决方案安装脚本执行失败缺少依赖安装 libgbm1 等图形库无法访问管理界面hosts 配置错误检查并修正 /etc/hosts服务启动后停止端口冲突检查 3443 端口是否被占用扫描任务失败内存不足增加系统内存或调整扫描配置界面加载异常浏览器缓存清除浏览器缓存或尝试无痕模式8. 高级技巧自动化安装与配置对于需要频繁部署的环境可以考虑自动化安装流程。8.1 安装脚本示例以下是一个自动化安装脚本的框架#!/bin/bash # 安装依赖 sudo apt update sudo apt install -y libgbm1 libcairo2 libatk-bridge2.0-0 \ libxcomposite1 libatspi2.0-0 libxkbcommon0 libcups2 \ libxdamage1 libxrandr2 libatk1.0-0 libpango-1.0-0 \ libxfixes3 libasound2 # 配置hosts echo 127.0.0.1 erp.acunetix.com | sudo tee -a /etc/hosts echo ::1 erp.acunetix.com | sudo tee -a /etc/hosts # 安装AWVS chmod x acunetix_24.4.240514098_x64.sh sudo ./acunetix_24.4.240514098_x64.sh # 验证安装 sudo systemctl status acunetix8.2 配置备份与恢复定期备份 AWVS 配置和数据# 备份配置 sudo tar -czvf awvs_backup_$(date %Y%m%d).tar.gz /home/acunetix/.acunetix # 恢复配置 sudo tar -xzvf awvs_backup_20230601.tar.gz -C /9. 性能优化建议AWVS 在资源有限的系统上可能需要一些优化才能流畅运行。9.1 内存优化调整扫描配置以减少内存使用在 Web 界面中进入扫描设置降低最大并发请求数减少最大爬网深度关闭不必要的检测模块9.2 数据库优化AWVS 使用 PostgreSQL 数据库可以调整其配置sudo vim /home/acunetix/.acunetix/data/postgresql/postgresql.conf建议调整的参数shared_buffers 256MB work_mem 16MB maintenance_work_mem 64MB修改后重启数据库服务sudo systemctl restart acunetix10. 安全加固措施作为安全工具AWVS 本身也需要适当的安全加固。10.1 修改默认凭证安装后立即修改默认的管理员密码登录 Web 界面进入用户设置选择更改密码设置强密码建议使用密码管理器生成10.2 网络访问控制限制 AWVS 管理界面的访问IPsudo ufw allow from 192.168.1.0/24 to any port 3443 proto tcp sudo ufw enable10.3 定期更新关注 AWVS 的更新公告及时应用安全补丁# 检查当前版本 sudo /home/acunetix/.acunetix/start.sh --version # 更新流程根据官方文档 # 通常需要下载新版安装包并执行升级脚本11. 疑难问题解决记录在实际使用中我们记录了一些特殊案例及其解决方法。11.1 案例一字体显示异常现象AWVS 界面字体显示为方块或乱码。原因系统缺少中文字体支持。解决方案sudo apt install fonts-wqy-zenhei sudo fc-cache -fv11.2 案例二扫描速度极慢现象扫描任务执行速度异常缓慢。原因分析网络延迟高目标服务器响应慢本地系统资源不足排查步骤测试网络延迟ping target.com检查目标服务器响应时间curl -o /dev/null -s -w %{time_total}\n http://target.com监控系统资源vmstat 1解决方案根据排查结果采取相应措施如优化网络、调整扫描配置或升级硬件。12. 替代方案与备选思路当 AWVS 在特定环境下确实无法正常工作时可以考虑一些替代方案。12.1 Docker 版 AWVS使用 Docker 可以避免很多依赖问题docker pull acunetix/acunetix docker run -d -p 3443:3443 --name acunetix acunetix/acunetix12.2 其他扫描工具如果 AWVS 无法满足需求可以考虑OWASP ZAPBurp SuiteNiktoNessus每种工具都有其特点选择最适合你需求的工具。13. 最佳实践总结经过多次实践我们总结出以下最佳实践预安装检查在安装前确保系统满足所有要求依赖管理提前安装所有必要的图形库配置验证编辑 hosts 后立即验证配置服务监控安装后全面检查服务状态定期维护建立备份和更新机制性能调优根据实际使用情况优化配置安全加固修改默认凭证限制访问这些实践可以帮助你避免大多数常见问题确保 AWVS 稳定运行。

更多文章