it:server:firewall-routovani

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revize Předchozí verze
Následující verze
Předchozí verze
it:server:firewall-routovani [2022/11/19 17:37] – [IP blacklist pomocí ipset] Petr Nosekit:server:firewall-routovani [2025/02/05 15:58] (aktuální) Petr Nosek
Řádek 243: Řádek 243:
 </code> </code>
  
-Zároveň jsem vytvořil soubor **ip-blacklist_custom.conf** do kterého uvádím IP adresy, které chci trvale blokovat. +Zároveň jsem vytvořil soubor **ip-blacklist_custom.conf** do kterého uvádím IP adresy, které chci trvale blokovat. Ještě je potřeba vytvořit skript **ipset_blacklist**: 
 + 
 +<code bash> 
 +#!/bin/bash 
 + 
 +IP_BLACKLIST=/root/scripts/ip-blacklist/ip-blacklist.conf 
 + 
 +IPSET=/usr/sbin/ipset 
 + 
 +$IPSET list blacklist 
 + 
 +if [ $? -ne 0 ] 
 +        then $IPSET create blacklist hash:net 
 +fi 
 + 
 +$IPSET flush blacklist 
 +egrep -v "^#|^$" $IP_BLACKLIST | while IFS= read -r ip 
 +do 
 +  $IPSET add blacklist $ip 
 +done 
 + 
 +</code> 
 + 
 +Poslední co zbývá je zajistit, aby se oba skripty spouštěli alespoň 1x týdně. K tomu vytvořím skript **/etc/cron.weekly/blacklistip-update**. Zároveň musí být skript spustitelný - spuštěním je dobré ho také otestovat. Zároveň stahování blacklistu z internetu chci spouštět jako neprivilegovaný uživatel. Zbytek musí spouštět root. 
 + 
 +<code bash> 
 +#!/bin/bash 
 + 
 +SCRIPT_FOLDER=/etc/scripts/ip-blacklist 
 + 
 +cd $SCRIPT_FOLDER 
 + 
 +su - neprivilegovany_user -c "$SCRIPT_FOLDER/ip-blacklist" 2>&1 >/dev/null && ./ipset-blacklist  2>&1 >/dev/null 
 + 
 +</code> 
 + 
 + 
 +===== Blokování vybrané komunikace ===== 
 + 
 +Chtěl jsem zablokovat část komunikace, která přichází z vnitřní sítě do internetu. Trochu jsem si naběhnul, protože tam se musí pracovat s blokování forwardowané komunikace.  
 + 
 +Editoval jsem soubor **/etc/ufw/before.rules** a přidal tato pravidla: 
 + 
 +<code> 
 +# Blocking forwarded communication 
 +-A ufw-before-forward -s 192.168.1.80 -p tcp --dport 8080 -j LOG --log-prefix "[BLOCKED] " 
 +-A ufw-before-forward -s 192.168.1.80 -p tcp -j LOG --log-prefix "[BLOCKED] " 
 +-A ufw-before-forward -s 192.168.1.80 -p udp -j LOG --log-prefix "[BLOCKED] " 
 +-A ufw-before-forward -s 192.168.1.80 -p tcp --dport 8080 -j DROP 
 +-A ufw-before-forward -s 192.168.1.80 -p tcp -j DROP 
 +-A ufw-before-forward -s 192.168.1.80 -p udp -j DROP 
 +</code> 
 + 
 +Nejprve jsem zkoušel blokovat konkrétní port a nakonec jsem zablokoval všechno. Samozřejmě je možné si vybrat - nemusí se to kombinovat. 
 + 
 +Pokud je nějaké spojení již navázané, tak reload firewallu nemusí hned pomoct. Proto jsem ukončil navázaná připojení na dané IP adrese: 
 + 
 +<code bash> 
 +conntrack -D -s 192.168.1.80 
 +</code> 
  • it/server/firewall-routovani.1668879469.txt.gz
  • Poslední úprava: 2022/11/19 17:37
  • autor: Petr Nosek