LINUX.ORG.RU
решено ФорумAdmin

Помогите, пожалуйста, составить правила iptables


0

1

Здравствуйте!

Помогите, пожалуйста, составить правила для iptables.
Решить вопрос самостоятельно на сегодняшний день не смогу в сжатые сроки. А по плану, нужно иметь грамотно составленные правила в течение пары недель. Изучить вопрос за это время не успею, поэтому и обращаюсь с этой просьбой.

Исходные данные:
две сетевые карты:
eth0 - получает адрес у провайдера по dhcp . Смотрит в Интернет.
eth1 - имеет фиксированный адрес 192.168.0.7. Раздает Интернет ноутбуку с адресом 192.168.0.3 . Также используется для соединения ноутбука с сервером по ssh .
ppp0 - подымается при загрузке ОС. Используется для связи сервера с провайдером по pptp. Адрес (условно) - 777.777.777.777 .
Назначение системы - веб-сервер для нескольких сайтов, расположенных на поддоменах одного домена.
Все сайты - доски объявлений с возможностью размещения платных объявлений с оплатой через PayPal.
Используется CMS Wordpress, т.к. доска объявлений представляет из себя дополнение (тему) для Wordpress.
Используемое ПО: debian 7.3+nginx+php5-fpm+postfix+dovecot+clamav+sshd.

Сайт ориентирован на население стран - бывших республик Советского Союза.

Что хотелось бы получить?
Хотя бы средней руки безопасность (чем выше - тем лучше) для такого веб-сервера от наиболее часто встречающихся угроз.
Заблокировать подсети Китая - устроит шаблон правила, в который я сам подставлю адреса. Вчера рассматривал файл /var/log/auth.log - сразу после установки sshd начали ломиться китайцы, непрерывно в течение суток, с перерывом 5-6 часов (на сон?). Вручную, что-ли ломятся? Причем используются какие-то дикие (как для нас) логины, например, hanjin. Это он на Украину ломится с логином hanjin :))

Отвечу на все вопросы.


нужно иметь грамотно составленные правила в течение пары недель. Изучить вопрос за это время не успею, поэтому и обращаюсь с этой просьбой.

Хм.

Отвечу на все вопросы.

Почему не юзаешь fwbuilder?

ziemin ★★
()

Насчёт ssh, от китайцев спасает уход в нестандартные порты, то есть не зная порта, подключиться уже сложнее. Если включить режим параноика, можно поизгаляться с решением knock-knock на iptables (это когда сначала делаешь запрос на подключение к одному порту, iptables открывает доступ к реальному другому порту и подключаешься).

Насчёт конкретно правил и фильтрации, да за пару-тройку дней всё делается, благо есть уже готовые примеры на все случаи жизни. Раньше даже википедия имела хорошую статью с примерами, не знаю, как сейчас.

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

"Почему не юзаешь fwbuilder?"

До этого момента я не знал о его существовании. Это что-то типа конструктора правил? Поинтересуюсь. Но если это конструктор правил, то вряд-ли от него будет какая-то польза. В любом случае - Спасибо.

als777
() автор топика
Ответ на: комментарий от anonymous

http://www.sanewall.org/packages/

Спасибо, посмотрю.

als777
() автор топика
Ответ на: комментарий от nickleiten

"благо есть уже готовые примеры на все случаи жизни"

Можно по-подробнее про примеры?
По-поводу ssh и китайцев, то я решил это дело так: посадил sshd на нестандартный порт, настроил подключение только с конкретного ip и только конкретного пользователя, а в iptables запретил доступ к этому порту всем ip-адресам, кроме одного.

als777
() автор топика
Ответ на: комментарий от nickleiten

Видимо по этому учебнику я и буду изучать iptables. Вопрос только в том, сколько это займет времени.
Много бороздил Интернет по теме iptables, а этот учебник мне не попался. Спасибо.

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

Может у кого аналогичный сервер? Поделитесь конфигом iptables.
aalex9193@gmail.com

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

начали ломиться китайцы

iptables + ipset

To block IP addresses based on geo location (country) here is a simple shellscript:

#!/bin/sh
ipset -N geoblock nethash
for IP in $(wget -O – http://www.ipdeny.com/ipblocks/data/countries/{cn,kr,pk,tw,sg,hk,pe}.zone)
do
ipset -A geoblock $IP
done
iptables -A INPUT -m set –set geoblock src -j DROP

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

"Используется CMS ... безопасность"

Да, наверное, Wordpress - это как Windows, только в своем роде. И с безопасностью там не все в порядке. Но я буду ее использовать.

als777
() автор топика
Ответ на: комментарий от vxzvxz

"Fail2Ban"

Спасибо за fail2ban! Познакомлюсь поближе, но на первый взгляд - это то, что нужно.
Но если говорить конкретно о ssh, то решение о котором я говорил выше, не лучше, чем применять правила iptables для каждого ip-адреса?

als777
() автор топика
Ответ на: комментарий от emulek

Спасибо. Эта ссылка opennet у меня в закладках. Но изучение вопроса требует, как на мой взгляд, очень много времени. Обязательно этим займусь, но хотелось бы, что-бы заработал сервер, а потом уже буду углубляться в iptables.

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

Но изучение вопроса требует, как на мой взгляд, очень много времени.

поверьте, убивать систему под руководством здешних анонимусов — намного быстрее...

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

поверьте, убивать систему...

М-дя...
Я смотрю затишье на форуме? Все смотрят Олимпиаду?
Не вовремя я со своим iptables?
emulek , насколько это тяжелая задача - составить правила iptables исходя из моих исходных?
Это ведь не корпоративная сеть с кучей различных серверов и удаленных офисов.
Реально взять конфиг близкого по духу веб-сервера и приспособить его к своим условиям?

als777
() автор топика
Ответ на: комментарий от emulek

Вы могли бы сформулировать основные задачи, которые нужно решить для такого как мой сервера с помощью iptables? Так сказать - техническое задание? Или это тоже вопрос тяжелый?

als777
() автор топика
Ответ на: комментарий от emulek

Т.е. я хочу сказать, что даже не представляю - что собственно мне нужно?
От чего защищаться?
Ну, как заблокировать нежелательные мне подсети - с этим вопросом более-менее ясно. Т.е. посидев над этим вопросом пару дней, я мог бы считать вопрос решенным.
Защита sshd - тоже понятно.
А дальше? Не хотелось бы вылезти в Интернет с голой жопой, получить хороших пендюлей и со свистом вылететь из онлайна, прихватив с собой пользовательскую информацию своих клиентов, раздавая им потом уверения, что больше этого не повторится.
Хотя бы основные угрозы закрыть. Те, которые угрожают непрерывной работе сервера и целостности пользовательской информации.
А потом уже лезть в Интернет и смотреть как все будет работать.

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

Какие современные угрозы для сервера ТС-а можно и нужно закрыть с помощью iptables ?

Лучше, наверное, так сформулировать вопрос.

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

1. ВСЁ запрещено, кроме того, что разрешено.

2. разрешать надо на самом деле немного. Вот простой пример. Объяснение. Я не одмин, я быдлокодер. Сам использую именно этот скрипт, пока ещё не взломали. От пионеров защищает, а вот некие «Крутые Хакеры из Особого Отдела КГБ» меня не трогают, т.к. по повестке меня в Большой Дом вызвать проще.

3. в принципе нужен только вход по ssh на рандомном порте по ключу и НЕ рутовая учётка(рут вообще запрещён). ВСЁ.

4. всё остальное — по необходимости, httpd, ftpd, и так далее. Впрок открывать не нужно. Если тебе нужен ftp, просто пойди, и подро подумай, а нужен-ли? И пойми, что не нужен.

Не хотелось бы вылезти в Интернет с голой жопой, получить хороших пендюлей и со свистом вылететь из онлайна

вряд-ли iptables от этого тебя спасёт.

прихватив с собой пользовательскую информацию

нужно больше пользователей. Если ты не хочешь утечек, сделай специального юзера без интернета. В любом случае, всякие wine и прочий онанизм (браузер например) нужно делать от спец-юзеров(тогда их можно резать/контролировать и iptables в т.ч.)

Хотя бы основные угрозы закрыть

тащем-то вряд-ли будут ломать Linux систему, которая регулярно обновляется, и за которой администратор следит. Это дорого и сложно. Проще зайти на соседнюю помойку.

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

1. ВСЁ запрещено, кроме того, что разрешено.

Поверите? - сколько раз читал это в разных руководствах по iptables и только сейчас дошло :)) Только когда сформулировал, что мне нужно не iptables настроить, а от угроз защититься - начал все понимать. :) Что ВСЁ запрещено. Спасибо. Не подумайте, что я тупой - это какой-то странный глюк :)) Теперь дело пойдет!

и со свистом вылететь из онлайна

вряд-ли iptables от этого тебя спасёт.

А что спасет? Регулярно обновляемая система или еще что-то?

прихватив с собой пользовательскую информацию

нужно больше пользователей. Если ты не хочешь утечек, сделай специального юзера без интернета.

Я под пользователями имел ввиду клиентов сайта. А Вы? Я не совсем понял... Wine-а и прочего - у меня и близко ничего подобного не предвидится. Что будет я описал в исходных.

вряд-ли будут ломать Linux систему, которая регулярно обновляется

У меня в списке репозитариев только main и security, update не включал. Этого достаточно?
Не знаю как с этим дело обстоит на debian, но про убунтовские дектопы начитался, как после обновления система ломалась. Эта проблема актуальна до сих пор? Как с этим быть?

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

Регулярно обновляемая система

это необходимое условие, но недостаточное.

А Вы?

в вашем случае очевидно у вас будет отдельные юзеры — администраторы сайтов, имеющие доступ на ваш сервер к своей учётке, и к своему сайту. И только к нему.

У меня в списке репозитариев только main и security, update не включал. Этого достаточно?

для системы наверное достаточно. Надо только разделить юзеров(сайты) так, что-бы даже если сломают один из сайтов, и получат там shell, то враг не смог сделать ничего плохого другим сайтам и самой системе. Надо считать, что каждый из администраторов сайтов является врагом. Т.е. если один из админов запустит rm -rf /*, то всё, чего он добьётся — удалит свой сайт.

Очевидно, что права на личные каталоги юзеров должны быть 0700.

но про убунтовские дектопы начитался, как после обновления система ломалась. Эта проблема актуальна до сих пор? Как с этим быть?

стабильная система ломается очень редко, если она вообще ломается. Не надо путать рассказы пионеров нафтыкавших репы хрен знает с чем, с системами в продакшене. По слухам даже Ubuntu LTS весьма стабильна, и не ломается(сама), хотя я и не пробовал.

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

Спасибо Вам за ответы! Спасибо Всем за ответы! Пошел составлять правила iptables .

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