Я новичок в 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, которая называетсяуфв.