Această pagină poate fi doar citită. Poți vedea sursa, dar nu poți modifica pagina. Consultă administratorul dacă ești de părere că ceva este în neregulă. ====== Antivirus și securitate pe Linux ====== Linux este cunoscut pentru stabilitatea și securitatea sa, însă asta nu înseamnă că este invulnerabil. Un sistem Linux poate deveni vector de transmitere a virusurilor către sisteme Windows, poate fi infectat cu rootkit-uri, sau poate fi compromis prin malware specific Linux. Un antivirus nu este obligatoriu, dar este recomandat în anumite scenarii: servere de fișiere, sisteme cu trafic mare de fișiere sau utilizatori care lucrează cu documente primite din surse externe. Cele mai utilizate unelte open-source pentru securitate pe Linux sunt: * **ClamAV** - antivirus open-source, ideal pentru scanare manuală și automată * **rkhunter** - detectează rootkit-uri, backdoor-uri și fișiere suspecte * **chkrootkit** - unealtă complementară pentru detectarea rootkit-urilor * **Maldet (LMD)** - Linux Malware Detect, orientat spre servere web ---- <tab-group> <tab title="Ubuntu"> ===== Antivirus pe Ubuntu ===== > Acest ghid se aplică și pentru distribuțiile bazate pe Ubuntu: **Linux Mint**, **Pop!_OS**, **Zorin OS**, **elementary OS**, **KDE Neon** și altele. ==== ClamAV ==== === Instalare === <code bash> sudo apt update sudo apt install clamav clamav-daemon -y </code> Verifică versiunea instalată: <code bash> clamscan --version </code> === Actualizarea bazei de date === Oprește serviciul înainte de actualizare manuală: <code bash> sudo systemctl stop clamav-freshclam sudo freshclam sudo systemctl start clamav-freshclam </code> Activează actualizarea automată a semnăturilor: <code bash> sudo systemctl enable --now clamav-freshclam </code> === Configurare === Fișierul de configurare principal se află la ''/etc/clamav/clamd.conf''. Câteva setări utile: <code> # Activează jurnalizarea LogFile /var/log/clamav/clamav.log LogTime yes # Directoare excluse din scanare (opțional) ExcludePath ^/proc/ ExcludePath ^/sys/ ExcludePath ^/dev/ </code> Repornește serviciul după modificări: <code bash> sudo systemctl restart clamav-daemon </code> === Utilizare === Scanare rapidă a directorului home: <code bash> clamscan -r --bell -i ~/ </code> Scanare completă a sistemului cu raport salvat: <code bash> sudo clamscan -r --log=/var/log/clamav/scan-$(date +%F).log / </code> Explicație parametri: * ''-r'' - recursiv (include subdirectoare) * ''--bell'' - sunet la depistarea unui fișier infectat * ''-i'' - afișează doar fișierele infectate * ''--remove'' - șterge automat fișierele infectate (folosiți cu atenție!) * ''--move=/quarantine'' - mută fișierele infectate în carantină Exemplu scanare cu carantină: <code bash> sudo mkdir -p /quarantine sudo clamscan -r --move=/quarantine /home/ </code> === Scanare automată cu cron === Adaugă o scanare săptămânală automată: <code bash> sudo crontab -e </code> Adaugă linia: <code> 0 2 * * 0 clamscan -r --log=/var/log/clamav/scan-$(date +\%F).log /home/ --quiet </code> ---- ==== rkhunter ==== === Instalare === <code bash> sudo apt install rkhunter -y </code> === Configurare inițială === <code bash> sudo rkhunter --update sudo rkhunter --propupd </code> ''--propupd'' creează o bază de date cu proprietățile actuale ale fișierelor de sistem - rulați-l **după** orice actualizare de sistem! === Utilizare === <code bash> sudo rkhunter --check </code> Scanare non-interactivă cu raport: <code bash> sudo rkhunter --check --skip-keypress --logfile /var/log/rkhunter.log </code> === Automatizare zilnică === <code bash> sudo nano /etc/default/rkhunter </code> Setează: <code> CRON_DAILY_RUN="true" REPORT_EMAIL="utilizator@exemplu.com" </code> ---- ==== chkrootkit ==== === Instalare === <code bash> sudo apt install chkrootkit -y </code> === Utilizare === <code bash> sudo chkrootkit </code> Caută doar rezultate suspecte: <code bash> sudo chkrootkit | grep -v "not infected" | grep -v "not found" </code> ---- ==== Sfaturi practice ==== * Rulează ''rkhunter --propupd'' după fiecare actualizare ''sudo apt upgrade'' * Nu te baza exclusiv pe antivirus - menține sistemul actualizat, folosește un firewall (''ufw''), și evită rularea de software din surse necunoscute * Combină ClamAV cu rkhunter pentru o acoperire mai bună * Pe un server, ia în considerare și **Fail2Ban** pentru protecție împotriva atacurilor brute-force </tab> <tab title="Debian"> ===== Antivirus pe Debian ===== > Acest ghid se aplică și pentru distribuțiile bazate pe Debian: **MX Linux**, **antiX**, **Kali Linux**, **Raspberry Pi OS** și altele. ==== ClamAV ==== === Instalare === <code bash> sudo apt update sudo apt install clamav clamav-daemon -y </code> Pe Debian, serviciul ''clamav-freshclam'' poate porni automat. Verifică starea: <code bash> sudo systemctl status clamav-freshclam sudo systemctl status clamav-daemon </code> === Actualizarea bazei de date === <code bash> sudo systemctl stop clamav-freshclam sudo freshclam sudo systemctl start clamav-freshclam sudo systemctl enable clamav-freshclam </code> === Configurare === Pe Debian, fișierul de configurare este tot ''/etc/clamav/clamd.conf''. Asigură-te că daemon-ul este configurat corect: <code bash> sudo nano /etc/clamav/clamd.conf </code> Setări recomandate: <code> LogFile /var/log/clamav/clamav.log LogTime yes LogRotate yes MaxFileSize 25M MaxScanSize 100M # Excluderi recomandate ExcludePath ^/proc/ ExcludePath ^/sys/ ExcludePath ^/dev/ ExcludePath ^/run/ </code> Pornește și activează daemon-ul: <code bash> sudo systemctl enable --now clamav-daemon </code> === Utilizare === Scanare director home: <code bash> clamscan -r --bell -i ~/ </code> Scanare completă cu jurnal: <code bash> sudo clamscan -r --log=/var/log/clamav/scan-$(date +%F).log / </code> Scanare cu carantină automată: <code bash> sudo mkdir -p /var/quarantine sudo clamscan -r --move=/var/quarantine /home/ </code> === Interfață grafică: ClamTk === Pe Debian cu mediu grafic, poți instala interfața grafică pentru ClamAV: <code bash> sudo apt install clamtk -y </code> ClamTk oferă: * Scanare vizuală a directoarelor * Planificator de scanări * Gestionarea carantinei * Actualizare ușoară a semnăturilor ---- ==== rkhunter ==== === Instalare === <code bash> sudo apt install rkhunter -y </code> === Configurare și inițializare === <code bash> sudo rkhunter --update sudo rkhunter --propupd </code> Editează configurația pentru notificări email: <code bash> sudo nano /etc/rkhunter.conf </code> <code> MAIL-ON-WARNING=utilizator@exemplu.com MAIL_CMD=mail -s "[rkhunter] Avertisment pe $(hostname)" LANGUAGE=en </code> === Utilizare === <code bash> sudo rkhunter --check --sk </code> ''--sk'' (''--skip-keypress'') rulează fără întreruperi interactive. === Verificare automată zilnică === Debian include rkhunter în cron.daily dacă este configurat: <code bash> sudo nano /etc/default/rkhunter </code> <code> CRON_DAILY_RUN="true" CRON_DB_UPDATE="true" DB_UPDATE_EMAIL="false" REPORT_EMAIL="utilizator@exemplu.com" NICE="0" RUN_CHECK_ON_BATTERY="false" </code> ---- ==== chkrootkit ==== === Instalare === <code bash> sudo apt install chkrootkit -y </code> Activează verificarea zilnică automată: <code bash> sudo nano /etc/chkrootkit.conf </code> <code> RUN_DAILY="true" RUN_DAILY_OPTS="-q" </code> === Utilizare manuală === <code bash> sudo chkrootkit # Sau doar rezultatele suspecte: sudo chkrootkit -q </code> ---- ==== Maldet (Linux Malware Detect) ==== Maldet este recomandat în special pentru servere Debian ce găzduiesc site-uri web. === Instalare === <code bash> sudo apt install wget -y cd /tmp wget https://www.rfxn.com/downloads/maldetect-current.tar.gz tar -xzf maldetect-current.tar.gz cd maldetect-*/ sudo ./install.sh </code> === Actualizare semnături === <code bash> sudo maldet --update-sigs </code> === Scanare director web === <code bash> sudo maldet --scan-all /var/www/html/ </code> ---- ==== Sfaturi practice ==== * Pe Debian **stable**, pachetele pot fi mai vechi - verifică periodic dacă există versiuni noi ale uneltelor de securitate în backports * Activează actualizările de securitate automate: ''sudo apt install unattended-upgrades'' * Combină ClamAV (viruși) + rkhunter (rootkits) + chkrootkit (verificare suplimentară) pentru protecție stratificată * Pe servere, adaugă și **Lynis** pentru audit de securitate: ''sudo apt install lynis && sudo lynis audit system'' </tab> <tab title="Fedora"> ===== Antivirus pe Fedora ===== > Acest ghid se aplică și pentru distribuțiile bazate pe Fedora sau compatibile RPM: **Red Hat Enterprise Linux (RHEL)**, **AlmaLinux**, **Rocky Linux**, **CentOS Stream** și altele. ==== ClamAV ==== === Instalare === Pe Fedora, ClamAV se află în repozitoriul oficial: <code bash> sudo dnf install clamav clamd clamav-update -y </code> === Configurare === Copiază configurația implicită: <code bash> sudo cp /etc/clamd.d/scan.conf /etc/clamd.d/scan.conf.bak sudo nano /etc/clamd.d/scan.conf </code> Decomentează sau adaugă: <code> # Activează log-ul LogFile /var/log/clamd.scan LogTime yes LogRotate yes # Socket-ul pentru daemon LocalSocket /run/clamd.scan/clamd.sock # Excluderi recomandate ExcludePath ^/proc/ ExcludePath ^/sys/ ExcludePath ^/dev/ </code> Decomentează linia ''LocalSocket'' și comentează ''TCPSocket'' dacă există. === Configurare freshclam === <code bash> sudo nano /etc/freshclam.conf </code> Asigură-te că există: <code> DatabaseOwner clamupdate UpdateLogFile /var/log/freshclam.log LogTime yes DatabaseDirectory /var/lib/clamav </code> === Actualizarea bazei de date === <code bash> sudo freshclam </code> Activează actualizarea automată: <code bash> sudo systemctl enable --now clamav-freshclam </code> === Pornirea serviciului === <code bash> sudo systemctl enable --now clamd@scan sudo systemctl status clamd@scan </code> === Utilizare === Scanare director home: <code bash> clamscan -r --bell -i ~/ </code> Scanare completă: <code bash> sudo clamscan -r --log=/var/log/clamav-scan-$(date +%F).log /home/ </code> Scanare cu ștergere automată (atenție!): <code bash> sudo clamscan -r --remove /tmp/ </code> Scanare cu carantină: <code bash> sudo mkdir -p /var/quarantine sudo clamscan -r --move=/var/quarantine /home/ </code> === SELinux și ClamAV === Pe Fedora, SELinux poate bloca accesul ClamAV la anumite fișiere. Verifică și rezolvă: <code bash> sudo ausearch -c 'clamd' --raw | audit2allow -M clamd-custom sudo semodule -i clamd-custom.pp </code> Sau, dacă vrei să verifici fără SELinux temporar: <code bash> sudo setenforce 0 # Permisiv temporar sudo clamscan -r /home/ sudo setenforce 1 # Reactivează </code> ---- ==== rkhunter ==== === Instalare === <code bash> sudo dnf install rkhunter -y </code> === Configurare === <code bash> sudo rkhunter --update sudo rkhunter --propupd </code> Editează configurația: <code bash> sudo nano /etc/rkhunter.conf </code> <code> MAIL-ON-WARNING=utilizator@exemplu.com SCRIPTWHITELIST=/usr/bin/egrep SCRIPTWHITELIST=/usr/bin/fgrep ALLOWHIDDENDIR=/dev/.udev ALLOWHIDDENDIR=/dev/.static </code> === Utilizare === <code bash> sudo rkhunter --check --sk </code> Actualizare și verificare completă: <code bash> sudo rkhunter --update && sudo rkhunter --check --sk --rwo </code> ''--rwo'' (''--report-warnings-only'') - afișează doar avertismentele. === Automatizare === Creează un script de verificare zilnică: <code bash> sudo nano /etc/cron.daily/rkhunter-check </code> <code bash> #!/bin/bash /usr/bin/rkhunter --update /usr/bin/rkhunter --check --skip-keypress --report-warnings-only \ --logfile /var/log/rkhunter.log </code> <code bash> sudo chmod +x /etc/cron.daily/rkhunter-check </code> ---- ==== chkrootkit ==== Pe Fedora, chkrootkit nu se află în repozitoriile oficiale. Îl poți instala din surse: === Instalare din surse === <code bash> sudo dnf install gcc make -y cd /tmp wget ftp://ftp.chkrootkit.org/pub/seg/pac/chkrootkit.tar.gz tar -xzf chkrootkit.tar.gz cd chkrootkit-*/ make sense sudo ./chkrootkit </code> ---- ==== Lynis - Audit complet de securitate ==== Lynis este o unealtă excelentă de audit pe sisteme bazate pe Fedora/RHEL: === Instalare === <code bash> sudo dnf install lynis -y </code> === Utilizare === <code bash> sudo lynis audit system </code> Raportul complet se salvează la ''/var/log/lynis.log'', iar raportul de date la ''/var/log/lynis-report.dat''. ---- ==== Sfaturi practice ==== * Pe Fedora, **SELinux este activ implicit** și oferă un strat suplimentar de securitate - nu îl dezactiva permanent * Actualizează sistemul regulat: ''sudo dnf upgrade --refresh'' * Activează **firewalld**: ''sudo systemctl enable --now firewalld'' * Verifică porturile deschise: ''sudo ss -tulnp'' * Pe Fedora Server, ia în considerare și ''sudo dnf install aide'' (Advanced Intrusion Detection Environment) </tab> <tab title="Arch Linux"> ===== Antivirus pe Arch Linux ===== > Acest ghid se aplică și pentru distribuțiile bazate pe Arch: **Manjaro**, **EndeavourOS**, **Garuda Linux**, **ArcoLinux** și altele. ==== ClamAV ==== === Instalare === ClamAV este disponibil în repozitoriile oficiale Arch: <code bash> sudo pacman -S clamav </code> === Configurare inițială === Actualizează baza de date de semnături **înainte** de a porni serviciul: <code bash> sudo freshclam </code> Creează directoarele necesare dacă nu există: <code bash> sudo mkdir -p /var/log/clamav sudo chown clamav:clamav /var/log/clamav </code> === Configurare clamd === <code bash> sudo nano /etc/clamav/clamd.conf </code> Setări recomandate pentru Arch: <code> # Utilizator pentru daemon User clamav # Socket local LocalSocket /run/clamav/clamd.ctl LocalSocketMode 660 # Jurnalizare LogFile /var/log/clamav/clamd.log LogTime yes LogRotate yes # Performanță MaxScanSize 150M MaxFileSize 30M MaxRecursion 16 MaxFiles 10000 # Excluderi ExcludePath ^/proc/ ExcludePath ^/sys/ ExcludePath ^/dev/ ExcludePath ^/run/ </code> === Configurare freshclam === <code bash> sudo nano /etc/clamav/freshclam.conf </code> <code> DatabaseOwner clamav UpdateLogFile /var/log/clamav/freshclam.log LogTime yes LogRotate yes DatabaseDirectory /var/lib/clamav NotifyClamd /etc/clamav/clamd.conf </code> === Pornire servicii === <code bash> sudo systemctl enable --now clamav-freshclam.service sudo systemctl enable --now clamav-daemon.service sudo systemctl status clamav-daemon.service </code> === Utilizare === Scanare director curent: <code bash> clamscan -r --bell -i . </code> Scanare home cu jurnal: <code bash> clamscan -r -i --log=/tmp/clamav-$(date +%F).log ~/ </code> Scanare completă sistem (poate dura mult): <code bash> sudo clamscan -r --exclude-dir="^/sys" \ --exclude-dir="^/proc" \ --exclude-dir="^/dev" \ --log=/var/log/clamav/fullscan-$(date +%F).log / </code> === Carantină === <code bash> sudo mkdir -p /var/quarantine sudo clamscan -r --move=/var/quarantine /home/ </code> === Script de scanare rapidă === Creează un script comod: <code bash> sudo nano /usr/local/bin/scan-home </code> <code bash> #!/bin/bash echo "=== ClamAV Scan - $(date) ===" clamscan -r --bell -i \ --log=/var/log/clamav/scan-$(date +%F_%H%M).log \ /home/ echo "Scanare completă. Verifică /var/log/clamav/ pentru raport." </code> <code bash> sudo chmod +x /usr/local/bin/scan-home </code> ---- ==== rkhunter ==== === Instalare === <code bash> sudo pacman -S rkhunter </code> === Configurare === <code bash> sudo rkhunter --update sudo rkhunter --propupd </code> > **Important:** Rulează ''sudo rkhunter --propupd'' după fiecare actualizare de sistem cu ''sudo pacman -Syu''! Editează configurația: <code bash> sudo nano /etc/rkhunter.conf </code> Setări recomandate pentru Arch: <code> UPDATE_MIRRORS=1 MIRRORS_MODE=0 MAIL-ON-WARNING="" LANGUAGE=en # Fișiere și directoare specifice Arch care pot apărea ca false pozitive SCRIPTWHITELIST=/usr/bin/egrep SCRIPTWHITELIST=/usr/bin/fgrep SCRIPTWHITELIST=/usr/bin/which ALLOWHIDDENDIR=/dev/.udev PKGMGR=PACMAN </code> === Utilizare === <code bash> sudo rkhunter --check --sk </code> Doar avertismente: <code bash> sudo rkhunter --check --sk --rwo </code> === Automatizare cu systemd timer === Creează un serviciu și un timer systemd: <code bash> sudo nano /etc/systemd/system/rkhunter.service </code> <code> [Unit] Description=rkhunter rootkit scan [Service] Type=oneshot ExecStart=/usr/bin/rkhunter --update ExecStart=/usr/bin/rkhunter --check --skip-keypress --report-warnings-only </code> <code bash> sudo nano /etc/systemd/system/rkhunter.timer </code> <code> [Unit] Description=rkhunter daily scan [Timer] OnCalendar=daily Persistent=true [Install] WantedBy=timers.target </code> <code bash> sudo systemctl enable --now rkhunter.timer sudo systemctl list-timers rkhunter* </code> ---- ==== chkrootkit ==== === Instalare din AUR === <code bash> # Cu yay yay -S chkrootkit # Cu paru paru -S chkrootkit # Manual git clone https://aur.archlinux.org/chkrootkit.git cd chkrootkit makepkg -si </code> === Utilizare === <code bash> sudo chkrootkit # Sau compact: sudo chkrootkit -q </code> ---- ==== Lynis - Audit de securitate ==== === Instalare === <code bash> sudo pacman -S lynis </code> === Utilizare === <code bash> sudo lynis audit system </code> Raportul se generează la ''/var/log/lynis.log''. Lynis oferă un scor de securitate și recomandări specifice sistemului tău. ---- ==== Sfaturi practice pentru Arch ==== * Arch primește actualizări frecvente - rulează ''sudo rkhunter --propupd'' după fiecare ''sudo pacman -Syu'' * Abonează-te la [[https://security.archlinux.org/|Arch Linux Security Advisories]] pentru notificări de securitate * Activează un firewall simplu: ''sudo pacman -S ufw && sudo ufw enable'' * Verifică pachetele AUR cu atenție - citește PKGBUILD-ul înainte de instalare * Folosește ''sudo pacman -Qm'' pentru a lista pachetele din afara repozitoriilor oficiale (AUR/foreign) * Ia în considerare ''sudo pacman -S aide'' pentru monitorizarea integrității fișierelor de sistem </tab> </tab-group> ---- ===== Comparație unelte de securitate ===== ^ Unealtă ^ Tip ^ Interfață ^ Distribuții ^ | ClamAV | Antivirus | CLI + GUI (ClamTk) | Toate | | rkhunter | Rootkit detector | CLI | Toate | | chkrootkit | Rootkit detector | CLI | Toate | | Maldet | Malware (servere web) | CLI | Debian/Ubuntu/RHEL | | Lynis | Audit securitate | CLI | Toate | | AIDE | Integritate fișiere | CLI | Toate | ===== Concluzie ===== Pe Linux, securitatea este un proces continuu, nu un produs. Combinând un antivirus (ClamAV), un detector de rootkits (rkhunter), actualizări regulate ale sistemului și un firewall activ, obții o protecție solidă pentru uzul de zi cu zi. Pe sisteme critice sau servere, adaugă Lynis pentru audituri periodice și AIDE pentru monitorizarea integrității fișierelor de sistem. {{tag>antivirus securitate clamav rkhunter chkrootkit lynis malware rootkit ubuntu debian fedora arch linux-mint pop-os zorin-os endeavouros manjaro rocky-linux almalinux}}