GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak integrovat ClamAV (prostřednictvím mod_clamav) do ProFTPd pro skenování virů na Ubuntu 10.04

Tento tutoriál vysvětluje, jak můžete integrovat ClamAV do ProFTPd pro skenování virů v systému Ubuntu 10.04. Toho je dosaženo pomocí mod_clamav. Nakonec, kdykoli se soubor nahraje přes ProFTPd, ClamAV soubor zkontroluje a smaže jej, pokud se jedná o malware.

Neposkytuji žádnou záruku, že to pro vás bude fungovat!

1 předběžná poznámka

Na svém serveru Ubuntu 10.04 byste měli mít funkční nastavení ProFTPd.

Protože všechny kroky z tohoto tutoriálu spustíme s právy root, můžeme buď před všechny příkazy v tomto tutoriálu přidat řetězec sudo, nebo se staneme rootem hned teď zadáním

sudo su 

2 Instalace ClamAV

ClamAV lze nainstalovat následovně:

aptitude install clamav clamav-daemon libclamav-dev

Nyní musíme překonfigurovat ClamAV tak, aby Clamd používal připojení TCP místo místního Unixového soketu. Důrazně se doporučuje vyhnout se Unixovým soketům, když používáte funkci Chroot ProFTPd (DefaultRoot ~). Důvodem je, že pokud se mod_clamav potřebuje připojit k Clamd, Unixový socket není v chroot prostředí k dispozici.

Spustit

dpkg-reconfigure clamav-base

... a na tyto otázky odpovězte následovně (přijměte výchozí hodnoty pro všechny ostatní otázky):

Typ soketu:<-- TCP
TCP port clamd bude naslouchat na:<-- 3310
IP adresa clamd bude naslouchat na:<-- 127.0.0.1

Poté restartujte Clamd a freshclam:

/etc/init.d/clamav-daemon restart
/etc/init.d/clamav-freshclam restart

Nyní spusťte

netstat -tap | grep clamd

... a měli byste vidět, že Clamd naslouchá na localhost přes TCP:

[e-mail chráněný]:~# netstat -tap | grep clamd
tcp         0      0 localhost.localdom:3310 *:*                       POSLECHNOUT        7911/clamd
[e-mailem chráněno>]:~

3 Přestavba ProFTPd

Bohužel mod_clamav není ve výchozím nastavení součástí ProFTPd a pro mod_clamav neexistuje žádný balíček Ubuntu, takže musíme znovu sestavit ProFTPd pomocí mod_clamav. Použiji zdrojový balíček Ubuntu ProFTPd a vytvořím nové balíčky ProFTPd .deb s podporou mod_clamav.

Nejprve nainstalujeme všechny balíčky, které jsou potřeba k přestavbě ProFTPd:

aptitude build-dep proftpd-dfsg

Potřebujeme také následující balíčky:

aptitude install libpam-devdpkg-dev libmysqlclient-dev debhelper libpq-dev libldap2-dev libwrap0-dev libcap2-dev autotools-dev libncurses5-dev dpatch libacl1-dev libacl1-dev unibattr1-dev libattr1-dev libattr1-dev

Nyní stáhneme zdrojový balíček ProFTPd do /usr/src:

cd /usr/src
apt-get source proftpd-dfsg

Dále stáhneme mod_clamav do /usr/src a rozbalíme jej:

wget --no-check-certificate https://secure.thrallingpenguin.com/redmine/attachments/download/1/mod_clamav-0.11rc.tar.gz
tar xzvf mod_clamav-0.11rc.tar.gz

Poté zkopírujeme soubory mod_clamav-0.11rc/mod_clamav.* do adresáře proftpd-dfsg-1.3.2c/contrib...

cp mod_clamav-0.11rc/mod_clamav.* proftpd-dfsg-1.3.2c/contrib

... a opravte zdroje ProFTPd:

cd proftpd-dfsg-1.3.2c
patch -p1 <../mod_clamav-0.11rc/proftpd.patch

Dále musíme upravit debian/rules:

vi debian/rules

Prohledejte sekci CONF_ARGS a přidejte do ní --with-modules=mod_clamav:

[...]
CONF_ARGS := --prefix=/usr \
             --with-includes=$(shell pg_config --includedir):$(shell mysql_config --include|sed -e 's/-I//') \
             --mandir=/usr/share/man --sysconfdir=/etc/$(NAME) --localstatedir=/var/run --libexecdir=/usr/lib/$(NAME) \
             --enable-sendfile --enable-facl --enable-dso --enable-autoshadow --enable-ctrls --with-modules=mod_readme \
             --enable-ipv6 --enable-nls --with-modules=mod_clamav
[...]

Nyní můžeme znovu sestavit ProFTPd:

dpkg-buildpackage

Nyní přejdeme o jeden adresář výše, tam byly vytvořeny nové balíčky .deb:

cd .. 

Příkaz

ls -l 

zobrazí dostupné balíčky:

