Настройка брандмауэра сервера Linux для разрешения доступа с определенного диапазона IP-адресов

Настройка брандмауэра сервера Linux для разрешения доступа с определенного диапазона IP-адресов

Я новичок в Linux Server. В настоящее время я пытаюсь запустить сервер Ubuntu 10.10 в первый раз и использую Webmin для администрирования. Я застрял на настройке брандмауэра. Мне нужно разрешить ТОЛЬКО диапазону IP-адресов (например, 128.171.21.1 - 128.171.21.100) доступ к HTTP-серверу и Webmin. Я видел много руководств, но ни одно из них не соответствует тому, что мне нужно.

Заранее спасибо!

решение1

Вы можете использовать следующие команды, чтобы разрешить доступ к HTTP-серверу, при условии, что у вас установлена ​​политика по умолчанию DROPдля цепочек INPUTи .OUTPUT

$ sudo iptables -A INPUT -i lo -j ACCEPT
$ sudo iptables -A OUTOUT -i lo -j ACCEPT
$ sudo iptables -A INPUT -s 128.171.21.0/24 -p tcp -m tcp --dport 80 -j ACCEPT
$ sudo iptables -A OUTPUT -p tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT

$ sudo iptables -A OUTPUT -p udp -m udp --dport 53 -j ACCEPT
$ sudo iptables -A INPUT  -p udp --sport 53 -m state --state ESTABLISHED -j ACCEPT
$ sudo iptables -A OUTPUT -p tcp -m tcp --dport 80 -j ACCEPT
$ sudo iptables -A INPUT -p tcp -m tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT

Всем подсетям 128.171.21.0/24 будет разрешен доступ к вашему веб-серверу. Вы можете настроить его в соответствии с вашими потребностями.

Будьте осторожны, вам может потребоваться разрешить другие протоколы, такие как SSH (порт 22), для удаленного доступа к серверу.

РЕДАКТИРОВАТЬ:Последние четыре правила добавлены, чтобы разрешить серверу запрашивать DNS и HTTP.

решение2

Если вы считаете iptables слишком загадочным, в Ubuntu есть простая оболочка iptables, которая называетсяуфв.

Связанный контент