 Autor: [Adam Nadolny](/autorzy/adam-nadolny) Ekspert DevOps i infrastruktury · Zweryfikowano Kwiecień 2026

1.  [Strona główna](/) ›
2.  [Baza wiedzy](/baza-wiedzy/) ›
3.  ClamAV — antywirus na VPS

# ClamAV na VPS — antywirus open-source dla Linuksa

Opublikowano: 9 kwietnia 2026 · Kategoria: Bezpieczeństwo

ClamAV to darmowy, open-sourcowy silnik antywirusowy od Cisco Talos. Nie chroni Linuksa przed wirusami Windows w tym sensie, że nie są one dla niego egzekwowalne — ale skanuje pliki przychodzące pocztą, uploady na WordPressie, archiwa FTP i udziały Samba po to, aby nie przekazywać złośliwego kodu dalej, do klientów końcowych. Na serwerach pocztowych i hostingach współdzielonych ClamAV jest często wymogiem regulacyjnym. Ten artykuł pokazuje instalację, konfigurację freshclam, uruchomienie on-access scannera i integrację z Postfixem.

## Instalacja na Ubuntu/Debian i RHEL

\# Ubuntu / Debian
sudo apt update
sudo apt install clamav clamav-daemon clamav-freshclam clamav-docs -y

# RHEL / Rocky / AlmaLinux / CentOS Stream
sudo dnf install epel-release -y
sudo dnf install clamav clamav-update clamd -y

# Pierwsza aktualizacja bazy wirusow (moze potrwac 5-10 minut)
sudo systemctl stop clamav-freshclam
sudo freshclam
sudo systemctl start clamav-freshclam

# Uruchomienie daemona clamd
sudo systemctl enable --now clamav-daemon

# Sprawdzenie wersji i statusu
clamscan --version
sudo systemctl status clamav-freshclam clamav-daemon

## freshclam — automatyczna aktualizacja sygnatur

freshclam pobiera nowe definicje wirusów z mirrorów ClamAV (db.XX.clamav.net). Bazy wirusów są spore — główny plik `daily.cvd` ma ponad 300 MB. Domyślnie freshclam sprawdza aktualizacje 12 razy dziennie (co 2 godziny). Konfiguracja:

\# /etc/clamav/freshclam.conf (Debian/Ubuntu)
# /etc/freshclam.conf (RHEL)

DatabaseDirectory /var/lib/clamav
UpdateLogFile /var/log/clamav/freshclam.log
LogRotate yes
DatabaseMirror db.pl.clamav.net
DatabaseMirror database.clamav.net
Checks 24
NotifyClamd /etc/clamav/clamd.conf

# Recznie wymusz update:
sudo freshclam

# Sprawdz wersje baz
sudo sigtool --info /var/lib/clamav/daily.cvd
sudo sigtool --info /var/lib/clamav/main.cvd

## Skanowanie on-demand i uploadów WordPress

Dla WordPressa z uploadami najlepiej ustawić cron, który co noc skanuje `wp-content/uploads` i wysyła raport na email admina. Używaj `clamdscan` (wysyła do działającego daemona — szybkie) zamiast `clamscan` (ładuje bazę za każdym razem — wolne).

\# Skanowanie jednorazowe katalogu (on-demand)
sudo clamdscan -r /var/www/html/wp-content/uploads/

# Cron w /etc/cron.d/clamav-wp
0 3 \* \* \* root /usr/bin/clamdscan -r --fdpass \\
  --log=/var/log/clamav/wp-uploads.log \\
  /var/www/html/wp-content/uploads/ || \\
  echo "ClamAV alert" | mail -s "\[VPS\] ClamAV detected malware" admin@example.com

# Skanowanie z wykluczeniami (np. pomin duze filmy)
clamdscan -r --fdpass \\
  --exclude-dir="^/proc|^/sys" \\
  --exclude=".\*\\.(mp4|mkv|iso)$" \\
  /var/www/

# Raport z liczba zeskanowanych plikow
clamdscan -r --fdpass --summary /home/

## clamonacc — skanowanie on-access przez fanotify

clamonacc to watchdog, który używa mechanizmu `fanotify` w jądrze Linux do monitorowania operacji na plikach w czasie rzeczywistym. Kiedy użytkownik zapisuje plik w monitorowanym katalogu, clamonacc wysyła ścieżkę do clamd, a clamd skanuje plik — przed tym jak ktokolwiek zdąży go otworzyć. Jeśli plik jest zainfekowany, fanotify może zablokować operację.

\# /etc/clamav/clamd.conf - wlacz on-access
OnAccessMountPath /var/www
OnAccessIncludePath /var/www/html/wp-content/uploads
OnAccessExcludeUname clamav
OnAccessPrevention yes       # blokuj dostep jesli wirus
OnAccessExtraScanning yes

# Restart clamd i start clamonacc
sudo systemctl restart clamav-daemon
sudo clamonacc -F --fdpass &

# Test - zapisz plik testowy EICAR
cd /var/www/html/wp-content/uploads/
echo 'X5O!P%@AP\[4\\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H\*' > eicar.txt
cat eicar.txt      # Powinno zostac zablokowane z Permission denied

# Status clamonacc
sudo tail -f /var/log/clamav/clamav.log

## Integracja z Postfixem przez amavis

