Scan FTP uploaded files on cPanel servers
First lets install clamAV , it has been now been included in Cpanel/WHM you can do so from your WHM interface as root by clicking on : Cpanel —> Manage Plugins —> on clamavconnector
Check the “Install and Keep Updated” and then click at the bottom of the page save.
After install finishes edit the file /etc/pure-ftpd.conf and change this line to
look like this :
CallUploadScript yes
Next create file /etc/pure-ftpd/clamav_check.sh with this content :
#!/bin/bash
#Maximum file size to scan in bytes that's set to 10MB
MAXSIZE=10485760
if [ "$UPLOAD_SIZE" -le "$MAXSIZE" ]; then
/usr/bin/clamdscan --remove --quiet --no-summary "$1"
fi
Change its permissions so its executable :
chmod 755 /etc/pure-ftpd/clamav_check.sh
Now we should start the pure-uploadscript daemon to call our script every time a file is uploaded
/usr/sbin/pure-uploadscript -B -r /etc/pure-ftpd/clamav_check.sh
And to let it start with your server/vps reboots just run this :
echo “/usr/sbin/pure-uploadscript -B -r /etc/pure-ftpd/clamav_check.sh” >> /etc/rc.d/rc.local
Now restart pure-ftpd :
service pure-ftpd restart
Now all your uploaded files which are less than 10MB in size will be scanned , adjust this size limit per your needs