Мы используем NGINX в качестве основного веб-сервера после отказа от Apache. Недавно мы решили протестировать интеграцию с ClamAV, чтобы убедиться, что файлы, загружаемые пользователями, тщательно проверяются перед передачей в Amazon S3.
Я ищу простой способ интеграции NGINX и ClamAV, т.е. каждый файл, загруженный во временную папку, сканируется и удаляется, если обнаруживается, что он заражен.
я нашел mod_clamav
для Apache, но подобной поддержки для NGINX нет. Есть ли хороший способ интегрировать ClamAV и NGINX, или это следует делать на уровне приложения (т.е. загрузить файл, а затем запустить приложение, которое будет сканировать перед загрузкой)?
Единственный способ, который я мог видеть для этого, - использовать Lua в Nginx для выполнения сканирования, однако это заблокирует рабочий процесс Nginx, что означает, что он не будет обслуживать контент.
Я настоятельно рекомендую выполнять проверку в вашем приложении, а не на уровне веб-службы.
Если вы придумаете способ выполнить сканирование, не блокируя работника, я хотел бы знать об этом, так как ранее приходилось выполнять его в приложении.