Fedora 18에서 바이러스 스캔을 위해 ClamAV를 PureFTPd에 통합하는 방법

Fedora 18에서 바이러스 스캔을 위해 ClamAV를 PureFTPd에 통합하는 방법

2022-10-19 last update

6 minutes reading fedora security ftp
이 튜토리얼은 Fedora 18 시스템에서 바이러스 스캔을 위해 ClamAV를 PureFTPd에 통합하는 방법을 설명합니다. 결국 PureFTPd를 통해 파일이 업로드될 때마다 ClamAV는 파일을 확인하고 악성코드인 경우 삭제합니다.

1 서문


Fedora 18 서버에서 작동하는 PureFTPd 설정이 있어야 합니다. 이 튜토리얼에서 볼 수 있듯이: Virtual Hosting With PureFTPd And MySQL (Incl. Quota And Bandwidth Management) On Fedora 18 .

2 ClamAV 설치


ClamAV는 다음과 같이 설치할 수 있습니다.
yum install amavisd-new clamav clamav-data clamav-server clamav-update clamav-scanner
다음으로 clamd에 대한 시스템 시작 링크를 만들고 시작합니다.
systemctl enable clamd.amavisd.service
systemctl start clamd.amavisd.service

3 PureFTPd 구성


먼저/etc/pure-ftpd/pure-ftpd.conf를 열고 CallUploadScript를 yes로 설정합니다.
vi /etc/pure-ftpd/pure-ftpd.conf


[...]
# If your pure-ftpd has been compiled with pure-uploadscript support,
# this will make pure-ftpd write info about new uploads to
# /var/run/pure-ftpd.upload.pipe so pure-uploadscript can read it and
# spawn a script to handle the upload.

CallUploadScript yes
[...]

다음으로/etc/pure-ftpd/clamav_check.sh 파일을 생성합니다(파일이 PureFTPd를 통해 업로드될 때마다/usr/bin/clamdscan을 호출함)...
vi /etc/pure-ftpd/clamav_check.sh


#!/bin/sh
/usr/bin/clamdscan --remove --quiet --no-summary "$1"

... 실행 가능하게 만드십시오.
chmod 755 /etc/pure-ftpd/clamav_check.sh
이제 pure-uploadscript 프로그램을 데몬으로 시작합니다. 파일이 PureFTPd를 통해 업로드될 때마다/etc/pure-ftpd/clamav_check.sh 스크립트를 호출합니다.
pure-uploadscript -B -r /etc/pure-ftpd/clamav_check.sh
물론 시스템을 부팅할 때마다 수동으로 데몬을 시작하고 싶지는 않습니다. 따라서/etc/rc.local을 엽니다...
vi /etc/rc.local
... 그리고/usr/sbin/pure-uploadscript -B -r/etc/pure-ftpd/clamav_check.sh 행을 추가하십시오. 다음과 같이:


#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.

/usr/sbin/pure-uploadscript -B -r /etc/pure-ftpd/clamav_check.sh
touch /var/lock/subsys/local

/etc.rc.local이 존재하지 않으면 생성하고(시작 부분에 #!/bin/sh 줄을 사용하여) 실행 가능하게 만듭니다.
chmod 755 /etc/rc.local
마지막으로 PureFTPd를 다시 시작합니다.
systemctl restart pure-ftpd.service
그게 다야! 이제 누군가가 PureFTPd를 통해 서버에 맬웨어를 업로드하려고 할 때마다 "잘못된"파일이 자동으로 삭제됩니다.

4 링크


  • PureFTPD: http://www.pureftpd.org/
  • ClamAV: http://www.clamav.net/
  • 페도라: http://fedoraproject.org/