安装指南
可以选择独立发行文件来运行扫描器。若想要依赖管理或程序化使用,则选择 Composer。
要求
PHP 7.4 或更高版本是必需的。在安装前请先查看 所需扩展。
独立发行版
从 GitHub 发布页面 下载最新 scanner 文件,或者获取当前构建:
curl --fail --silent --show-error --location \
--output scanner \
https://raw.githubusercontent.com/marcocesarato/PHP-Antimalware-Scanner/master/dist/scanner
先检查扫描器版本,然后运行仅报告模式扫描:
php scanner --version
php scanner /var/www/example --lite --report
将扫描器放在扫描目录之外。这样可以避免发行文件和生成的报告出现在扫描范围中。
保持启用 TLS 验证
不要使用 --no-check-certificate 或等效选项。证书检查失败可能表示网络或信任存储存在问题,需要及时处理。
Composer
该软件包发布为 marcocesarato/amwscan。
为单个项目安装
composer require marcocesarato/amwscan
php vendor/marcocesarato/amwscan/src/index.php /var/www/example --lite --report
项目安装会将扫描器版本固定在 composer.lock 中,这有助于团队和持续集成使用相同的版本。
为当前用户安装
composer global require marcocesarato/amwscan
php "$(composer global config home)/vendor/marcocesarato/amwscan/src/index.php" /var/www/example --lite --report
在 Windows PowerShell 中:
$composerHome = composer global config home
php "$composerHome\vendor\marcocesarato\amwscan\src\index.php" "C:\Sites\example" --lite --report
源码检出
在参与贡献或测试未发布的更改时,可以使用源码检出:
git clone https://github.com/marcocesarato/PHP-Antimalware-Scanner.git
cd PHP-Antimalware-Scanner
composer install
php src/index.php /var/www/example --lite --report
不要将开发分支当作固定生产版本的静默替代品。
Docker
从源码检出中构建附带的镜像:
docker build --tag amwscan .
将目标挂载为只读以进行初始报告扫描。另挂载一个单独的输出目录用于保存报告:
docker run --rm \
--volume "/var/www/example:/scan:ro" \
--volume "$PWD/amwscan-output:/output" \
amwscan scanner /scan --lite --report --path-report=/output/report.html
WordPress 插件
WordPress 插件提供了计划扫描、报告审查、上传保护、隔离和受控文件操作等功能,且可以直接在管理界面中使用。
验证安装
健康的安装应返回版本号,并在没有 PHP 启动错误的情况下显示帮助:
php scanner --version
php scanner --help
继续阅读 运行首次扫描。