
Ich kann mithilfe der UFW-Firewall eine Regel hinzufügen, um einer einzelnen bekannten IP 192.168.1.32
den Zugriff auf meinen Test-Webserver ( 192.168.1.48
(in einem lokalen, größtenteils vertrauenswürdigen Netzwerk) unter Ubuntu 14.04 zu ermöglichen, indem ich Folgendes verwende:
sudo ufw allow proto tcp from 192.168.1.23 to 192.168.1.48 port 80
Gibt es eine Möglichkeit, einen Adressatenbereich hinzuzufügen?(z. B. 192.168.1.30-192.168.1.50
um mehr Maschinen in meinem aktuellen Netzwerk zuzulassen)? Die Verwendung von 192.168.1.30-192.168.1.50
und 192.168.1.30-192.168.1.50
funktioniert nicht und führt zu ERROR: Bad source address
.
Antwort1
Sie müssen eine Binärzahl (2,4,8,16, 32) verwenden, also verwenden Sie entweder einen größeren oder einen kleineren Bereich.genau20 Hosts sind mit einer Bitmaske in einer einzigen Regel einfach nicht möglich:
16 Hosts (192.168.1.16 bis 192.168.1.31):
sudo ufw allow proto tcp from 192.168.1.16/28 to 192.168.1.48 port 80
Einzelheiten
Address: 192.168.1.16 11000000.10101000.00000001.0001 0000 Rule Mask: 255.255.255.240 = 28 11111111.11111111.11111111.1111 0000 Wildcard: 0.0.0.15 00000000.00000000.00000000.0000 1111 HostMin: 192.168.1.16 11000000.10101000.00000001.0001 0000 HostMax: 192.168.1.31 11000000.10101000.00000001.0000 1111
32 Hosts (192.168.1.0 - 192.168.1.31)
sudo ufw allow proto tcp from 192.168.1.0/27 to 192.168.1.48 port 80
Einzelheiten
Address: 192.168.1.0 11000000.10101000.00000001.000 00000 Rule Mask: 255.255.255.224 = 27 11111111.11111111.11111111.111 00000 Wildcard: 0.0.0.31 00000000.00000000.00000000.000 11111 HostMin: 192.168.1.0 11000000.10101000.00000001.000 00000 HostMax: 192.168.1.31 11000000.10101000.00000001.000 11111
64 Hosts (192.168.1.0 - 192.168.1.63)
sudo ufw allow proto tcp from 192.168.1.0/26 to 192.168.1.48 port 80
Einzelheiten
Address: 192.168.1.0 11000000.10101000.00000001.00 000000 Rule Mask: 255.255.255.192 = 26 11111111.11111111.11111111.11 000000 Wildcard: 0.0.0.63 00000000.00000000.00000000.00 111111 HostMin: 192.168.1.0 11000000.10101000.00000001.00 000000 HostMax: 192.168.1.63 11000000.10101000.00000001.00 111111
Erläuterung
Ich kann es nicht besser erklären alsWikipedia
Antwort2
Eingehenden Datenverkehr von einer bestimmten IP-Adresse oder einem bestimmten Subnetz zulassen Um eingehende Verbindungen von einer bestimmten IP-Adresse oder einem bestimmten Subnetz zuzulassen, geben Sie die Quelle an. Führen Sie beispielsweise diesen Befehl aus:
sudo ufw allow from 192.168.1.0/24 to any port 22
ODER
sudo ufw allow from 192.168.1.0/24 to 192.168.1.48 port 80
Antwort3
Ich mag das
sudo ufw allow from 192.168.1.0/24 to any port 22
Ich verwende ufw ständig und mir gefällt auch das Nummerierungsschema, das mir hilft, den Überblick über den Paketfluss zu behalten:
sudo ufw insert 1 allow in proto tcp from 192.168.1.0/24 to any port
22 comment "SSH Network Connection"
Antwort4
ziemlich alte Frage, aber falls sich trotzdem noch jemand fragt, hier ist ein Weg, den ich gefunden habe
cat geolocationIpList.txt | awk '/^[^#]/ { print $1 }' | sudo xargs -I {} ufw deny from {} to any
Es liest jede Zeile des Textes und aktualisiert die Firewall-Regeln
Sie können es ändern, um es zuzulassen, wenn Sie es wieder rückgängig machen möchten ...