UTF8 должен быть.
Настройка iptables для начинающих.
Модератор: Модераторы разделов
Re: Настройка iptables для начинающих.
UTF8 должен быть.
Чтение man'нов в слух ещЁ никому не помогало!...
kernel 4.2
chmod -x `which chmod`
War, war never changes...
kernel 4.2
chmod -x `which chmod`
War, war never changes...
- sspphheerraa
- Сообщения: 1375
- ОС: Gentoo
Re: Настройка iptables для начинающих.
Странно, перезалил с этого поста - русский появился на koi8-r.
Sspphheerraa
- sspphheerraa
- Сообщения: 1375
- ОС: Gentoo
Re: Настройка iptables для начинающих.
А как разрешить банальные ICQ,Jabber,NTP,p2p (имеется в виду клиенты) на рабочей станции?
IP адресс на ней внешний/реальный. Есть такие мысли:
icq (нужен ли OUTPUT?)
jabber (нужен ли OUTPUT?)
NTP (обновление времени), в роде так
По поводу пиринговых сетей (трренты, мулы/ослы, дс++), так чтоб не получать Low-ID нужно открывать какие-то специфические порты. Пробовал 6881:6889 (для торрента) и 10100 для DC - не получается (если отключить IPT, то все норм.).
Еще слышал, что существует модуль ipp2p (как раз для распознавания p2p траффика). Кто-нибудь пользовался, как он?
Правило судя по всему должно быть таким.
Но тоже мне не понятно, нужно ли здесь такую же цепочку для OUTPUT писать?
IP адресс на ней внешний/реальный. Есть такие мысли:
icq (нужен ли OUTPUT?)
Код: Выделить всё
$IPT -A INPUT -p tcp -m tcp --dport 5190 -j ACCEPT
jabber (нужен ли OUTPUT?)
Код: Выделить всё
$IPT -A INPUT -p tcp -m tcp --dport 5222:5223 -j ACCEPT
NTP (обновление времени), в роде так
Код: Выделить всё
$IPT -A INPUT -p udp -s europe.pool.ntp.org --sport 123 --dport 123 -j ACCEPT
По поводу пиринговых сетей (трренты, мулы/ослы, дс++), так чтоб не получать Low-ID нужно открывать какие-то специфические порты. Пробовал 6881:6889 (для торрента) и 10100 для DC - не получается (если отключить IPT, то все норм.).
Еще слышал, что существует модуль ipp2p (как раз для распознавания p2p траффика). Кто-нибудь пользовался, как он?
Правило судя по всему должно быть таким.
Код: Выделить всё
$IPT -A INPUT -m ipp2p --ipp2p -j ACCEPT
Но тоже мне не понятно, нужно ли здесь такую же цепочку для OUTPUT писать?
Sspphheerraa
- sspphheerraa
- Сообщения: 1375
- ОС: Gentoo
Re: Настройка iptables для начинающих.
Время и IM-клиенты пропускаются так.
Также в них есть функция передачи файлов, по умолчанию - через 8010 порт.
Вопрос - это будут ESTABLISHED/RELATED соединения или NEW?
Код: Выделить всё
# NTP (обновление времени).
iptables -A INPUT -p udp --sport 123 --dport 123 -j ACCEPT
# ICQ-client
iptables -A OUTPUT -p tcp --dport 5190 -j ACCEPT
iptables -A INPUT -p tcp --sport 5190 -j ACCEPT
# Jabber-client
iptables -A OUTPUT -p tcp -m tcp --dport 5222 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --sport 5269 -j ACCEPT
Также в них есть функция передачи файлов, по умолчанию - через 8010 порт.
Вопрос - это будут ESTABLISHED/RELATED соединения или NEW?
Sspphheerraa
- sspphheerraa
- Сообщения: 1375
- ОС: Gentoo
Re: Настройка iptables для начинающих.
Для работы Valknut (dc++ клиент) на рабочей станции (активный режим):
Порты, использующиеся по умолчанию 9176 и 411 для соединения с хабом.
Код: Выделить всё
iptables -A OUTPUT -p tcp --dport 411 -j ACCEPT # Hub connection
iptables -A OUTPUT -p tcp --sport 9176 -j ACCEPT # Upload files
iptables -A INPUT -p tcp --dport 9176 -j ACCEPT # Download files
iptables -A INPUT -p udp --dport 9176 -j ACCEPT # Search files
Порты, использующиеся по умолчанию 9176 и 411 для соединения с хабом.
Sspphheerraa
- sspphheerraa
- Сообщения: 1375
- ОС: Gentoo
Re: Настройка iptables для начинающих.
Параллельные обсуждения http://www.gentoo.ru/node/13588
Sspphheerraa
Re: Настройка iptables для начинающих.
Всем привет, пытаюсь реализовать DMZ следующего вида:
LAN
|
Ubuntu Server (nat, iptables) -> DMZ (WWW, Mail и т.д.)
|
Internet
За основу скрипта взял пример приведённый в Iptables Tutorial 1.1.19 http://www.opennet.ru/docs/RUS/iptables/mi...MZ.firewall.txt. Что-то подправил, в итоге работает, WWW ещё не запускал, но проблема есть с почтой. А именно, письма на Mail server из Internet приходят, а отправить не получается,
tail -f /var/log/mail.info
вижу ошибку:
...postfix/qmgr: from=<igor@noname-spb.ru>
...postfix/smtp: connect to mail.noname-spb.ru [53.52.153.110]:25 Connection refused.
# "53.52.153.110" имеет MX запись в интернете
Для выявления проблемы урезал всё что можно, получилось следующее:
#!/bin/bash
#Local area network
LAN_IP="192.168.0.1"
LAN_RANGE="192.168.0.0/24"
LAN_IFACE="eth0"
#Internet
INET_IP="53.52.153.110"
INET_IFACE="eth1"
#DMZ addresses
DMZ_HTTP_IP="10.0.0.2" - Mail server
DMZ_IP="10.0.0.1"
DMZ_IFACE="eth2"
LO_IFACE="lo"
LO_IP="127.0.0.1"
IPTABLES="/sbin/iptables"
###########################################################################
# 2. Module loading.
/sbin/depmod -a
/sbin/modprobe ip_tables
/sbin/modprobe ip_conntrack
/sbin/modprobe iptable_filter
/sbin/modprobe iptable_mangle
/sbin/modprobe iptable_nat
/sbin/modprobe ipt_LOG
/sbin/modprobe ipt_limit
/sbin/modprobe ipt_state
###########################################################################
# 3.1 Required proc configuration
echo "1" > /proc/sys/net/ipv4/ip_forward
##################################################################
# 4.1 Filter Table
##################################################################
#################################################################
# 4.1.4 INPUT chain
#################################################################
#######################################################
# 4.1.5 FORWARD chain
#######################################################
# MAIL server
# for SMTP 25 from INTERNET / TO INTERNET
$IPTABLES -A FORWARD -p TCP -i $INET_IFACE -o $DMZ_IFACE -d $DMZ_HTTP_IP --dport 25 -j ACCEPT
$IPTABLES -A FORWARD -p TCP -i $DMZ_IFACE -o $INET_IFACE -d 0/0 -j ACCEPT
# for SMTP 25 from LAN
$IPTABLES -A FORWARD -p TCP -i $LAN_IFACE -s $LAN_RANGE -d $DMZ_HTTP_IP --dport 25 -j ACCEPT
# для POP3 110 из LAN
$IPTABLES -A FORWARD -p TCP -i $LAN_IFACE -s $LAN_RANGE -d $DMZ_HTTP_IP --dport 110 -j ACCEPT
##########################################################
# 4.1.6 OUTPUT chain
##########################################################
# PREROUTING chain
# MAIL server
$IPTABLES -t nat -A PREROUTING -p TCP -i $INET_IFACE -d $INET_IP --dport 25 -j DNAT --to-destination $DMZ_HTTP_IP
# POSTROUTING chain
$IPTABLES -t nat -A POSTROUTING -o $INET_IFACE -j SNAT --to-source $INET_IP
Подскажите, где накосячил?
LAN
|
Ubuntu Server (nat, iptables) -> DMZ (WWW, Mail и т.д.)
|
Internet
За основу скрипта взял пример приведённый в Iptables Tutorial 1.1.19 http://www.opennet.ru/docs/RUS/iptables/mi...MZ.firewall.txt. Что-то подправил, в итоге работает, WWW ещё не запускал, но проблема есть с почтой. А именно, письма на Mail server из Internet приходят, а отправить не получается,
tail -f /var/log/mail.info
вижу ошибку:
...postfix/qmgr: from=<igor@noname-spb.ru>
...postfix/smtp: connect to mail.noname-spb.ru [53.52.153.110]:25 Connection refused.
# "53.52.153.110" имеет MX запись в интернете
Для выявления проблемы урезал всё что можно, получилось следующее:
#!/bin/bash
#Local area network
LAN_IP="192.168.0.1"
LAN_RANGE="192.168.0.0/24"
LAN_IFACE="eth0"
#Internet
INET_IP="53.52.153.110"
INET_IFACE="eth1"
#DMZ addresses
DMZ_HTTP_IP="10.0.0.2" - Mail server
DMZ_IP="10.0.0.1"
DMZ_IFACE="eth2"
LO_IFACE="lo"
LO_IP="127.0.0.1"
IPTABLES="/sbin/iptables"
###########################################################################
# 2. Module loading.
/sbin/depmod -a
/sbin/modprobe ip_tables
/sbin/modprobe ip_conntrack
/sbin/modprobe iptable_filter
/sbin/modprobe iptable_mangle
/sbin/modprobe iptable_nat
/sbin/modprobe ipt_LOG
/sbin/modprobe ipt_limit
/sbin/modprobe ipt_state
###########################################################################
# 3.1 Required proc configuration
echo "1" > /proc/sys/net/ipv4/ip_forward
##################################################################
# 4.1 Filter Table
##################################################################
#################################################################
# 4.1.4 INPUT chain
#################################################################
#######################################################
# 4.1.5 FORWARD chain
#######################################################
# MAIL server
# for SMTP 25 from INTERNET / TO INTERNET
$IPTABLES -A FORWARD -p TCP -i $INET_IFACE -o $DMZ_IFACE -d $DMZ_HTTP_IP --dport 25 -j ACCEPT
$IPTABLES -A FORWARD -p TCP -i $DMZ_IFACE -o $INET_IFACE -d 0/0 -j ACCEPT
# for SMTP 25 from LAN
$IPTABLES -A FORWARD -p TCP -i $LAN_IFACE -s $LAN_RANGE -d $DMZ_HTTP_IP --dport 25 -j ACCEPT
# для POP3 110 из LAN
$IPTABLES -A FORWARD -p TCP -i $LAN_IFACE -s $LAN_RANGE -d $DMZ_HTTP_IP --dport 110 -j ACCEPT
##########################################################
# 4.1.6 OUTPUT chain
##########################################################
# PREROUTING chain
# MAIL server
$IPTABLES -t nat -A PREROUTING -p TCP -i $INET_IFACE -d $INET_IP --dport 25 -j DNAT --to-destination $DMZ_HTTP_IP
# POSTROUTING chain
$IPTABLES -t nat -A POSTROUTING -o $INET_IFACE -j SNAT --to-source $INET_IP
Подскажите, где накосячил?
Re: Настройка iptables для начинающих.
Интересно, а имеется ли какая либо веб-морда для настройки правил iptables?
Re: Настройка iptables для начинающих.
подскажите пожалуйста такую вещь
выполняю такое
iptables -t nat -A PREROUTING -p tcp --destination-port 5190 -j REDIRECT --to-ports 16667
iptables -t nat -A POSTROUTING -s 192.168.0.0/255.255.255.0 -p tcp -m tcp --dport 5190 -j MASQUERADE
вроде всё ок но потом смотрю -list и нифига не добавляется
выполняю такое
iptables -t nat -A PREROUTING -p tcp --destination-port 5190 -j REDIRECT --to-ports 16667
iptables -t nat -A POSTROUTING -s 192.168.0.0/255.255.255.0 -p tcp -m tcp --dport 5190 -j MASQUERADE
вроде всё ок но потом смотрю -list и нифига не добавляется
Re: Настройка iptables для начинающих.
Вложение отошло в лучший мир, может быть кто поделится последней актуальной версией скрипта? проект на source forge я так понял так и не появился
- sspphheerraa
- Сообщения: 1375
- ОС: Gentoo
Re: Настройка iptables для начинающих.
да, а все потому что универсального нету... каждому прийдется писать под себя самому
пробегись по теме, собери все описанные здесь правила, удали ненужные, допиши свои нужные,
пробуй экспериментируй
пробегись по теме, собери все описанные здесь правила, удали ненужные, допиши свои нужные,
пробуй экспериментируй
Sspphheerraa
Re: Настройка iptables для начинающих.
sspphheerraa писал(а): ↑03.12.2009 21:56да, а все потому что универсального нету... каждому прийдется писать под себя самому
пробегись по теме, собери все описанные здесь правила, удали ненужные, допиши свои нужные,
пробуй экспериментируй
Ну в общем то не раз говорилось, что это не попытка сделать универсальное решение, а помочь начинающим. Не поверите, но я сам иногда смотрю в свои скрипты, особенно когда iptables долго не трогаешь. На текущий момент есть мысли переписать скрипт, пересмотреть и вообще перебрать и вернуть ветку к жизни.
На текущий момент как всегда проблема одна,нет время хотя я его попытаюсь все таки найти.
Чтение man'нов в слух ещЁ никому не помогало!...
kernel 4.2
chmod -x `which chmod`
War, war never changes...
kernel 4.2
chmod -x `which chmod`
War, war never changes...
Re: Настройка iptables для начинающих.
Очень спорный вопрос, помнится он уже обсуждался.
На текущий момент я склонен все же к DROP, так как это стандарт.
Чтение man'нов в слух ещЁ никому не помогало!...
kernel 4.2
chmod -x `which chmod`
War, war never changes...
kernel 4.2
chmod -x `which chmod`
War, war never changes...
- sspphheerraa
- Сообщения: 1375
- ОС: Gentoo
Re: Настройка iptables для начинающих.
ну REJECT - это по сути "DROP с ответом", т.е. к примеру, при син-флуде нагрузка на netfilter будет выше
Sspphheerraa
Re: Настройка iptables для начинающих.
sspphheerraa писал(а): ↑23.12.2009 20:00ну REJECT - это по сути "DROP с ответом", т.е. к примеру, при син-флуде нагрузка на netfilter будет выше
Ну оно и понятно, так что DROP +)
Но опять же, каждый может поменять на все что ему хочется.
P.S Старый скрипт в UTF8
P.P.S На текущий момент принимаются пожелания на тему скрипта. Так же у меня есть мысли подогнать под формат iptables-save, но это пока что мысли.
- Вложения
-
- rc.fw.zip
- (3.88 КБ) 343 скачивания
Чтение man'нов в слух ещЁ никому не помогало!...
kernel 4.2
chmod -x `which chmod`
War, war never changes...
kernel 4.2
chmod -x `which chmod`
War, war never changes...
Re: Настройка iptables для начинающих.
Прошу помощи.Есть сервер на CentOs 5.4, одна сетевая, провайдер выделил 4 статических IP. Стоят стандартные службы - nginx+apache, sshd, sendmail,dovecot,vsftpd,bind,mysql,spamassasin + ISPManager - вообщем вэбсервер+мыло- я так понимаю сейчас на нем правила iptables - всё открыть. Хотелось бы всё закрыть, оставив открытым только необходимые для работы порты. Также хочется поменять порт ssh на другой(идет постоянный брутфорс на 22 порт) и сделать на всякий случай пожарный задний ход - резрешить всё с определенного IP, т.к. сервер удаленный и если чото не так настроить можно доступ потерять полностью. Я в линуксе новичок и очень тяжело самостоятельно разобраться с налёта со всеми этими вопросами, если возможно затюнить скрипт под мои вопросы - убрать лишнее и добавить, что необходимо - чтобы можно было самому остаток проанализировать и понять. Сейчас в скрипте есть моменты, которые мне вроде как и не нужны вроде NAT и т.д., а может и нужны - стирать боязно. Спасибо!
Re: Настройка iptables для начинающих.
Нет проблем, в Centos есть штатная утилита в консоли, необязательно использовать скрипт (как называется не скажу, так как под руками нет centos, но гугл - он такой, он все знает)
Нет проблем, это настраивается в конфигах openssh, iptables тут вообще не нужен. Опять таки, насколько я помню, можно задать через консольную утилиту в Centos, на каком порту висит ssh.
antuanett писал(а): ↑12.01.2010 09:45Я в линуксе новичок и очень тяжело самостоятельно разобраться с налёта со всеми этими вопросами, если возможно затюнить скрипт под мои вопросы - убрать лишнее и добавить, что необходимо - чтобы можно было самому остаток проанализировать и понять. Сейчас в скрипте есть моменты, которые мне вроде как и не нужны вроде NAT и т.д., а может и нужны - стирать боязно. Спасибо!
Если вы новичок, то странно, что вам доверили такую систему, хотя - это не мое дело.
Есть несколько путей развития:
1) настроить похожую систему отдельно, которую не жалко будет убить (или сделать копию с текущий) - и тренироватся
2) Использовать штатные средства centos для управление firewall
3) использовать другие средства для настройки, например shorewall (если мы говорим про сервер без GUI)
Делать скрипт под вас, за просто так врятли кто то будет.
Чтение man'нов в слух ещЁ никому не помогало!...
kernel 4.2
chmod -x `which chmod`
War, war never changes...
kernel 4.2
chmod -x `which chmod`
War, war never changes...
Re: Настройка iptables для начинающих.
Спасибо за ответ. Я просто посмотрел на скрипт и решил, что большинство моих вопросов он решает. Про защиту от брут форса - я думаю это многим было бы интересно, я видел в интернете такие решения на iptables, которые автоматом забанивали атакующие IP. Поменять то в ssh порт не проблема, главное чтоб он открыт был в файрволе, вот не могу понять будет ли достаточно в Вашем скрипте поменять 22 на чтонить вроде 32032...
Re: Настройка iptables для начинающих.
antuanett писал(а): ↑14.01.2010 16:23Спасибо за ответ. Я просто посмотрел на скрипт и решил, что большинство моих вопросов он решает. Про защиту от брут форса - я думаю это многим было бы интересно, я видел в интернете такие решения на iptables, которые автоматом забанивали атакующие IP. Поменять то в ssh порт не проблема, главное чтоб он открыт был в файрволе, вот не могу понять будет ли достаточно в Вашем скрипте поменять 22 на чтонить вроде 32032...
на текущий момент защита состоит
1) смена порта (это только силами openssh)
2) использование denyhosts
3) блокировка через iptables (как в нашем скрипте)
если вы думаете использовать скрипт, и уже изменили на сервере порт ssh, то вам достаточно будет поменять порт в скрипте.
Чтение man'нов в слух ещЁ никому не помогало!...
kernel 4.2
chmod -x `which chmod`
War, war never changes...
kernel 4.2
chmod -x `which chmod`
War, war never changes...
Re: Настройка iptables для начинающих.
TuLiss писал(а): ↑14.01.2010 18:07antuanett писал(а): ↑14.01.2010 16:23Спасибо за ответ. Я просто посмотрел на скрипт и решил, что большинство моих вопросов он решает. Про защиту от брут форса - я думаю это многим было бы интересно, я видел в интернете такие решения на iptables, которые автоматом забанивали атакующие IP. Поменять то в ssh порт не проблема, главное чтоб он открыт был в файрволе, вот не могу понять будет ли достаточно в Вашем скрипте поменять 22 на чтонить вроде 32032...
на текущий момент защита состоит
1) смена порта (это только силами openssh)
2) использование denyhosts
3) блокировка через iptables (как в нашем скрипте)
если вы думаете использовать скрипт, и уже изменили на сервере порт ssh, то вам достаточно будет поменять порт в скрипте.
Примерно понятно. Необходимые порты надо добавить в список разрешенных, остальные закрывает скрипт - это касается и ssh и smtp,например когда надо добавить порт 2525 для почты.Но вот в скрипте не увидел 3306 -порт MySQL, открывать его или закрывать? Ведь локальные сервисы к нему тоже стучатся изнутри по этому порту... А как модифицировать скрипт, если сетевых интерфеймов несколько. Вот у меня например на сервере сетевуха одна, но к ней привязаны 4 IP-адреса?
Re: Настройка iptables для начинающих.
Изучите iptables. Скрипт не готовое решение для всех, а некая подсказка.
Если вы обратите внимание, то в скрипте мы разрешает lo интервейс. Так, что проблем с 127.0.0.1 нету.
Все очень просто, посмотрите любую справку по iptables
Чтение man'нов в слух ещЁ никому не помогало!...
kernel 4.2
chmod -x `which chmod`
War, war never changes...
kernel 4.2
chmod -x `which chmod`
War, war never changes...
Re: Настройка iptables для начинающих.
На текущий момент, я пересматриваю скрипт. Некоторые правила наверно будут временно удалены, что-то добавлено.
На текущий момент скрипт будет разделен на несколько зон.
# Зона переменных
# Правила по умолчанию (полная очистка iptables + установка в DROP)
# Защита
# Зона NAT (Частая и больная тема)
# Общие правила
# Правила для входящего трафика
# Правила для исходящего трафика
# Проброска портов и IP адресов
Так же есть мысли создать некую DMZ зону из машины, но - это пока да же в мыслях не складывается - как сделать универсально.
На текущий момент скрипт будет разделен на несколько зон.
# Зона переменных
# Правила по умолчанию (полная очистка iptables + установка в DROP)
# Защита
# Зона NAT (Частая и больная тема)
# Общие правила
# Правила для входящего трафика
# Правила для исходящего трафика
# Проброска портов и IP адресов
Так же есть мысли создать некую DMZ зону из машины, но - это пока да же в мыслях не складывается - как сделать универсально.
Чтение man'нов в слух ещЁ никому не помогало!...
kernel 4.2
chmod -x `which chmod`
War, war never changes...
kernel 4.2
chmod -x `which chmod`
War, war never changes...
Re: Настройка iptables для начинающих.
Дайте скриптик А то в первом посте я его не нашел, можт искать не умею?... Как раз сейчас очень нужен мне
Re: Настройка iptables для начинающих.
Haxver писал(а): ↑21.01.2007 13:13Вот, нашел сервис в инете, который генерирует правила в зависимости от того, что вам нужно.
http://easyfwgen.morizot.net
Сервис в инете использовать не обязательно.
Достаточно скачать архив с программой и запустить в любом браузере локально.
Вот это я считаю правильный подход. В этой ветке тоже нужно все обобщить и написать программу в PHP как это сделал создатель " Easy Firewall Generator for IPTables". Потом всем использовать ее и о всех багах сообщать в эту ветку. Может за базу и взять его программу. Последняя версия его программы 1.17
от 05/11/2005. Если бы была свежая то и вопросов бы не возникало по IPTABLES.
Re: Настройка iptables для начинающих.
подскажите, какие порты открывать, если у меня сайт торрент трекера висит?
в админке стоит 80 порт, который у меня открыт. но если включить файрволл, статистика по общей скорости всех раздач пропадает
и закачки проходят труднее
в админке стоит 80 порт, который у меня открыт. но если включить файрволл, статистика по общей скорости всех раздач пропадает
и закачки проходят труднее