История изменений
Исправление Pierre_Dolle, (текущая версия) :
Вот я почти с этим разобрался, я только не могу понять какая из кучи xml-ек отвечает за цепочки LIBVIRT_FWI и LIBVIRT_FWO, греп не помог.
Пока костыль выглядит вот так:
#!/bin/bash
CHAIN=LIBVIRT_FWI
IPTCMD="iptables -L $CHAIN -vn"
FILTERCMD="grep -v -e Chain -e pkts -e reject-with -e DNAT"
while $IPTCMD | grep ESTABLISHED | grep -v DNAT >/dev/null
do
IF=$($IPTCMD | $FILTERCMD | awk '{print $7}' | head -n1)
NET=$($IPTCMD | $FILTERCMD | awk '{print $9}' | head -n1)
iptables -D $CHAIN -o $IF -d $NET -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
iptables -I $CHAIN 1 -o $IF -d $NET -m conntrack --ctstate DNAT,RELATED,ESTABLISHED -j ACCEPT
done
if ! iptables -t nat -C PREROUTING -i enp4s0 -p tcp --dport 11223 -j DNAT --to-destination 192.168.122.2:22 &> /dev/null; then
iptables -t nat -A PREROUTING -i enp4s0 -p tcp --dport 11223 -j DNAT --to-destination 192.168.122.2:22
fi
Исходная версия Pierre_Dolle, :
Вот я почти с этим разобрался, я только не могу понять какая из кучи xml-ек отвечает за цепочки LIBVIRT_FWI и LIBVIRT_FWO, греп не помог.