Zamawianie reguł zapory UFW?

23

Mam następujące zasady na naszym serwerze w ramach UFW:

To                         Action      From
--                         ------      ----
22                         ALLOW       217.22.12.111
22                         ALLOW       146.200.200.200
80                         ALLOW       Anywhere
443                        ALLOW       Anywhere
22/tcp                     ALLOW       109.104.109.0/26

Dwie pierwsze zasady to nasze wewnętrzne adresy IP, które chcemy zapewnić, aby zawsze mogły SSH do (port 22). Następne dwie reguły zezwalają na wyświetlanie HTTP i HTTPS z dowolnego adresu IP w dowolnym miejscu. Ostatnią zasadą jest zezwolenie SSH z naszego systemu wdrażania kodu.

Ustawiłem ufw default denyregułę, ale wydaje się, że się nie pokazuje. Czy powinienem mieć także ostatnią zasadę, która zaprzecza wszystkiemu?

Jeśli dodam regułę odmowy wszystkiego, czy kolejność, w jakiej reguły są wyświetlane powyżej, robi różnicę? Przypuszczalnie, jeśli ta lista będzie dłużej dodawać kolejną regułę zezwolenia powyżej reguły odmowy, jest to niemożliwe, co oznacza, że ​​będę musiał usunąć i ponownie dodać niektóre reguły?

dannymcc
źródło

Odpowiedzi:

34

Jeśli chcesz zmienić kolejność reguł UFW, jest to jeden ze sposobów.

$ sudo ufw status numbered

     To                         Action      From
     --                         ------      ----
[ 1] 22                         ALLOW IN    Anywhere
[ 2] 80                         ALLOW IN    Anywhere
[ 3] 443                        ALLOW IN    Anywhere
[ 4] 22 (v6)                    ALLOW IN    Anywhere (v6)
[ 5] 80 (v6)                    ALLOW IN    Anywhere (v6)
[ 6] 443 (v6)                   ALLOW IN    Anywhere (v6)
[ 7] Anywhere                   DENY IN     [ip-to-block]

Załóżmy, że przypadkowo dodałeś regułę do końca, ale chciałeś doładować.

Najpierw usuniesz go z dołu (7) i dodasz z powrotem.

$ sudo ufw delete 7

Uwaga: ostrożnie usuwaj wiele reguł jedna po drugiej, ich pozycja może się zmienić!

Dodaj swoją regułę na samą górę (1):

$ sudo ufw insert 1 deny from [ip-to-block] to any
Justin Fortier
źródło
13

Polecenie ufw status verbosewyświetli domyślną regułę. W przypadku konfiguracji prawdopodobnie chcesz to powiedzieć

Domyślnie: odmawiaj (przychodzące), zezwalaj (wychodzące)

W takim przypadku nie potrzebujesz osobnej reguły „zaprzeczaj wszystkiemu”, a kolejność innych reguł nie ma znaczenia. Jeśli chcesz zmienić kolejność, możesz dodać regułę w określonym miejscu za pomocą ufw insert [position] [rule text]. Możesz uzyskać numerowaną listę reguł za pomocą ufw status numbered.

Flup
źródło
3

Jeśli znasz format reguł generowanych przez iptables-savepolecenie, możesz po prostu edytować pliki konfiguracyjne dla ufw w /etc/ufw/user.rulesi /etc/ufw/user6.rules. Nawet jeśli tak nie jest, dla każdej dodanej reguły użytkownika znajduje się komentarz pokazujący dopasowane polecenie ufw w celach informacyjnych.
Zmień zamówienia według własnego uznania i zapisz je. Następnie uruchom sudo ufw reload, nowe zamówienie będzie na miejscu.
Ten sposób jest szybszy niż polecenia deletei insert, ale prawdopodobnie nie powinieneś tworzyć kopii zapasowej przed edycją, jeśli nie jesteś bardzo pewny siebie.

Miauczeć
źródło