LINUX.ORG.RU

Настройка iptables для чайника.


1

1

Извеняйте за детские вопросы. Я только учусь. В голове полный ералаш от прочитанного. Покажите пажалуйста примеры настройки iptables для обычного десктопа.

1.Запретить всё и вся.
2.Разрешить только 21,80,110,25 порты
3.Разрешить пинги "туда-сюда"
4.Поместить iptables в автозагрузку при старте (Slackware-13.0)
iptables v1.4.3.2 Спасибо.



Последнее исправление: Humaxoid (всего исправлений: 1)

1. Устанавливаешь политики по умолчанию для цепочек INPUT, FORWARD и OUTPUT:

iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP

При этом надо обязательно приписать разрешения для localhost:

iptables -A INPUT -i lo -s 127.0.0.0/8 -j ACCEPT
iptables -A OUTPUT -o lo -d 127.0.0.0/8 -j ACCEPT

static ★★
()

2. Разрешение новых и установленных исходящих соединений:

iptables -A OUTPUT -o eth0 -m multiport --dports 21,25,80,110 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT

Разрешение на прием установленных и связанных с ними соединений:
iptables -A INPUT -i eth0 -m multiport --sports 21,25,80,110 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

static ★★
()
Ответ на: комментарий от static

А так правильно будет? Подойдет под мои задачи, или поправить что?

# Удаляем все предыдущие правила
iptables -F
# Блокируем все попытки установить связь из Интернета
iptables -A INPUT -i ppp0 -p tcp --syn -j DROP
# Закрыть все порты кроме 80, 25, 110, 21 
iptables -A INPUT -p tcp --dport 80 -j DROP
iptables -A INPUT -p udp --dport 80 -j DROP
iptables -A INPUT -p tcp --dport 21 -j DROP
iptables -A INPUT -p udp --dport 21 -j DROP
iptables -A INPUT -p tcp --dport 110 -j DROP
iptables -A INPUT -p udp --dport 110 -j DROP
iptables -A INPUT -p tcp --dport 25 -j DROP
iptables -A INPUT -p udp --dport 25 -j DROP
# Разрешаем пинговать
iptables -A POSTROUTING -p icmp -s 192.168.0.0/255.255.0.0 -j MASQUERADE

Humaxoid
() автор топика

В Slackware стартовые скрипрты ожидают наличия и исполняемости /etc/rc.d/rc.firewall. Например /etc/rc.d/rc.inet2 вызывает /etc/rc.d/rc.firewall start. Т.е. с передачей параметра start.

tux2002
()
Ответ на: комментарий от Humaxoid

А так правильно будет? Подойдет под мои задачи, или поправить что?

Занимаетесь копипастой, надо читать документацию и думать.
Например

# Закрыть все порты кроме 80

iptables -A INPUT -p tcp --dport 80 -j DROP

Уже противоречие.

# Разрешаем пинговать

iptables -A POSTROUTING -p icmp -s 192.168.0.0/255.255.0.0 -j MASQUERADE

Это не разрешение пинговать, а маскарадинг (вариант source NAT) сети 192.168.0.0

tux2002
()
Ответ на: комментарий от Humaxoid

1.Запретить всё и вся.

iptables -A INPUT -i ppp0 -p tcp --syn -j DROP

Да, на вход Вы этим правилом запретили все попытки соединения, следующие за этим правила запрета или разрешения соединений на вход почти бесполезны :)

tux2002
()
Ответ на: комментарий от tux2002

> В Slackware стартовые скрипрты ожидают наличия и исполняемости /etc/rc.d/rc.firewall. Например /etc/rc.d/rc.inet2 вызывает /etc/rc.d/rc.firewall start. Т.е. с передачей параметра start. У меня вообще /etc/rc.d/rc.firewall нет этого файла.

Humaxoid
() автор топика

> Покажите пажалуйста примеры настройки iptables для обычного десктопа.

Как-то так:
iptables -F
iptables -t nat -F
iptables save default

1.Запретить всё и вся.

2.Разрешить только 21,80,110,25 порты


3.Разрешить пинги «туда-сюда»



А это уже не для обычного десктопа - аська работать не будет ;)

Alan_Steel ★★
()
Ответ на: комментарий от Humaxoid

нет этого файла.

Я же не написал что он есть, я написал что он ожидается системой инициализационных скриптов. Поэтому если вы его создадите и сделаете исполняемым, он будет обрабатываться в моменты где это предусмотрено дистрибютором.

tux2002
()
Ответ на: комментарий от Alan_Steel

А действительно, делать DROP по дефолту на OUTPUT это как прострелить себе ногу =))

ivanich ★★
()
Ответ на: комментарий от Ip0

там же в конце есть примеры скриптов

Ip0 ★★★★
()

модель чайника в студию.

uju ★★
()

Пример настройки iptables для обычного десктопа:

iptables -F # Очищаем все цепочки таблицы filter
# Ко всем пакетам, которые относятся к уже установленным соединениям, применяем терминальное действие ACCEPT — пропустить
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -P INPUT DROP # В качестве действия по умолчанию устанавливаем DROP — блокирование пакета
iptables -P OUTPUT ACCEPT # Разрешаем все исходящие пакеты
iptables-save > /etc/iptables
echo -e "\niptables-restore < /etc/iptables" >> /etc/rc.local
А то, что ты в топике написал, для десктопа слишком параноидально, имхо. К тому же от грамотных бэкдоров все равно не спасет.

nnz ★★★★
()

iptables уже и на чайниках есть? дожили...


По теме - а зачем?

Настраивать нужно, если у вас gw.
Или если вам нужно определиться с какими-то правилами доступности открытых на декстопе сервисов.

Фильтровать доступные с декстопа сервисы - бессмысленно (если у вас не gw).

CyberTribe ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.