ป้องกับไวรัสทาง FTP Server ด้วย clamav (Directadmin)

This howto is about making ProFTPD work with CLAMAV to scan all files uploaded by users using a FTP client.
Recently our customers are having real difficulty with Iframe viruses, Php shells and other kind of windows viruses are also a headache always.
ClamAV is already working with exim mail server in our servers for years. Why not make it also scan incoming FTP uploads.This will add more CPU Time to our servers, but preventing users to upload any kind of virus data makes sense.

How will this work? :
-we will add ClamAV support to ProFTPD using mod_clamav module.
-when a user uploads a file using FTP, ClamAV will scan incoming file after upload finishes.
-if any kind of virus like signature found by ClamAV, uploaded file will be deleted from server, notifying the FTP client.

1- we will need a working ClamAV installation on server before this. I prefer not to tell how to install ClamAV to server this time, because there is already a very handy script called update.script which can install ClamAV and tons of other stuff. I take portions of this script to automate my process. Thanks to original update.script creator!

If ClamAV is already installed and updating itself regularly please skip this step.

-INSTALL CLAMAV-

mkdir /usr/local/updatescript
cd /usr/local/updatescript
wget http://tools.web4host.net/update.script
chmod 755 update.script

Run it once.

./update.script

Install Clamav

./update.script CLAMAV

Clamav Installation Done!

2- Update ProFTPD with current version. And patch it using mod_clamav for ClamAV usage.


cd ~
wget http://www.serverdirekt.com/DA/FTPAV/ftpantivirus
chmod +x ftpantivirus
./ftpantivirus

-this script will download ProFTPD, download mod_clamav latest version, patch ProFTPD with mod_clamav, compile and install new ProFTPD package with ClamAV support.

3- We need to edit our clamav.conf file to allow TCPSocket connections to port 3310


nano /etc/clamd.conf

find #TCPSocket 3310 line and comment it out.
find #TCPAddr 127.0.0.1 line and comment it out.
Final file will look like this:

....................
# Path to a local socket file the daemon will listen on.
# Default: disabled (must be specified by a user)
LocalSocket /tmp/clamd

# Remove stale socket after unclean shutdown.
# Default: no
FixStaleSocket yes

# TCP port address.
# Default: no
TCPSocket 3310

# TCP address.
# By default we bind to INADDR_ANY, probably not wise.
# Enable the following to provide some degree of protection
# from the outside world.
# Default: no
TCPAddr 127.0.0.1
....................

4- Finally we need to edit proftpd.conf to use our new mod_clamav module.

nano /etc/proftpd.conf
inside <Global></Global> tags at the end add:
&lt;IfModule mod_clamav.c&gt;

ขอบคุณครับ

แต่ผมว่ามันช่วยกันได้เฉพาะไฟล์ไวรัสจริงๆครับ
แต่พวก iframe ที่โดนๆแทรกกันนี่ clamav ไม่เจอครับ นอกจากจะเพิ่ม signature ให้ clamav รู้จัก
ซึ่งพวกนี้มันเปลี่ยน url กันไปเรื่อย ต้นตอที่แท้จริงก็มาจากเครื่องลูกค้าเองที่ ftp นั่นแหละ
การลง antivirus ที่ต้นตอ (เครื่องลูกค้า) เป็นวิธีป้องกันที่ได้ผลที่สุด

เอ่ผมเคยเจออยู่นะครับ วิธีการป้องกัน IFrame ผ่าน FTP ดันขุดไม่เจอ

#/etc/init.d/proftpd stop

lol

FTP data เข้า host ช้าลงเยอะไหมนั่น

ผมติดตั้งแล้วกำทำงานปกติดีครับ ไม่ช้านะ

เดี๋ยวนี้เมีวิธีสแกนไวรัสที่ ftp ด้วย
แต่มันจะทำให้ช้ารึเปล่า ต้องลองหน่อยแล้ว
ขอบคุณนะครับ

ตัวนี้ผมเคยลองติดตั้งไปแล้ว และรู้สึกว่า clamav มันรู้จัก virus iframe ด้วยครับ เพราะทดลองอัพไฟล์ .html ที่มี iframe อยู่ proftpd ก็ลบไฟล์นั้นไป

แต่ ปัญหาที่ผมเคยเจอคือ ถ้า virus มันดาวน์โหลดไฟล์ของลูกค้าไปแก้แล้วอัพไฟล์ขึ้นมา ไฟล์นั้นก็จะถูกลบไป ตอนนี้ผมเลยเอาออกไปแล้วครับ เพราะกลัวไฟล์ที่ถูกลบไปแล้วแต่ลูกค้าไม่ได้ทำ backup เดี๋ยวลูกค้าจะมาบ่นกับเราอีก lol

ลองลงนานแระครับ กิน cpu เยอะครับ
http://www.thaihosttalk.com/index.php?topic=10544.msg149453#msg149453

แสดงว่าการแก้ปัญหาโดยการเปลี่ยน port ง่ายกว่ารึเปล่าครับ

เปลี่ยน port ก็กันได้แต่ แฟรมนิครับ หุหุ
จัดไปๆ

ClamAV กันไฟล์ที่ถูก encode ด้วย base_64 ไม่ได้ครับ.

งั้นสรุปว่าแก้ไขที่ตัวเราง่ายสุดครับ ตามพี่แมน kke บอก
พยายาม scan virus ก่อน ftp ทุกครั้ง

[quote author=HostNeverDie.com link=topic=26273.msg249564#msg249564 date=1267593050]
งั้นสรุปว่าแก้ไขที่ตัวเราง่ายสุดครับ ตามพี่แมน kke บอก
พยายาม scan virus ก่อน ftp ทุกครั้ง

[quote author=HOSTNEVERDIE link=topic=26273.msg249564#msg249564 date=1267593050]
งั้นสรุปว่าแก้ไขที่ตัวเราง่ายสุดครับ ตามพี่แมน kke บอก
พยายาม scan virus ก่อน ftp ทุกครั้ง

แวะมาเก็บความรู้ค่ะ :slight_smile: