{{tag>[linux iptables rsyslog logging firewall]}} ===== iptables logging ===== Soms is het handig om, over een bepaalde tijdspanne, netwerkverkeer te loggen. Dit kan eenvoudig door gebruik te maken van iptables. Let erop dat iptables regels op volgorde werken. Een drop, log zal niet werken, maar een log, drop wel. ==== Instellen van logging ==== Standaard worden logregels door de kernel weggeschreven en daardoor komen ze, via rsyslog, in /var/log/messages en dmesg terecht. Onderstaande stappen zorgen ervoor dat de logregels in een apart bestand worden weggeschreven. * Controleer of er iptables rules actief zijn. Als er al rules in gebruik zijn, voeg deze dan boven eventuele drop-regels in (-I in plaats van -A):iptables -nvL * Voeg een logregel toe.#Dit voorbeeld logt LDAP SYN packets: iptables -A INPUT -p tcp -m tcp -m multiport --dports 389,636 --syn -j LOG --log-prefix "[ldapconnect] " # Voorbeeld log & drop iptables -N logdrop iptables -A logdrop -m limit --limit 5/m --limit-burst 10 -j LOG --log-prefix "[invalid] " iptables -A logdrop -j DROP iptables -A INPUT -m conntrack --ctstate INVALID -j logdrop * Configureer rsyslog zodat deze regels naar een ander logbestand worden weggeschreven. Dit voorbeeld gaat uit van /var/tmp. Maak het bestand /etc/rsyslog.d/00_ldap_connect_log.conf aan met de onderstaande inhoud. De -ampersand tilde- zorgt ervoor dat de weggeschreven regel niet meer door andere rsyslog regels loopt. Hierdoor komen de logregels alleen in het bedoelde bestand terecht. Deze tilde is in latere versies deprecated en kan vervangen worden door het woord stop.:msg,contains,"[ldapconnect] " /var/tmp/ldapconnect.log & ~ * Herstart rsyslog:service rsyslog restart * Controleer of er regels weggeschreven worden:# cat /var/tmp/ldapconnect.log Aug 21 15:42:01 server kernel: [ldapconnect] IN=eth3 OUT= MAC= SRC=10.10.10.1 DST=10.10.10.10 LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=3854 DF PROTO=TCP SPT=48081 DPT=389 WINDOW=5840 RES=0x00 SYN URGP=0 Aug 21 15:42:09 server kernel: [ldapconnect] IN=eth3 OUT= MAC= SRC=10.10.10.1 DST=10.10.10.10 LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=31265 DF PROTO=TCP SPT=44596 DPT=636 WINDOW=14600 RES=0x00 SYN URGP=0 Aug 21 15:42:34 server kernel: [ldapconnect] IN=eth3 OUT= MAC= SRC=10.10.10.1 DST=10.10.10.10 LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=27859 DF PROTO=TCP SPT=40614 DPT=636 WINDOW=14600 RES=0x00 SYN URGP=0 Aug 21 15:42:46 server kernel: [ldapconnect] IN=eth3 OUT= MAC= SRC=10.10.10.1 DST=10.10.10.10 LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=2992 DF PROTO=TCP SPT=48780 DPT=636 WINDOW=14600 RES=0x00 SYN URGP=0 Aug 21 15:43:01 server kernel: [ldapconnect] IN=eth3 OUT= MAC= SRC=10.10.10.1 DST=10.10.10.10 LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=51481 DF PROTO=TCP SPT=48082 DPT=389 WINDOW=5840 RES=0x00 SYN URGP=0