![Einfachste/beste Möglichkeit, nur bestimmte IP-Bereiche für den Zugriff zuzulassen](https://rvso.com/image/769296/Einfachste%2Fbeste%20M%C3%B6glichkeit%2C%20nur%20bestimmte%20IP-Bereiche%20f%C3%BCr%20den%20Zugriff%20zuzulassen.png)
Ich suche nach der einfachsten/besten Möglichkeit, nur bestimmten IP-Bereichen Zugriff auf meine Ubuntu 20.04-Installation zu gewähren. Das würde mir vor allem gefallen, damit ich den Webverkehr (Apache) blockieren kann, aber eine vollständige Serverblockierung wäre am besten.
Mir ist klar, dass eine Hardwarelösung hierfür am besten geeignet ist, aber die kann ich mir nicht leisten. Mir ist auch klar, dass „am einfachsten“ und „am besten“ nicht immer Hand in Hand gehen.
Und wird der Server langsamer, wenn mehr IP-Bereiche vorhanden sind?
Jede Hilfe wäre willkommen.
Antwort1
Sie können bei den meisten Linux-Installationen den gesamten IP-Verkehr mit Ausnahme des gewünschten ganz einfach filtern. Denken Sie daran, dass Sie dadurch möglicherweise den Zugriff auf den Server verlieren.
Hier ist eine kleine Basis, die funktionieren könnte.
# Allow some related traffic
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# Allow single source ip
iptables -A INPUT -s x.x.x.x/net -j ACCEPT
# Drop everything else
iptables -P INPUT DROP
Bevor Sie die letzte Drop-Line ausführen, die alles aktiviert, können Sie sie verwenden, iptables -vnL
um Zähler für Regelübereinstimmungen anzuzeigen. Stellen Sie sicher, dass dies der Fall ist.
Das Durchführen der IP-Filterung verbraucht CPU-Zyklen, aber das Gleiche gilt für das Beantworten von Paketen. Dies ist fast nie ein Problem, es sei denn, Sie wenden komplexe Regeln mit hohem Durchsatz an. Dies sind keine komplexen Regeln.