[e-mail chráněný]:/usr/src# ls -l
celkem 7500
drwxr-xr-x 24 kořenový kořen    4096 2010-04-29 14:00 linux-headers-2.6.32-21
drwxr-xr-x  7 kořenový kořen    4096 2010-04-29 14:00 linux-headers-2.6.32-21-server
drwxr-xr-x  2  501 4-509 20   401 20  :22 mod_clamav-0.11rc
-rw-r--r--  1 kořen src     5115 2010-10-04 17:21 mod_clamav-0.11rc.tar.gz
-rw-r--r --  1 root src   930578 2010-10-04 17:38 proftpd-basic_1.3.2c-1_amd64.deb
-rw-r--r--  1 kořen src ft 1  630168 pro 4 p4  630168 pro 4 p401 -dev_1.3.2c-1_amd64.deb
drwxr-xr-x 14 kořenový kořen    4096 2010-10-04 17:37 proftpd-dfsg-1.3.2c
-rw-r--r- 1 root src      4522 2010-10-04 17:38 proftpd-dfsg_1.3.2c-1_amd64.changes
-rw-r--r--  1 kořen src 1 ft     3 3.20-2010 .3.2c-1.diff.gz
-rw-r--r--  1 kořen src     1138 2010-10-04 17:30 proftpd-dfsg_1.3.2c-1.dsc
-rw -r--r--  1 kořen src  3018899 2009-12-22 07:05 proftpd-dfsg_1.3.2c.orig.tar.gz
-rw-r--r--  1 kořen src 7 140108 10-04 17 :38 proftpd-doc_1.3.2c-1_all.deb
-rw-r--r--  1 kořen src   315326 2010-10-04 17:38 proftpd-mod-ldap_1.3.2c-1_amd6 br />-rw-r--r--  1 kořen src   305076 2010-10-04 17:38 proftpd-mod-mysql_1.3.2c-1_amd64.deb
-rw-r--r--  1 root src   306848 2010-10-04 17:38 proftpd-mod-odbc_1.3.2c-1_amd64.deb
-rw-r--r--  1 root src   304762 ft p-04762 2010 10 mod-pgsql_1.3.2c-1_amd64.deb
-rw-r--r--  1 kořen src   304634 2010-10-04 17:38 proftpd-mod-sqlite_1.3.2c-1_amd6>[email protected]:/usr/src#

Nové balíčky .deb ProFTPd můžeme nainstalovat následovně:

dpkg -i proftpd*.deb 

4 Konfigurace ProFTPd

Nyní musíme nakonfigurovat ProFTPd tak, aby používal mod_clamav při každém nahrávání souboru. Otevřete /etc/proftpd/proftpd.conf...

vi /etc/proftpd/proftpd.conf

... a přidejte sloku


   ClamAV na
   ClamServer 127.0.0.1
   ClamPort 3310

někde, např. pod


AdminControlsEngine vypnutý

sekce:

[...]
<IfModule mod_ctrls_admin.c>
AdminControlsEngine off
</IfModule>

<IfModule mod_clamav.c>
   ClamAV on
   ClamServer 127.0.0.1
   ClamPort 3310
</IfModule>

#
# Alternative authentication frameworks
#
#Include /etc/proftpd/ldap.conf
#Include /etc/proftpd/sql.conf
[...]

Restartujte ProFTPd:

/etc/init.d/proftpd restart

Nyní zkontrolujte, zda je načten mod_clamav spuštěním:

proftpd -vv

mod_clamav by měl být uveden ve výstupu:

[e-mail chráněno]:~# proftpd -vv
Verze ProFTPD: 1.3.2c (maint)
  Verze srovnávacího přehledu: 01040002
  Vyrobeno: Po říjnu 4 17:34:10 CEST >
Načtené moduly:
  mod_ifsession/1.0
  mod_dynmasq/0.2.1
  mod_wrap2_file/1.2
  mod_wrap2/2.0.6
  mod_ban/0.5.3
  mod_load/1.0.1
  mod_rewrite/0.7
  mod_wrap.c
  mod_quotatab_radius.c
  mod_quotatab_file.c
  mod_quotatab/1.3.0
  /0.9
  mod_tls/2.2.2
  mod_ctrls_admin/0.9.5
  mod_lang/0.9
  mod_ctrls/0.9.4
  mod_cap/1.0
  mod_clanav.c
  mod_auth_pam/1.1
  mod_ident/1.0
  mod_dso/0.4
  mod_facts/0.1
  mod_delay/0.6
  mod_site.c
  mod_log.c
  mod_ls.c
  mod_auth.c
  mod_auth_file/0.8.3
  mod_auth_unix.c
  mod_xfer.c
  mod_core.c
[e-mail chráněný ]:~#

A je to! Nyní, kdykoli se někdo pokusí nahrát malware na váš server prostřednictvím ProFTPd, budou „špatné“ soubory smazány. Můžete to otestovat stažením testovacího viru Eicar z http://www.eicar.org/anti_virus_test_file.htm; zkuste jej nahrát na váš server ProFTPd, a pokud vše půjde dobře, mělo by být smazáno:

  • ProFTPd:http://www.proftpd.org/
  • mod_clamav:http://www.thrallingpenguin.com/resources/mod_clamav.htm
  • ClamAV:http://www.clamav.net/
  • Ubuntu:http://www.ubuntu.com/

Ubuntu
  1. Jak integrovat ClamAV do PureFTPd pro skenování virů na Debian Squeeze

  2. Jak integrovat ClamAV do PureFTPd pro skenování virů na CentOS 6.2

  3. Jak integrovat ClamAV do PureFTPd pro skenování virů na CentOS 7

  1. Jak integrovat ClamAV do PureFTPd pro skenování virů na Ubuntu 12.10

  2. Jak integrovat ClamAV do PureFTPd pro skenování virů na Fedoře 18

  3. Jak nainstalovat ProFTPD na Ubuntu 14.04

  1. Jak skenovat viry pomocí ClamAV na Ubuntu 20.04

  2. Jak nainstalovat ProFTPD na Ubuntu 15.04

  3. Jak nainstalovat ClamAV na Ubuntu 20.04