Najpopularniejszy sposób skanowania poczty to wpięcie amavis-new między Postfix a skrzynkę. amavisd-new jest content filterem, który dostaje mail z Postfixa, przekazuje go do ClamAV (przez clamd socket) i SpamAssassina, po czym zwraca do Postfixa. Poniższa tabela porównuje typowe konfiguracje serwera mailowego.

Konfiguracja

Zasoby (RAM)

Wydajność

Zastosowanie

Postfix + amavis + ClamAV

~800 MB

~50 mails/s

Klasyczne stack mailowe, łatwa integracja

Postfix + Rspamd + ClamAV

~400 MB

~150 mails/s

Nowsze, wydajniejsze, lepsze anti-spam

Postfix + MailScanner + ClamAV

~600 MB

~80 mails/s

Alternatywa dla amavis, prosty config

Mailcow (gotowy stack)

~2 GB

~100 mails/s

Docker, out-of-the-box ClamAV + Rspamd

Sam clamdscan w cron

~1 GB

N/A (offline)

Tylko skany uploadów FTP, nie maili

## Optymalizacja i false positives

ClamAV potrafi zjeść 1-2 GB RAM-u sam w sobie (bazy + cache). Na VPS z 2 GB RAM to dużo. Najważniejsze techniki optymalizacji:

-   **Wyłącz nieużywane sygnatury** — `ExcludeSig` w clamd.conf dla baz, które nie są potrzebne (np. Macro dla Office, jeśli nie hostujesz dokumentów).
-   **Nie skanuj plików >25 MB** — `MaxFileSize 25M` w clamd.conf. Większe zwykle nie zawierają wirusów skompresowanych.
-   **Limit głębokości archiwów** — `MaxRecursion 10`, `MaxFiles 10000`. Chroni przed zip bombs.
-   **Biała lista dla false positives** — plik `signatures.ign2` z nazwami sygnatur, które są FP dla twoich aplikacji (często .exe generowane przez twoich developerów).
-   **Nie używaj clamscan w produkcji** — za każdym razem ładuje bazę (5-10s, ~1 GB RAM). Używaj clamdscan z uruchomionym clamd.

## Najczęstsze pytania

Czy na VPS z Linuksem potrzebny jest antywirus? +

Tak, ale z innych powodów niż na Windows. ClamAV na Linuksie głównie skanuje przychodzące maile (Postfix/amavis), uploady użytkowników (WordPress wp-content/uploads), oraz pliki na współdzielonych dyskach. Chroni nie tyle sam serwer Linux, co klientów którzy pobierają pliki z twojego serwera (np. wykryje zawirusowane PDF-y w załącznikach).

Jak zaktualizować bazy wirusów ClamAV? +

freshclam automatycznie aktualizuje bazy wirusów. Ręczna aktualizacja: sudo freshclam. Daemon freshclamd działa w tle i sprawdza nowe definicje co N godzin (domyślnie 12x dziennie = co 2h). Konfiguracja w /etc/clamav/freshclam.conf — kluczowe opcje to DatabaseMirror i Checks (ile razy dziennie sprawdzać).

Czym różni się clamd od clamonacc? +

clamd to daemon z załadowaną bazą wirusów — odpowiada na zapytania clamdscan. clamonacc to monitor on-access używający fanotify w jądrze Linux — skanuje pliki automatycznie przy dostępie (open, write) i blokuje jeśli wykryje malware. clamonacc wymaga systemu z fanotify (kernel 3.8+) i ma wyższy narzut niż on-demand scan.

Jak zintegrować ClamAV z Postfix? +

Najczęściej przez amavis-new, który działa jako content filter między Postfixem a skrzynką. Pipeline: Postfix → amavis (port 10024) → ClamAV (przez clamd socket) → Postfix (port 10025) → skrzynka. Konfiguracja: content\_filter=smtp-amavis:\[127.0.0.1\]:10024 w main.cf Postfixa, a w amavisd.conf włączyć skaner clamd.

## Sprawdź oferty pasujące do tego scenariusza

Poniżej masz szybkie przejścia do ofert i stron z kodami rabatowymi tam, gdzie są dostępne.

Contabo

VPS z dużą ilością RAM — ClamAV lubi pamięć (sygnatury ~2 GB)

VPS + RAM

[Aktywuj rabat →](/out/contabo)

#Reklama · link partnerski

[Zobacz kod rabatowy →](/kody-rabatowe/contabo)

ProSerwer.pl

Polski VPS pod serwer mailowy Postfix + amavis + ClamAV

Polski VPS

[Aktywuj rabat →](/out/proserwer-pl)

#Reklama · link partnerski

[Zobacz kod rabatowy →](/kody-rabatowe/proserwer)

LH.pl

Hosting z wbudowanym skanowaniem antymalware dla WordPress

Hosting PL

[Aktywuj rabat →](/out/lh-pl)

#Reklama · link partnerski

[Zobacz kod rabatowy →](/kody-rabatowe/lh-pl)

## Powiązane strony

-   [Mailcow — gotowy serwer email](/baza-wiedzy/mailcow-serwer-email)
-   [Konfiguracja hostingu email](/baza-wiedzy/email-hosting-konfiguracja)
-   [Bezpieczeństwo WordPress na hostingu](/baza-wiedzy/bezpieczenstwo-wordpress-hosting)
-   [Wszystkie artykuły](/baza-wiedzy/)