Ubuntu ufw: ustaw regułę dla poszczególnych interfejsów

30

Chcę utworzyć regułę, która pozwoli każdemu na eth1 uzyskać dostęp do portu 80. Czy UFW może to zrobić, czy powinienem wrócić do korzystania z Shorewall?

Aby wyjaśnić: to pytanie o możliwości, czy ufw może obsługiwać interfejsy jako cel?

Antonius Bloch
źródło
W szczególności szukam określenia interfejsu, a nie adresu IP lub sieci.
Antonius Bloch
Jest to stacja robocza / serwer cobbler / puppet. Posiada 4 interfejsy łączące go z 4 różnymi sieciami, 2 sieciami publicznymi i 1 siecią wielu dzierżawców i 1 prywatną siecią zarządzania. Chcę się upewnić, że serwery tftp, dhcp i inne usługi udostępniania są dostępne tylko w sieci zarządzania, a nie w innych sieciach.
Antonius Bloch

Odpowiedzi:

51

W końcu przeczytałem stronę man:

By default, ufw will apply rules to all available interfaces. To
limit  this,  specify DIRECTION on INTERFACE, where DIRECTION is
one of in or out (interface aliases  are  not  supported).   For
example,  to  allow  all  new incoming http connections on eth0,
use:

ufw allow in on eth0 to any port 80 proto tcp

Aby trochę rozwinąć odpowiedź brzmi: tak, ufw może używać interfejsu jako celu. Moja szczególna zasada wyglądała następująco:

ufw allow in on eth1 to [eth1 ip addr] port 80 proto tcp
Antonius Bloch
źródło
3

Tak, jeśli eth1 jest zwykłym interfejsem z własnym adresem IP (a ten adres IP jest tym, do którego próbujesz udzielić dostępu):

ufw allow from any to [eth1 ip addr] port 80

Ale jeśli jest coś bardziej skomplikowanego, potrzebujemy więcej informacji na temat konfiguracji tego systemu.

Shane Madden
źródło
Zobacz moje komentarze powyżej, ponieważ możliwe jest, że dzierżawcy mogą zmienić ustawienia sieci i uzyskać dostęp do tego adresu IP, może to nie działać dobrze.
Antonius Bloch
Jeśli mogą zmienić ustawienia sieciowe, mają root i mogą również zmienić reguły zapory, niezależnie od tego, która zapora programowa jest używana.
Shane Madden