IPTABLES для веб-сервера

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС для молодых и начинающих системных администраторов.

Модераторы: SLEDopit, Модераторы разделов

Аватара пользователя
gcc
Сообщения: 526
ОС: FreeBSD 8.0 CURRENT

IPTABLES для веб-сервера

Сообщение gcc »

OS:CentOS4

хотел спросить кто какой оптимальный вариант использует для IPTABLES?

интересует apache, mysql, bind9
вот я нашел http://lists.altlinux.org/pipermail/sysadm...ril/021305.html
это нормально? только нужно подправить под свои нужны...

но вот есть:

Код: Выделить всё

#Разрешить общение между серверами

$IPTABLES -t filter -A INPUT -i eth1 -p udp --src 0/0 --sport 53 --dst
123.45.67.89 --dport 53 -j ACCEPT
$IPTABLES -t filter -A OUTPUT -o eth1 -p udp --src 123.45.67.89
--sport 53 --dst 0/0 --dport 53 -j ACCEPT

################################################################################
###
# Разрешить входящие запросы на локальный DNS-сервер с указанного узла (порт 53)
################################################################################
###

#Разрешить обращение клиентов к серверу

$IPTABLES -t filter -A INPUT -i eth0 -p udp --src 192.168.1.0/24
--sport $UNPRIVPORTS --dst 192.168.1.3 --dport 53 -j ACCEPT
$IPTABLES -t filter -A OUTPUT -o eth0 -p udp --src 192.168.1.3 --sport
53 --dst 192.168.1.0/24 --dport $UNPRIVPORTS -j ACCEPT


я так понимаю что айпи сервера тут 123.45.67.89
а что такое 192.168.1.3 и 192.168.1.0/24?
...но у меня стоит bind с Master и Slave, то я должен разрешить только для входа?

есть ли какой-то конфиг именно для одного VPS?
Спасибо сказали:
Аватара пользователя
Alex2ndr
Сообщения: 443
ОС: Debian Lenny

Re: IPTABLES для веб-сервера

Сообщение Alex2ndr »

gcc писал(а): ↑
20.10.2010 06:17
хотел спросить кто какой оптимальный вариант использует для IPTABLES?

По моему скромному мнению не существует оптимальных вариантов. Есть политика безопасности и iptables настраивается в соответствии с ней. Для начала сядьте и подумай кто сможет иметь доступ к вашим "apache, mysql, bind9" и откуда.



gcc писал(а): ↑
20.10.2010 06:17
я так понимаю что айпи сервера тут 123.45.67.89
а что такое 192.168.1.3 и 192.168.1.0/24?

Предполагаю что 192.168.1.3 это адрес этого же сервера, но во внутренней сети. 192.168.1.0/24 - диапазон адресов этой внутренней сети.
Спасибо сказали:
Аватара пользователя
danger08
Сообщения: 715
ОС: Linux (CentOS, Ubuntu)

Re: IPTABLES для веб-сервера

Сообщение danger08 »

gcc писал(а): ↑
20.10.2010 06:17
OS:CentOS4

Для redhat-систем набор правил задаётся в файле `/etc/sysconfig/iptables`. Сервис `iptables` для этого же придумали.

gcc писал(а): ↑
20.10.2010 06:17
есть ли какой-то конфиг именно для одного VPS?

Ну вот вам заготовка, самый простой конфиг одиночного сервера, дальше сами пилите:

Код: Выделить всё

# -- FILTER table --
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -i lo -j ACCEPT
-A INPUT -p icmp --icmp-type echo-reply -j ACCEPT
-A INPUT -p icmp --icmp-type destination-unreachable -j ACCEPT
-A INPUT -p icmp --icmp-type echo-request -j ACCEPT
-A INPUT -p icmp --icmp-type time-exceeded -j ACCEPT
-A INPUT -p tcp --tcp-flags SYN,ACK SYN,ACK -m state --state NEW -j REJECT --reject-with tcp-reset
-A INPUT -p tcp ! --syn -m state --state NEW -j DROP
-A INPUT -p udp -d 255.255.255.255 -j DROP
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -i eth0 -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -i eth0 -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -i eth0 -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT
#
-A INPUT -j LOG --log-prefix "IPTABLES-IN Default Drop: " --log-level 7
#
COMMIT

Разрешены входящие на 22,80,443/tcp, localhost, некоторые ICMP, все исходящие. Всё прочее запрещено.
Дописывайте свои правила, по своим условиям задачи. А вообще, читайте здесь.
Блогосайт - http://www.fateyev.com
Спасибо сказали: