Настройка iptables
Модератор: weec
Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
- лейтенант
- Сообщения: 751
- Зарегистрирован: 2008-07-15 16:11:11
Настройка iptables
Linux не использую вообще, но надо настроить простенькое правило в iptales: запретить все соеденения, разрешить только с моего IP.
Подскажите как сделать, а то даже протестировать негде
Подскажите как сделать, а то даже протестировать негде
Услуги хостинговой компании Host-Food.ru
Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
- Graf
- сержант
- Сообщения: 205
- Зарегистрирован: 2008-10-29 18:44:32
- Контактная информация:
Re: Настройка iptables
из от куда и куда? все порты и протоколы?icb писал(а):Linux не использую вообще, но надо настроить простенькое правило в iptales: запретить все соеденения, разрешить только с моего IP.
Подскажите как сделать, а то даже протестировать негде
С кем поведешься - так тебе и надо!
http://slackware.su
http://slackware.su
-
- лейтенант
- Сообщения: 751
- Зарегистрирован: 2008-07-15 16:11:11
Re: Настройка iptables
Закрыть доступ от всех (по всем протоколам), кроме доступа с моего IP.из от куда и куда? все порты и протоколы?
Нагуглил такое решение:
Код: Выделить всё
iptables -P INPUT DROP
iptables -A INPUT --source 192.168.1.2 -j ACCEPT
- Graf
- сержант
- Сообщения: 205
- Зарегистрирован: 2008-10-29 18:44:32
- Контактная информация:
Re: Настройка iptables
вроде не жарко, но чет недопонимаю.... уж сорри
т.е. есть некий комп (допустим с IP - 192.168.1.1), выхода в инет с этого компа нет, надо разрешить IP - 192.168.1.2 доступ к этому компу(192.168.1.1), а все остальные идут лесом, так?
а сам комп (192.168.1.1) куданить ходить может (должен), или он только для 192.168.1.2 будет работать? Логи вести надо?
т.е. есть некий комп (допустим с IP - 192.168.1.1), выхода в инет с этого компа нет, надо разрешить IP - 192.168.1.2 доступ к этому компу(192.168.1.1), а все остальные идут лесом, так?
а сам комп (192.168.1.1) куданить ходить может (должен), или он только для 192.168.1.2 будет работать? Логи вести надо?
С кем поведешься - так тебе и надо!
http://slackware.su
http://slackware.su
-
- лейтенант
- Сообщения: 751
- Зарегистрирован: 2008-07-15 16:11:11
Re: Настройка iptables
Почти. Наверное я зря использовал подсеть 192.168.x.x - она вводит в заблуждение.т.е. есть некий комп (допустим с IP - 192.168.1.1), выхода в инет с этого компа нет, надо разрешить IP - 192.168.1.2 доступ к этому компу(192.168.1.1), а все остальные идут лесом, так?
Вот более развернуто: есть хост 111.111.111.111 (IP взят для примера), подключен к интернету (colocation). На нем запущено несколько сервисов (SSH, HTTP, VNC и т.п.).
Я хочу: чтобы с моего IP (222.222.222.222) я мог обращаться ко всем сервисам этого хоста, а другие IP не имели доступа к нему.
Сам хост (комп) ходить может. Логи нужны (если сложности - можно и без них).а сам комп (192.168.1.1) куданить ходить может (должен), или он только для 192.168.1.2 будет работать? Логи вести надо?
P.S. Это я пытаюсь защитить IPMI.
- Graf
- сержант
- Сообщения: 205
- Зарегистрирован: 2008-10-29 18:44:32
- Контактная информация:
Re: Настройка iptables
как-то так..., если я все правильно понял.
Код: Выделить всё
#!/bin/sh
iptables --flush
clear
INET_IP="111.111.111.111"
INET_IFACE="eth1"
# Какой IP смотрит в локалку, если есть
LAN_IP="192.168.1.1"
LAN_IP_RANGE="192.168.1.0/24"
LAN_IFACE="eth0"
LO_IFACE="lo"
LO_IP="127.0.0.1"
IPTABLES="iptables"
# Модули
/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
#
# Не обязательные
#
# /sbin/modprobe ipt_owner
/sbin/modprobe ipt_REJECT
# /sbin/modprobe ipt_MASQUERADE
# /sbin/modprobe ip_conntrack_ftp #
# /sbin/modprobe ip_conntrack_irc
# /sbin/modprobe ip_nat_ftp #
# /sbin/modprobe ip_nat_irc
# Если будет форвард
#
echo "1" > /proc/sys/net/ipv4/ip_forward
# Политики по умолчанию, т.е. не поддающие правилам уничтожаются
#
$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT DROP
$IPTABLES -P FORWARD DROP
$IPTABLES -N bad_tcp_packets
$IPTABLES -N allowed
$IPTABLES -N tcp_packets
$IPTABLES -N udp_packets
$IPTABLES -N icmp_packets
$IPTABLES -A bad_tcp_packets -p TCP --tcp-flags SYN,ACK SYN,ACK -m \
state --state NEW -j REJECT --reject-with tcp-reset
$IPTABLES -A bad_tcp_packets -p TCP ! --syn -m state --state NEW -j \
LOG --log-prefix "New not syn:"
$IPTABLES -A bad_tcp_packets -p TCP ! --syn -m state --state NEW -j DROP
$IPTABLES -A allowed -p TCP --syn -j ACCEPT
$IPTABLES -A allowed -p TCP -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A allowed -p TCP -j DROP
# тут пинги и прочие ICMP
$IPTABLES -A icmp_packets -p ICMP -s 0/0 --icmp-type 8 -j ACCEPT
$IPTABLES -A icmp_packets -p ICMP -s 0/0 --icmp-type 11 -j ACCEPT
# Открываем нужные порты, нужному IP
$IPTABLES -A INPUT -p TCP -s 222.222.222.222 -m multiport --port 443,21,22,53 -j ACCEPT
$IPTABLES -A INPUT -p UDP -s 222.222.222.222 -m multiport --port 80,53,123 -j ACCEPT
$IPTABLES -A INPUT -p TCP -m state --state RELATED -j ACCEPT
$IPTABLES -A INPUT -p ALL -i $LAN_IFACE -s $LAN_IP_RANGE -j ACCEPT
$IPTABLES -A INPUT -p ALL -i $LO_IFACE -s $LO_IP -j ACCEPT
$IPTABLES -A INPUT -p ALL -i $LO_IFACE -s $LAN_IP -j ACCEPT
$IPTABLES -A INPUT -p ALL -i $LO_IFACE -s $INET_IP -j ACCEPT
$IPTABLES -A INPUT -p ALL -s $LAN_IP_RANGE -d $LAN_IP -j ACCEPT
$IPTABLES -A INPUT -p ALL -d $INET_IP -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A INPUT -p TCP -i $INET_IFACE -j tcp_packets
$IPTABLES -A INPUT -p UDP -i $INET_IFACE -j udp_packets
$IPTABLES -A INPUT -p ICMP -i $INET_IFACE -j icmp_packets
$IPTABLES -A INPUT -m limit --limit 3/minute --limit-burst 3 -j LOG \
--log-level DEBUG --log-prefix "IPT INPUT packet died: "
#
# если надо форвардить (FORWARD)
#
$IPTABLES -A FORWARD -p TCP -j bad_tcp_packets
# тут пишем кого куда и по каким портам.
$IPTABLES -A FORWARD -m limit --limit 3/minute --limit-burst 3 -j LOG \
--log-level DEBUG --log-prefix "IPT FORWARD packet died: "
#
# OUTPUT
#
$IPTABLES -A OUTPUT -p TCP -j bad_tcp_packets
$IPTABLES -A OUTPUT -p ALL -s $LO_IP -j ACCEPT
$IPTABLES -A OUTPUT -p ALL -s $LAN_IP -j ACCEPT
$IPTABLES -A OUTPUT -p ALL -s $INET_IP -j ACCEPT
$IPTABLES -A OUTPUT -m limit --limit 3/minute --limit-burst 3 -j LOG \
--log-level DEBUG --log-prefix "IPT OUTPUT packet died: "
С кем поведешься - так тебе и надо!
http://slackware.su
http://slackware.su
-
- лейтенант
- Сообщения: 751
- Зарегистрирован: 2008-07-15 16:11:11
Re: Настройка iptables
Сложновато и многовато для простой задачи.как-то так...
Этими двумя строками я обойтись не смогу?
Код: Выделить всё
iptables -P INPUT DROP
iptables -A INPUT -s 222.222.222.222 -j ACCEPT
Код: Выделить всё
# /sbin/modprobe ip_tables
modprobe: could not parse modules.dep
# iptables -A INPUT -s 222.222.222.222 -j ACCEPT
iptables v1.2.11: Couldn't load target `standard':/lib/iptables/libipt_standard.so: cannot open shared object file: No such file or directory
- Graf
- сержант
- Сообщения: 205
- Зарегистрирован: 2008-10-29 18:44:32
- Контактная информация:
Re: Настройка iptables
Это для более подробного разъяснения (или, чтоб больше напугать ) http://www.opennet.ru/docs/RUS/iptablesicb писал(а):Сложновато и многовато для простой задачи.
Судя по тому, что выдало, уже нет.icb писал(а): Этими двумя строками я обойтись не смогу?Код: Выделить всё
iptables -P INPUT DROP iptables -A INPUT -s 222.222.222.222 -j ACCEPT
У тебя старое ядро со старым iptables, а уже 1.4.13 выложено http://www.netfilter.org/projects/iptab ... loads.html.
И скомпилировано оно у тебя без некоторых модулей.
Давай посмотрим на
Код: Выделить всё
# iptables -L
С кем поведешься - так тебе и надо!
http://slackware.su
http://slackware.su
- Graf
- сержант
- Сообщения: 205
- Зарегистрирован: 2008-10-29 18:44:32
- Контактная информация:
Re: Настройка iptables
P.S. Имхо, лучше правила составлять в скрипте, потомучто они в скрипте упорядочены как тебе надо и ты можешь проследить порядок прохождения пакета по цепочкам, а так как хочешь ты, ты просто добавляешь правило вконец цепочки, не отменяя и(или) удаляя старое. Искать где косяк, потом будет гораздо сложней.
С кем поведешься - так тебе и надо!
http://slackware.su
http://slackware.su
-
- лейтенант
- Сообщения: 751
- Зарегистрирован: 2008-07-15 16:11:11
Re: Настройка iptables
Обновить его я не могуУ тебя старое ядро со старым iptables
Согласен, но кроме этих 2 строк особо ничего в файле и не будет. Если точнее, тоИмхо, лучше правила составлять в скрипте, потомучто они в скрипте упорядочены как тебе надо и ты можешь проследить порядок прохождения пакета по цепочкам
Код: Выделить всё
#!/bin/sh
iptables --flush
iptables -P INPUT DROP
iptables -A INPUT -s 222.222.222.222 -j ACCEPT
- Graf
- сержант
- Сообщения: 205
- Зарегистрирован: 2008-10-29 18:44:32
- Контактная информация:
Re: Настройка iptables
И не надо, работает же без проблем.icb писал(а):Обновить его я не могуУ тебя старое ядро со старым iptables
дык ошибку же выдало, значит не сработает.icb писал(а):Согласен, но кроме этих 2 строк особо ничего в файле и не будет. Если точнее, тоИмхо, лучше правила составлять в скрипте, потомучто они в скрипте упорядочены как тебе надо и ты можешь проследить порядок прохождения пакета по цепочками вызов этого скрипта в кроне.Код: Выделить всё
#!/bin/sh iptables --flush iptables -P INPUT DROP iptables -A INPUT -s 222.222.222.222 -j ACCEPT
давай на iptables -L все же поглядим.Столкнулся со сложностями при вызове некоторых команд:Код: Выделить всё
# iptables -A INPUT -s 222.222.222.222 -j ACCEPT iptables v1.2.11: Couldn't load target `standard':/lib/iptables/libipt_standard.so: cannot open shared object file: No such file or directory
С кем поведешься - так тебе и надо!
http://slackware.su
http://slackware.su
-
- лейтенант
- Сообщения: 751
- Зарегистрирован: 2008-07-15 16:11:11
Re: Настройка iptables
Код: Выделить всё
# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
- Graf
- сержант
- Сообщения: 205
- Зарегистрирован: 2008-10-29 18:44:32
- Контактная информация:
Re: Настройка iptables
мдя...
двумя-тремя строками тут не обойтись.
запретить весь INPUT, кроме себя любимого нельзя.
да и для себя открывай только те порты, с которыми будешь работать, зачем тебе более 65 000 портов?
двумя-тремя строками тут не обойтись.
запретить весь INPUT, кроме себя любимого нельзя.
да и для себя открывай только те порты, с которыми будешь работать, зачем тебе более 65 000 портов?
С кем поведешься - так тебе и надо!
http://slackware.su
http://slackware.su
-
- лейтенант
- Сообщения: 751
- Зарегистрирован: 2008-07-15 16:11:11
Re: Настройка iptables
Что писать?двумя-тремя строками тут не обойтись.
Думал так прощеда и для себя открывай только те порты, с которыми будешь работать, зачем тебе более 65 000 портов?
- Graf
- сержант
- Сообщения: 205
- Зарегистрирован: 2008-10-29 18:44:32
- Контактная информация:
Re: Настройка iptables
запусти скрипт, тот, что я выше давал и смотри логи.icb писал(а):Что писать?двумя-тремя строками тут не обойтись.
С кем поведешься - так тебе и надо!
http://slackware.su
http://slackware.su
-
- лейтенант
- Сообщения: 751
- Зарегистрирован: 2008-07-15 16:11:11
Re: Настройка iptables
Полностью скрипт запускать не решаюсь: если часть правил не отработает, то я не получу доступ к серверу.запусти скрипт, тот, что я выше давал и смотри логи.
Так уже было - отработали правила DROP, а ACCEPT не отработали.
-
- ст. лейтенант
- Сообщения: 1375
- Зарегистрирован: 2010-02-05 0:21:40
Re: Настройка iptables
Поэтому надо написать скрипт, который сбрасывает все правила и полиси устанавливает в ACCEPT.icb писал(а):Полностью скрипт запускать не решаюсь: если часть правил не отработает, то я не получу доступ к серверу.запусти скрипт, тот, что я выше давал и смотри логи.
Так уже было - отработали правила DROP, а ACCEPT не отработали.
И этот скрипт в крон раз в час.
И потом спокойно играть. Если что не так, то максимум через час правила сбросятся.
Ну а далее... далее двух строчек мало. Нужно минимум 3.
Код: Выделить всё
#!/bin/sh
iptables -P INPUT DROP
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -s 222.222.222.222 -j ACCEPT
- Graf
- сержант
- Сообщения: 205
- Зарегистрирован: 2008-10-29 18:44:32
- Контактная информация:
Re: Настройка iptables
2icb
FiL писал(а): Поэтому надо написать скрипт, который сбрасывает все правила и полиси устанавливает в ACCEPT.
И этот скрипт в крон раз в час.
И потом спокойно играть. Если что не так, то максимум через час правила сбросятся.
Код: Выделить всё
#!/bin/sh
IPTABLES="/usr/sbin/iptables"
$IPTABLES -P INPUT ACCEPT
$IPTABLES -P FORWARD ACCEPT
$IPTABLES -P OUTPUT ACCEPT
$IPTABLES -t nat -P PREROUTING ACCEPT
$IPTABLES -t nat -P POSTROUTING ACCEPT
$IPTABLES -t nat -P OUTPUT ACCEPT
$IPTABLES -t mangle -P PREROUTING ACCEPT
$IPTABLES -t mangle -P OUTPUT ACCEPT
$IPTABLES -F
$IPTABLES -t nat -F
$IPTABLES -t mangle -F
$IPTABLES -X
$IPTABLES -t nat -X
$IPTABLES -t mangle -X
С кем поведешься - так тебе и надо!
http://slackware.su
http://slackware.su
-
- лейтенант
- Сообщения: 751
- Зарегистрирован: 2008-07-15 16:11:11
Re: Настройка iptables
Так проблемы именно в том, что ACCEPT правила не работают (похоже не нравится аргумент -j).Поэтому надо написать скрипт, который сбрасывает все правила и полиси устанавливает в ACCEPT.
Т.е. можно сколько угодно экспериментировать, но пока правила с ACCEPT не заработают - будет только отрубаться доступ (уже проверял пару раз).
Код: Выделить всё
$IPTABLES -P INPUT ACCEPT
.......
$IPTABLES -F
- Graf
- сержант
- Сообщения: 205
- Зарегистрирован: 2008-10-29 18:44:32
- Контактная информация:
Re: Настройка iptables
а из чего следует, что ACCEPT не срабатывает? т.е. есть некий вывод ошибки? можно взглянуть?icb писал(а):Так проблемы именно в том, что ACCEPT правила не работают (похоже не нравится аргумент -j).Поэтому надо написать скрипт, который сбрасывает все правила и полиси устанавливает в ACCEPT.
Т.е. можно сколько угодно экспериментировать, но пока правила с ACCEPT не заработают - будет только отрубаться доступ (уже проверял пару раз).
нет.icb писал(а):-F не отменит первое разрешение?Код: Выделить всё
$IPTABLES -P INPUT ACCEPT ....... $IPTABLES -F
Код: Выделить всё
# man iptables
..........
-F, --flush [chain]
Flush the selected chain (all the chains in the table if none is given). This is equivalent to deleting all the rules
one by one.
..........
-P, --policy chain target
Set the policy for the chain to the given target. See the section TARGETS for the legal targets. Only built-in (non-
user-defined) chains can have policies, and neither built-in nor user-defined chains can be policy targets.
...........
С кем поведешься - так тебе и надо!
http://slackware.su
http://slackware.su
-
- лейтенант
- Сообщения: 751
- Зарегистрирован: 2008-07-15 16:11:11
Re: Настройка iptables
а из чего следует, что ACCEPT не срабатывает? т.е. есть некий вывод ошибки? можно взглянуть?
Код: Выделить всё
# iptables -A INPUT -s 222.222.222.222 -j ACCEPT
iptables v1.2.11: Couldn't load target `standard':/lib/iptables/libipt_standard.so: cannot open shared object file: No such file or directory
-
- ст. лейтенант
- Сообщения: 1375
- Зарегистрирован: 2010-02-05 0:21:40
Re: Настройка iptables
ты определись какую проблему мы тебе решаем - настройка правил фаера или сам факт, что у тебя фаер в принципе не работает?
Это две абсолютно разные, непересекающиеся проблемы. Судя по первому посту - мы тебе помогаем правила написать. А уж настроить систему, чтоб фаервол работал в принципе - это уже тема совершенно другого топика.
Это две абсолютно разные, непересекающиеся проблемы. Судя по первому посту - мы тебе помогаем правила написать. А уж настроить систему, чтоб фаервол работал в принципе - это уже тема совершенно другого топика.
- Hrafn
- сержант
- Сообщения: 239
- Зарегистрирован: 2007-08-18 15:25:57
- Откуда: Питер
- Контактная информация:
Re: Настройка iptables
ТС, конфиг фаера полностью покажите... а также если еще что-то касательно его настраивали
-
- лейтенант
- Сообщения: 751
- Зарегистрирован: 2008-07-15 16:11:11
Re: Настройка iptables
Проблема одна - запретить все соеденения, разрешить только с моего IP.ты определись какую проблему мы тебе решаем - настройка правил фаера или сам факт, что у тебя фаер в принципе не работает?
Сказать что iptables не работает нельзя - общие правила отрабатывают корректно. И выше было сказано:
Я сделал вывод, что в новой версии изменился формат правилGraf писал(а):И не надо, работает же без проблем.icb писал(а):Обновить его я не могуУ тебя старое ядро со старым iptables
Ничего не настраивал. Откуда оно взялось уже писал.конфиг фаера полностью покажите... а также если еще что-то касательно его настраивали
Конфига возможно вообще нет (не могу найти).
- Graf
- сержант
- Сообщения: 205
- Зарегистрирован: 2008-10-29 18:44:32
- Контактная информация:
Re: Настройка iptables
думаю, его вообще нет , ибоHrafn писал(а):ТС, конфиг фаера полностью покажите... а также если еще что-то касательно его настраивали
2icbicb писал(а):Код: Выделить всё
# iptables -L Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination
Покажи
Код: Выделить всё
# uname -a
С кем поведешься - так тебе и надо!
http://slackware.su
http://slackware.su