Darth Emil Опубликовано 7 декабря, 2011 Жалоба Поделиться Опубликовано 7 декабря, 2011 (изменено) Добрый день. Помогите пожалуйста с настройками фаервола. Итак, дано: Прокси-сервер на базе ASPLinux 14, он же DNS, DHCP. Обеспечивает выход в интернет из нескольких подсетей: 192.168.0.x, 192.168.255.x, 192.168.1.x, 192.168.4.x, 192.168.28.x, 192.168.8.x. Нужно открыть порты 10443,8001,62223,62224 и доступ к адресу 178.89.0.2:15000. Т.е. чтобы через эти порты можно было работать с Oracle. Помогите пожалуйста! Вот текущие настройки iptables-save: # Generated by iptables-save v1.3.5 on Wed Dec 7 09:58:12 2011*mangle :PREROUTING ACCEPT [47357411:29875208382] :INPUT ACCEPT [40478432:27084408607] :FORWARD ACCEPT [6841783:2786403235] :OUTPUT ACCEPT [38410739:27551980581] :POSTROUTING ACCEPT [45164006:30330280525] COMMIT # Completed on Wed Dec 7 09:58:12 2011 # Generated by iptables-save v1.3.5 on Wed Dec 7 09:58:12 2011 *filter :INPUT ACCEPT [40478432:27084408607] :FORWARD ACCEPT [6841783:2786403235] :OUTPUT ACCEPT [38319713:27543758736] -A INPUT -p tcp -m tcp --dport 10443 -j ACCEPT -A INPUT -p tcp -m tcp --dport 8001 -j ACCEPT -A INPUT -p tcp -m tcp --dport 62223 -j ACCEPT -A INPUT -p tcp -m tcp --dport 62224 -j ACCEPT -A INPUT -p tcp -m tcp --dport 62224 -j ACCEPT -A INPUT -p tcp -m tcp --dport 8001 -j ACCEPT -A INPUT -p tcp -m tcp --dport 8001 -j ACCEPT -A INPUT -d 192.168.0.0/255.255.255.0 -p tcp -m tcp --dport 8001 -j ACCEPT -A INPUT -p tcp -m tcp --dport 15000 -j ACCEPT -A INPUT -p tcp -m state --state NEW -m tcp --dport 15000 -j ACCEPT -A FORWARD -d 192.168.0.6 -i eth0 -p tcp -m tcp --dport 80 -j ACCEPT -A FORWARD -d 192.168.0.6 -i eth0 -p tcp -m tcp --dport 2022 -j ACCEPT -A OUTPUT -p tcp -m tcp --dport 62224 -j ACCEPT -A OUTPUT -p tcp -m tcp --dport 62223 -j ACCEPT -A OUTPUT -p tcp -m tcp --dport 8001 -j ACCEPT -A OUTPUT -p tcp -m tcp --dport 10443 -j ACCEPT COMMIT # Completed on Wed Dec 7 09:58:12 2011 # Generated by iptables-save v1.3.5 on Wed Dec 7 09:58:12 2011 *nat :PREROUTING ACCEPT [1301377:74722509] :POSTROUTING ACCEPT [1598832:93389347] :OUTPUT ACCEPT [1108426:67538760] -A PREROUTING -s 192.168.0.0/255.255.0.0 -d ! 192.168.0.0/255.255.0.0 -p tcp -m multiport --dports 80 -j REDIRECT --to-ports 3128 -A PREROUTING -d 80.241.1.3 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.0.6:80 -A PREROUTING -d 80.241.1.3 -p tcp -m tcp --dport 2022 -j DNAT --to-destination 192.168.0.6:2022 -A POSTROUTING -s 192.168.0.0/255.255.0.0 -o eth1 -p tcp -m multiport --dports 15000 -j SNAT --to-source 178.89.0.2 -A POSTROUTING -s 192.168.0.0/255.255.0.0 -d ! 192.168.0.0/255.255.0.0 -p tcp -m multiport --dports 110,25,443 -j MASQUERADE COMMIT # Completed on Wed Dec 7 09:58:12 2011 iptables -L: Chain INPUT (policy ACCEPT)target prot opt source destination ACCEPT tcp -- anywhere anywhere tcp dpt:10443 ACCEPT tcp -- anywhere anywhere tcp dpt:vcom-tunnel ACCEPT tcp -- anywhere anywhere tcp dpt:62223 ACCEPT tcp -- anywhere anywhere tcp dpt:62224 ACCEPT tcp -- anywhere anywhere tcp dpt:62224 ACCEPT tcp -- anywhere anywhere tcp dpt:vcom-tunnel ACCEPT tcp -- anywhere anywhere tcp dpt:vcom-tunnel ACCEPT tcp -- anywhere 192.168.0.0/24 tcp dpt:vcom-tunnel ACCEPT tcp -- anywhere anywhere tcp dpt:hydap ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:hydap Chain FORWARD (policy ACCEPT) target prot opt source destination ACCEPT tcp -- anywhere oo.ssn.kz tcp dpt:http ACCEPT tcp -- anywhere gz.ssn.kz tcp dpt:down Chain OUTPUT (policy ACCEPT) target prot opt source destination ACCEPT tcp -- anywhere anywhere tcp dpt:62224 ACCEPT tcp -- anywhere anywhere tcp dpt:62223 ACCEPT tcp -- anywhere anywhere tcp dpt:vcom-tunnel ACCEPT tcp -- anywhere anywhere tcp dpt:10443 Жирным выделены мои изыски, которые не работают. И вообще, я не понял где искать настройки iptables? В /etc/sysconfig/iptables и /etc/sysconfig/iptables-config нету ничего этого! Откуда он берет настройки? Изменено 7 декабря, 2011 пользователем Darth Emil Ссылка на комментарий Поделиться на другие сайты Поделиться
kvazimoda Опубликовано 7 декабря, 2011 Жалоба Поделиться Опубликовано 7 декабря, 2011 (изменено) @Darth Emil, смотри, во-первых, у тебя стоит првило по-умолчанию всех пропускать *filter :INPUT ACCEPT [40478432:27084408607] :FORWARD ACCEPT [6841783:2786403235] :OUTPUT ACCEPT [38319713:27543758736] Соответственно, дальше все твои правила не имеют никакого смысла, т.к. у тебя правила только разрешающие, а и так всё разрешено. Во-вторых, чтобы работал форвардинг, надо включить эту функцию в ядре, для этого надо прописать в файле /etc/sysctl.conf строку: net.ipv4.ip_forward = 1 А вообще, прочитай вот это, мне в своё время очень здорого помогло. Откуда берёт настройки твой конкретный дистрибутив не знаю, я сталкивался с тем, что настройки хранятся в /etc/default/iptables, /var/lib/iptables, /etc/sysconfig/iptables можно попробовать дать поиск по содержимому. Можно ещё посмотреть что прописано в самом файле, который применяет настройки, обычно он оформлен в виде демона и сидит в /etc/init.d И ещё, если у тебя включен фаирвол встроенный в дистрибутив, я имею ввиду какая-то графическая приблуда, то его надо отключить и прописывать правила уже туда, куда ссылается файл из /etc/init.d Изменено 7 декабря, 2011 пользователем kvazimoda Ссылка на комментарий Поделиться на другие сайты Поделиться
bagas Опубликовано 9 марта, 2012 Жалоба Поделиться Опубликовано 9 марта, 2012 Посмотреть настрйоки можно тут. # cat /var/lib/iptables/rules-save А если так. -A INPUT -p tcp -i eth0 -m multiport --dport 10443,8001,62223,62224 -j ACCEPT Если ты собираешься фарвордить пакеты. то. -A FORWARD -s 192.168.1.0/24 -d 178.89.0.2 -p tcp --dport 15000 -j ACCEPT тут пакеты с сети 192.168.,, уходят на сеть 178.89.с портом 15000 , разрешаем. Вообще посомтри вот тут несколько примеров. http://likeunix.ru/category/linux/gentoo-linux/net-gentoo-linux/iptables-linux/ Ссылка на комментарий Поделиться на другие сайты Поделиться
Bogus Опубликовано 24 января, 2014 Жалоба Поделиться Опубликовано 24 января, 2014 Всем привет. Зразу скажу что я нуб, что я всего 4 день как дорвался до ВПС сервака на котором пытаюсь поднять хост для своих сайтов. Суть да дело ... конфигурирую по статьям из инета iptables (сервак на CENTOS 6) на данный момент содержимое iptables такое *filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] :RH-Firewall-1-INPUT - [0:0] -A INPUT -j RH-Firewall-1-INPUT -A FORWARD -j RH-Firewall-1-INPUT -A RH-Firewall-1-INPUT -i lo -j ACCEPT -A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT -A RH-Firewall-1-INPUT -p udp --dport 5353 -d 224.0.0.251 -j ACCEPT -A RH-Firewall-1-INPUT -p udp -m udp --dport 53 -j ACCEPT -A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 1503 -j ACCEPT -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 53 -j ACCEPT #-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited #LOG & DROP -A RH-Firewall-1-INPUT -j LOG -A RH-Firewall-1-INPUT -j DROP #LOG & DROP SPOOFING -A INPUT -i eth0 -s 10.0.0.0/8 -j LOG --log-prefix "IP DROP SPOOF " -A INPUT -i eth0 -s 172.16.0.0/12 -j LOG --log-prefix "IP DROP SPOOF " -A INPUT -i eth0 -s 192.168.0.0/16 -j LOG --log-prefix "IP DROP SPOOF " -A INPUT -i eth0 -s 224.0.0.0/4 -j LOG --log-prefix "IP DROP MULTICAST " -A INPUT -i eth0 -s 240.0.0.0/5 -j LOG --log-prefix "IP DROP SPOOF " -A INPUT -i eth0 -d 127.0.0.0/8 -j LOG --log-prefix "IP DROP LOOPBACK " -A INPUT -i eth0 -s 169.254.0.0/16 -j LOG --log-prefix "IP DROP MULTICAST " -A INPUT -i eth0 -s 0.0.0.0/8 -j LOG --log-prefix "IP DROP " -A INPUT -i eth0 -s 240.0.0.0/4 -j LOG --log-prefix "IP DROP " -A INPUT -i eth0 -s 255.255.255.255/32 -j LOG --log-prefix "IP DROP " -A INPUT -i eth0 -s 168.254.0.0/16 -j LOG --log-prefix "IP DROP " -A INPUT -i eth0 -s 248.0.0.0/5 -j LOG --log-prefix "IP DROP " #OPEN PORT -A INPUT -p tcp -m multiport --dports 80,443 -j ACCEPT COMMIT по идее как я понимаю фаеврол ничего блокировать ваще не должен так как :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] :RH-Firewall-1-INPUT - [0:0] но при выполнении команды service iptables start закрывается даже 80 порт (поправьте если ошибаюсь но по дефолту страницы по хттп открываются по порту 80?), и это при том что есть строка -A INPUT -p tcp -m multiport --dports 80,443 -j ACCEPT - в которой вроде 80 порт открыт. пробовал и так открывать 80 порт -A RH-Firewall-1-INPUT -m tcp -p tcp --dport 80 -j ACCEPT итог такой же .... если кому не трудно, разжуйте де что не так, я уже начинаю уставать от этой проблемки =) Ссылка на комментарий Поделиться на другие сайты Поделиться
kvazimoda Опубликовано 25 января, 2014 Жалоба Поделиться Опубликовано 25 января, 2014 (изменено) Приведите вывод команды iptables-save после выполнения service iptables start. А, хотя, не надо, нашёл косяк :) Смотри, правила в iptables перебираются по порядку, пока не будет выполнено какое-то действие с обрабатываемым пакетом (ACCEPT, DROP или REJECT), если никакого действия в цепочке не применилось, то выполняется действие по умолчанию. Смотрим твои правила: Первое правила в цепочке INPUT: -A INPUT -j RH-Firewall-1-INPUT Т.е. все входящие пакеты направляются в цепочку RH-Firewall-1-INPUT. Если там к пакету не будет применено никакое действие, то он вернётся в цепочку INPUT. Смотрим цепочку RH-Firewall-1-INPUT: -A RH-Firewall-1-INPUT -i lo -j ACCEPT-A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT-A RH-Firewall-1-INPUT -p udp --dport 5353 -d 224.0.0.251 -j ACCEPT-A RH-Firewall-1-INPUT -p udp -m udp --dport 53 -j ACCEPT-A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 1503 -j ACCEPT-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 53 -j ACCEPT-A RH-Firewall-1-INPUT -j LOG-A RH-Firewall-1-INPUT -j DROP Т.е. ты пропускаешь покеты с интерфейса обратной петли, пинги, 5353 и 53 порты по протоколу UDP, пакеты, которые пришли уже по установленному соединению и только новые пакеты (инициирующие соединение) по портам 53 и 1503 по протоколу TCP. Всё остальное ты дропаешь. Т.е. всё, что у тебя ниже написано в цепочке INPUT, не имеет никакого смысла, т.к. пакеты не доходят до тех правил, они дропаются раньше. По идее, тебе надо добавить -A RH-Firewall-1-INPUT -m tcp -p tcp --dport 80 -j ACCEPT до -A RH-Firewall-1-INPUT -j DROP Изменено 25 января, 2014 пользователем kvazimoda Ссылка на комментарий Поделиться на другие сайты Поделиться
Bogus Опубликовано 25 января, 2014 Жалоба Поделиться Опубликовано 25 января, 2014 вооооу :1eye: как всегда накосячил в элементарном ..... хотя тут еще криво статья походу написана ибо там описано так Чтобы открыть порт 80 (HTTP-сервер), добавьте следующие линии до COMMIT -A RH-Firewall-1-INPUT -m tcp -p tcp --dport 80 -j ACCEPT я же как несведующий краб именно тк и сделал :animal_rooster: так как хотелось хоть как то решить, пока решил путем избавления от цени RH-Firewall-1-INPUT, но теперь :arf2: блин полезу ее РРРозвращать :arf2: пока что спасибо, чуть позже отпишусь Ссылка на комментарий Поделиться на другие сайты Поделиться
kvazimoda Опубликовано 25 января, 2014 Жалоба Поделиться Опубликовано 25 января, 2014 (изменено) @Bogus, я выше давал ссылку на нормальную статью, по которой сам учился: А вообще, прочитай вот это, мне в своё время очень здорого помогло. Изменено 25 января, 2014 пользователем kvazimoda Ссылка на комментарий Поделиться на другие сайты Поделиться
Bogus Опубликовано 26 января, 2014 Жалоба Поделиться Опубликовано 26 января, 2014 @Bogus, я выше давал ссылку на нормальную статью, по которой сам учился: А вообще, прочитай вот это, мне в своё время очень здорого помогло. да, это страница у меня ест ьв закладках, просто сейчас ограничено время, срочно надо валить от хостеров на свой VPS. В дальнейших планах, докупить отдельный VPS чисто для учебы и тестов .... так что ... перееду и начну основательно осваивать и путем проб и ошибок (на учебном серваке) править свой хост. Подымать виртуалку не хочу, так как там реальных атак по серверу не будет ... а хочется наживо все видеть и со всем поковыряться. =) все пошел цепь фаервола ковырять, ато выходные, семья =) все не до инета =) Ссылка на комментарий Поделиться на другие сайты Поделиться
Bogus Опубликовано 26 января, 2014 Жалоба Поделиться Опубликовано 26 января, 2014 и так, прочитав умных людей =) и приложив мозг и логику цепь фаервола таки поддалась =) спасибо товарищу Квазимоде =) но есть еще вопрос =) в продолжение =) Во-первых необходимо установить временной интервал между попытками подключения. К примеру 10 секунд. Что не создаст проблем пользователю, но существенно уменьшит производительность брута. Во-вторых увеличим тайм-аут еще больше (для конкретного адреса), после нескольких неудачных попыток подключения. То есть если выявляется явный перебор паролей, то подключение с такого IP блокируются межсетевым экраном на длительное время. К примеру на час. никак не на гуглю как увеличить данные таймауты .... уже ощущение что я гуглить разучился Ссылка на комментарий Поделиться на другие сайты Поделиться
kvazimoda Опубликовано 27 января, 2014 Жалоба Поделиться Опубликовано 27 января, 2014 @Bogus, к чему относится данная цитата? Ссылка на комментарий Поделиться на другие сайты Поделиться
Bogus Опубликовано 27 января, 2014 Жалоба Поделиться Опубликовано 27 января, 2014 к авторизации на сервере =) прощу прощение за неточность =) Ссылка на комментарий Поделиться на другие сайты Поделиться
kvazimoda Опубликовано 27 января, 2014 Жалоба Поделиться Опубликовано 27 января, 2014 @Bogus, блин, на каком сервере?! Какой авторизации?! На всякий случай, определение слова сервер. Ссылка на комментарий Поделиться на другие сайты Поделиться
Bogus Опубликовано 28 января, 2014 Жалоба Поделиться Опубликовано 28 января, 2014 @Bogus, блин, на каком сервере?! Какой авторизации?! На всякий случай, определение слова сервер. сервер под управлением Centos6. Вопрос все относится к авторизации по SSH. То есть нужно сделать паузу между попытками ввести пароль для входа на сервере, и паузу для особо неудачливых подбирателей =) Ссылка на комментарий Поделиться на другие сайты Поделиться
kvazimoda Опубликовано 29 января, 2014 Жалоба Поделиться Опубликовано 29 января, 2014 (изменено) @Bogus, я у себя сделал на самом iptables. Выдержка из правил: -A INPUT -p tcp -m tcp --dport 22 -m state --state NEW -m recent --set --name SSH --rsource -A INPUT -p tcp -m recent --update --seconds 1800 --hitcount 11 --name SSH --rsource -j DROP Т.е. iptables смотрит, если приходит пакет устанавливающий соединение по 22 порту, то IP адрес добавляется в список SSH и увеличивается счётчик таких пакетов. Дальше, если количество таких пакетов превысило 11 штук, то пакеты с этого IP начинают дропаться. Каждые 1800 секунд счётчик уменьшается на один. По умолчанию SSH даёт три попытки ввести пароль. Мы можем 11 раз подключиться за полчаса. Т.е. за первые полчаса атакующий может попробовать 33 пароля, потом по 3 пароля каждые полчаса. Ты можешь выставить настройки так, как считаешь нужным. Но учти, что можешь и сам в бан попасть, если несколько раз неправильно введёшь пароль :) У меня иногда такое случается, когда рвётся соединение, а потом клиент долго пытается подключиться. Приходится заходить с другого IP и удалять свой адрес из списка. P.S.: Забыл сказать, что даже те пакеты, которые дропаются, они всё равно увеличивают счётчик. Т.е. если клиент продолжает долбиться по 22 порту, то он себе каждым таким долблением откладывает попытку на полчаса. Изменено 29 января, 2014 пользователем kvazimoda Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать учетную запись
Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти