Squid-Kit-Clamav Rocky: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
(Die Seite wurde neu angelegt: „=Konzepte= ==ICAP== *Allgemein ist ICAP ein schlankes Protokoll, um einen „Remote Procedure Call" für HTTP(S) und FTP auszuführen. *ICAP-Clients können H…“) |
|||
| Zeile 22: | Zeile 22: | ||
=Installation= | =Installation= | ||
| − | ;EPEL aktivieren | + | ;EPEL aktivieren |
*dnf install -y epel-release | *dnf install -y epel-release | ||
| − | *dnf install -y clamav clamd clamav-update git gcc make | + | ;Pakete installieren |
| + | *dnf install -y clamav clamd clamav-update c-icap c-icap-libs c-icap-modules git gcc make | ||
== Pakete zur Installation == | == Pakete zur Installation == | ||
=== clamav === | === clamav === | ||
| − | * | + | *Open-Source-Virenschutzprogramm |
| − | * | + | *Überprüft Dateien und Daten auf Viren und Malware |
=== clamd === | === clamd === | ||
| − | * | + | *Hintergrunddienst (Daemon) von ClamAV |
| − | + | *Ermöglicht Virenscans im Echtzeitmodus | |
=== clamav-update === | === clamav-update === | ||
| − | * | + | *freshclam — aktualisiert die ClamAV-Virendatenbank automatisch |
| − | + | === c-icap === | |
| − | === | + | *ICAP-Server — nimmt Anfragen von Squid entgegen und leitet sie an ClamAV weiter |
| − | * | + | === c-icap-libs === |
| − | + | *Bibliotheken für c-icap | |
| − | === | + | === c-icap-modules === |
| − | * | + | *Zusätzliche Module für c-icap, wird für squidclamav benötigt |
| − | + | === git / gcc / make === | |
| − | + | *Werden benötigt um squidclamav aus dem Quellcode zu kompilieren | |
| − | =c-icap | ||
| − | |||
| − | |||
| − | |||
| − | * | ||
| − | |||
| − | |||
=Über git clone squidclamav Source herunterladen= | =Über git clone squidclamav Source herunterladen= | ||
| Zeile 55: | Zeile 49: | ||
*git clone https://github.com/darold/squidclamav | *git clone https://github.com/darold/squidclamav | ||
| − | = | + | =Kompilieren= |
*cd squidclamav | *cd squidclamav | ||
*./configure && make && make install | *./configure && make && make install | ||
=Squid Konfiguration erweitern= | =Squid Konfiguration erweitern= | ||
| + | ;unter die http_access rules | ||
*vi /etc/squid/squid.conf | *vi /etc/squid/squid.conf | ||
<pre> | <pre> | ||
| Zeile 76: | Zeile 71: | ||
adaptation_access service_resp allow all | adaptation_access service_resp allow all | ||
</pre> | </pre> | ||
| − | |||
| − | |||
| − | |||
=aktivieren= | =aktivieren= | ||
| Zeile 87: | Zeile 79: | ||
;Ersetze diese Zeile | ;Ersetze diese Zeile | ||
redirect http://proxy.domain.dom/cgi-bin/clwarn.cgi | redirect http://proxy.domain.dom/cgi-bin/clwarn.cgi | ||
| − | ;Durch diese Zeile | + | ;Durch diese Zeile |
redirect https://virus-found.xinux.de | redirect https://virus-found.xinux.de | ||
;Wer dies selbst aufsetzen will | ;Wer dies selbst aufsetzen will | ||
*[[Squid-Clamav-Virus-detect]] | *[[Squid-Clamav-Virus-detect]] | ||
| − | = | + | =Dienste starten= |
*systemctl enable --now clamav-freshclam clamd@scan c-icap squid | *systemctl enable --now clamav-freshclam clamd@scan c-icap squid | ||
| Zeile 98: | Zeile 90: | ||
*firewall-cmd --zone=public --add-port=1344/tcp --permanent | *firewall-cmd --zone=public --add-port=1344/tcp --permanent | ||
*firewall-cmd --reload | *firewall-cmd --reload | ||
| − | |||
| − | |||
| − | |||
| − | |||
=Hier kann man Testen= | =Hier kann man Testen= | ||
| Zeile 108: | Zeile 96: | ||
=Der Log zum clamav= | =Der Log zum clamav= | ||
*tail -f /var/log/clamav/clamd.log | *tail -f /var/log/clamav/clamd.log | ||
| − | + | instream(local): Win.Test.EICAR_HDB-1(44d88612fea8a8f36de82e1278abb02f:68) FOUND | |
=Der Log zum c-icap= | =Der Log zum c-icap= | ||
| Zeile 115: | Zeile 103: | ||
=Links= | =Links= | ||
*https://github.com/darold/squidclamav | *https://github.com/darold/squidclamav | ||
| − | |||
Version vom 28. April 2026, 10:40 Uhr
Konzepte
ICAP
- Allgemein ist ICAP ein schlankes Protokoll, um einen „Remote Procedure Call" für HTTP(S) und FTP auszuführen.
- ICAP-Clients können HTTP-Daten an einen ICAP-Server weitergeben, der seinerseits die Inhalte umformt oder bearbeitet.
- Der Server sendet die Daten nach der Bearbeitung zurück an den Client.
- Normalerweise sind die adaptierten Inhalte HTTP(S)/FTP-Anfragen oder -Antworten.
- Ein ICAP-Client ist im Normalfall ein Proxy, der HTTP(S)/FTP-Requests von einem Browser entgegennimmt.
- Die Daten werden zu einem ICAP-Server gesendet, um dort bearbeitet zu werden.
- Diese Bearbeitung kann eine Überprüfung des URL, ein Virenscan etc. sein.
- Der Server sendet eine Antwort zurück, die dann über den ICAP-Client zurück zum Browser geht und dort angezeigt wird.
- ICAP verwendet standardmäßig den TCP-Port 1344
ClamAV
- ClamAV (Clam AntiVirus) ist ein unter der GNU General Public License stehendes Virenschutzprogramm
- Bei ClamAV handelt es sich um eine Bibliothek, die in eigene Anwendungen eingebunden werden kann.
- ClamAV läuft als Dienst im Hintergrund (Daemon) oder als eine Befehlszeilen-Anwendung.
- Unter Linux greift ClamAV auf fanotify zurück, um den Zugriff auf das Dateisystem über den Virenscanner umzuleiten
- Es kann daher als Echtzeitscanner verwendet werden.
Schaubild
Installation
- EPEL aktivieren
- dnf install -y epel-release
- Pakete installieren
- dnf install -y clamav clamd clamav-update c-icap c-icap-libs c-icap-modules git gcc make
Pakete zur Installation
clamav
- Open-Source-Virenschutzprogramm
- Überprüft Dateien und Daten auf Viren und Malware
clamd
- Hintergrunddienst (Daemon) von ClamAV
- Ermöglicht Virenscans im Echtzeitmodus
clamav-update
- freshclam — aktualisiert die ClamAV-Virendatenbank automatisch
c-icap
- ICAP-Server — nimmt Anfragen von Squid entgegen und leitet sie an ClamAV weiter
c-icap-libs
- Bibliotheken für c-icap
c-icap-modules
- Zusätzliche Module für c-icap, wird für squidclamav benötigt
git / gcc / make
- Werden benötigt um squidclamav aus dem Quellcode zu kompilieren
Über git clone squidclamav Source herunterladen
"SquidClamAV" ist ein Drittanbieter-Plug-In für den Squid-Proxy-Server, das speziell zur Integration von ClamAV in den Proxy entwickelt wurde. SquidClamAV ermöglicht es Squid, den HTTP-Datenverkehr zu überwachen und nach Viren und Malware zu scannen.
- git clone https://github.com/darold/squidclamav
Kompilieren
- cd squidclamav
- ./configure && make && make install
Squid Konfiguration erweitern
- unter die http_access rules
- vi /etc/squid/squid.conf
icap_enable on icap_send_client_ip on icap_send_client_username on icap_client_username_encode off icap_client_username_header X-Authenticated-User icap_preview_enable on icap_preview_size 1024 icap_service service_req reqmod_precache bypass=0 icap://127.0.0.1:1344/squidclamav icap_service service_resp respmod_precache bypass=0 icap://127.0.0.1:1344/squidclamav adaptation_access service_req allow all adaptation_access service_resp allow all
aktivieren
- Modul squidclamav aktivieren
- echo "Service squidclamav squidclamav.so" >> /etc/c-icap/c-icap.conf
- Fehlerseite zuweisen
- vi /etc/c-icap/squidclamav.conf
- Ersetze diese Zeile
redirect http://proxy.domain.dom/cgi-bin/clwarn.cgi
- Durch diese Zeile
redirect https://virus-found.xinux.de
- Wer dies selbst aufsetzen will
Dienste starten
- systemctl enable --now clamav-freshclam clamd@scan c-icap squid
Firewall
- firewall-cmd --zone=public --add-port=1344/tcp --permanent
- firewall-cmd --reload
Hier kann man Testen
Der Log zum clamav
- tail -f /var/log/clamav/clamd.log
instream(local): Win.Test.EICAR_HDB-1(44d88612fea8a8f36de82e1278abb02f:68) FOUND
Der Log zum c-icap
- tail -f /var/log/c-icap/server.log
