nftables разрешают повторное использование только с определенных IP-адресов

read -p "Please enter date 'yyyymmdd':" dat
yy=`echo $dat|cut -c 1-4`
mm=`echo $dat|cut -c 5-6`

case $mm in

01|02|03)
mm=12
yy=`expr $yy - 1`
dd=`cal $mm $yy|awk -F " " '{print $6}'|grep -v ^$|tail -1`
echo $yy$mm$dd
;;

04|05|06)
mm=03
dd=`cal $mm $yy|awk -F " " '{print $6}'|grep -v ^$|tail -1`
echo $yy$mm$dd
;;

07|08|09)
mm=06
dd=`cal $mm $yy|awk -F " " '{print $6}'|grep -v ^$|tail -1`
echo $yy$mm$dd
;;

10|11|12)
mm=09
dd=`cal $mm $yy|awk -F " " '{print $6}'|grep -v ^$|tail -1`
echo $yy$mm$dd
;;

*) echo "Invalid month"
exit;;
esac
0
23.12.2019, 12:28
2 ответа

На случай, если кто-то еще столкнется с той же проблемой, моя основная проблема заключалась в том, что я использовал правила в неправильном порядке.

Я добавлял правило отбрасывания перед правилом принятия, а это, кажется, работает наоборот.

Это пример правила для удаления всех IP-адресов, кроме 2:

ip saddr 1.1.1.1 tcp dport 6379 accept
ip saddr 2.2.2.2 tcp dport 6379 accept
tcp dport 6379 drop

Полный файл правил:

#!/usr/sbin/nft -f

flush ruleset

table inet filter {
        chain input {
                type filter hook input priority 0;
                # allow connection to redis from
                ip saddr 1.1.1.1 tcp dport 6379 accept
                ip saddr 2.2.2.2 tcp dport 6379 accept
                tcp dport 6379 drop
        }
        chain forward {
                type filter hook forward priority 0;
        }
        chain output {
                type filter hook output priority 0;
        }
}
2
28.01.2020, 02:59

Настоятельно рекомендуется

        chain input {
           type filter hook input priority 0;
           policy drop;
           # required items below
        }

Обратите внимание, что все удалено. Это самый безопасный способ управления брандмауэром. Все удалено, если это явно не разрешено.

-2
04.06.2021, 22:48

Теги

Похожие вопросы