Il 04/10/21 19:38, Matteo Bini ha scritto:
Ciao Piviul.
Io utilizzerei nftables [1] e farei così.

Aggiungerei le seguenti righe al file di configurazione di nftables
(/etc/nftables.conf):
table inet nat {
        chain prerouting {
                type nat hook prerouting priority 0;
        }
}
Dopodiché scriverei uno script bash di questo tipo:
nft -f /etc/nftables.conf
nft add rule inet nat prerouting tcp dport 80 dnat ip to $IP
Scegli tu come valorizzare la variabile IP. Questo script è per IPv4.

In questo modo, quando viene eseguito lo script, nftables cancella tutte le
regole in memoria e le va a ripescare dal file di configurazione, poi aggiunge
la regola che interessa a te, ovvero il reindirizzamento di tutti i pacchetti
per la porta 80 a un certo IP.

Sulla wiki di nftables ho trovato un esempio simile a quello che ti serve [2].
Saluti.

--
Matteo Bini

[1] https://wiki.nftables.org/
[2] 
https://wiki.nftables.org/wiki-nftables/index.php/Performing_Network_Address_Translation_(NAT)#Destination_NAT
grazie Matteo, sono riuscito anche se non dovrebbe nattare. Ho installato firewalld come consigliato da debian e utilizzato firewall-cmd per impostare le regole, veramente molto semplice:

firewall-cmd --remove-forward-port=port=80:proto=tcp:toport=80:toaddr=$IP_OLD
firewall-cmd --add-forward-port=port=80:proto=tcp:toport=80:toaddr=$IP_NEW

dove IP_OLD lo prendo andando a leggere il risultato di firewall-cmd --list-forward-ports:

# firewall-cmd --list-forward-ports | sed 's/^port=80:proto=tcp:toport=80:toaddr=//'

Ciao e grazie!

Piviul

Rispondere a