• Автор теми Автор теми ASDev
  • Дата створення Дата створення
Статус: Офлайн
Реєстрація: 09.02.2007
Повідом.: 26996
DMZ в iptables

Ситуация такая: сервак-роутер, 2 вход. канала, 1 ЛАН, понадобилось поднять веб-сервачок для сайта. Запилил вирт. машину (не хочу я поднимать веб-сервер непосредственно на ОС роутера и в локале), поставил сервачный линух, поднял там LAMP, сделал на хосте вирт. сетевуху с абсолютно левым ИП, подвязал к нему гостевую ОСь. Потом в правилах IPTables на хосте перенаправил порт 80 на виртуалку, запретил коннекты с вирт. сетевухи на всё кроме сетевухи смотрящей стат. айпишником в инет, запретил коннекты на сам хостовый сервак, только форварды в инет. Это сильно через жопу так DMZ организовывать?
 
Ситуация такая: сервак-роутер, 2 вход. канала, 1 ЛАН, понадобилось поднять веб-сервачок для сайта. Запилил вирт. машину (не хочу я поднимать веб-сервер непосредственно на ОС роутера и в локале), поставил сервачный линух, поднял там LAMP, сделал на хосте вирт. сетевуху с абсолютно левым ИП, подвязал к нему гостевую ОСь. Потом в правилах IPTables на хосте перенаправил порт 80 на виртуалку, запретил коннекты с вирт. сетевухи на всё кроме сетевухи смотрящей стат. айпишником в инет, запретил коннекты на сам хостовый сервак, только форварды в инет. Это сильно через жопу так DMZ организовывать?

не, это не гланды через жопу, это геморой через ухо получился
 
Какие есть варианты? Мне надо максимально обезопасить все другие компы в случае взлома веб-сервака. С таким конфигом даже если веб взломают или будут ддосить- сервак не ляжет, если на него зайдут даже под рутом - то ничего с него не просканируют, всё закрыто нах. Никакой важной инфы там не будет
 
Так он и висит в отдельном диапазоне айпишников и роутер его не роутит. На хостовой системе висит виртуальная сетевуха, которая роутится только на инет, и на ней висит вирт машина веб-сервера
 
Ситуация такая: сервак-роутер, 2 вход. канала, 1 ЛАН, понадобилось поднять веб-сервачок для сайта. Запилил вирт. машину (не хочу я поднимать веб-сервер непосредственно на ОС роутера и в локале), поставил сервачный линух, поднял там LAMP, сделал на хосте вирт. сетевуху с абсолютно левым ИП, подвязал к нему гостевую ОСь. Потом в правилах IPTables на хосте перенаправил порт 80 на виртуалку, запретил коннекты с вирт. сетевухи на всё кроме сетевухи смотрящей стат. айпишником в инет, запретил коннекты на сам хостовый сервак, только форварды в инет. Это сильно через жопу так DMZ организовывать?

ASDev, что ты этакого нев*бенно-бодрящего куришь ?
Зачем такие сложности, и интересно что у тебя в сети такого важного, что ты прибегаешь к такому изврату. Что бы не городить огород - подсуетись над защитой гейта и веб сервера.
 
Мне надо параноидально защищённую систему :D А что важного - коммерческая тайна :) И взлом, простои в работе чреваты попадаловом на бабло. На веб-сервере несколько систем отражения ДоСа, плюс на роутере ещё... Вообще мне надо было резать абсолютно все коннекты извне, кроме разрешённых на определённые порты с определённых ИП. Это несложно, но начальство распорядилось ещё веб-сервак поднять, а т.к. за всем зоопарком двумя глазами сильно не уследишь, то пришлось его пилить таким способом. Согласен, может немного сложновато, но веб-сервер потенциально опасен, отдельный канал инета для него и вообще не подключать в общую сеть - мегаизврат. Если вы видите уязвимости в такой организации доступа как я описал - прошу мне на них указать
 
Виртуалка программно висит на роутере ? (не совсем понял)

Какой виртуализатор использовал ? (в некоторых виртуализаторах нет или не срабатывает порог загрузки CPU, и с самой виртуалки (если она на роутере и если веб ломанут) можно загрузить проц на 100% из-за чего у тебя будут проблемы, от пропадания пакетов до глобального подвиса или отваливания сервисов) - с этим учетом в зависимости от настроек фаера при его вываливании из нормальной работы защита системы (доступ) может полностью открываться или наглухо блокироваться.
 
Да, виртуалка на роутере. Так, щас я скажу какая виртуалка - и меня сразу залошат. Предупреждаю сразу - такой выбор только из-за того что на ней судя по тестам быстрее всего летает винда. Там несколько виртуалок, в т.ч. с виндой. Веб-сервак есессно на линухе. Виртуалка ВиртуалБокс
 
Да, виртуалка на роутере.

Использовать систему виртуализации на гейте, дело не совсем правильное (причину указывал) - НО это твой выбор, и тебе потом при проблемах выгребать, хотя если тачка довольно мощная и использовать её только для гейта - не выгодно. Вообщем не буду лезть "со своей религией организации сети в чужой огород".

Так, щас я скажу какая виртуалка - и меня сразу залошат.

...

Виртуалка ВиртуалБокс

Я спрашивал не про виртуалку, а про виртуализатор + ты сам ответил. И почему ты думаешь что тебя залошат ? Хотели бы залошить, так уже бы залошили от твоей схемы построения, а так мы пытаемся разобраться в твоей ситуации и помочь ;) .

По поводу виртуалбокса - последнии версии не проверял - сам для себя можешь проверить, на самой виртуалке (линуховской или думаю тебе будет лучше виндовой) запусти что-то (программу), что явно "имеет" проц по загрузке, если максимум, что тебе удастся загнать проц на 60% значит волноваться пока не стоит, если до 80% нужно думать о возможной проблеме на момент формирования структуры, если больше - уже думать от отказе от такого дела (проценты не с головы - как-то на ВмВаре сайте наткнулся, у них кстати тоже такая проблема была в ESXi- починили).

ПС: для некоторой защиты, от доса в инете уйма вариантов защиты (понятно что не 100% защита, так как досеры все развиваются и развиваются) + для защиты тогоже root'а и других сервисов поставь DenyHost (
⚠ Тільки зареєстровані користувачі бачать весь контент та не бачать рекламу.
) + если еще не спокойно я себе всегда ставлю примочку (скриптик) к ssh демону - при вхоте какого-нибудь юзаре в системы, мне моментально приходит письмо на почту или смс на телефон, и я могу быстро и вовремя отреагировать + при выходе юзверя из системы мне шлется на почту перечень команд которых он вводил...

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

И вообще сидеть под рутом (активировать этот акк для логина по крайней мере из сети) - сразу можно по рукам надавать.



запретил коннекты с вирт. сетевухи на всё кроме сетевухи смотрящей стат. айпишником в инет, запретил коннекты на сам хостовый сервак, только форварды в инет.

Укажи плиз как именно ты это сделал - чтобы стопицот слов не писать, ответь - потом попытаюсь найти дырку в этой схеме (мне аж самому стало интересно о + и - этой схемы).
 
Останнє редагування:
Так, по пунктам. Я тут же не зря создавал тему о серваке под роутер ))) Сервак более-менее мощный, 8 гигов оперативы, core i3 2100T (из-за низкого тепловыделения), вот на такой платформе ASUS RS300-E7/PS4 1U. В хостовой системе фаервол-роутер (iptables+iproute2).
виртуальная сетевуха vboxnet0, с айпишником 192.168.56.1, на виртуалке айпишник 192.168.56.2, та что смотрит в инет - eth2. Правила такие

-A PREROUTING -p tcp -m tcp -i eth2 --dport 80 -j DNAT --to-destination 192.168.56.2:80
тут заворачивается траффик 80 порта на виртуалку

в Filter по умолчанию
:INPUT DROP [0:0]

в Forward
-A FORWARD -i vboxnet0 -o eth3 -j DROP
это запрет прохождения траффика с вирт. сетевухи виртуалбокса на другую внешнюю сетевуху
-A FORWARD -i vboxnet0 -o eth0 -j DROP
а это запрет на хождение траффика в локальную сеть

с виртуалки не пингуется даже её шлюз, указанный в настройках (192.168.56.1), т.к. пинги режутся в инпуте и не разрешены, другие сети тоже не пингуются, т.к. дропаются все пакеты на них. Проверял, если пакеты на сетевуху смотрящую на локалу не дропать - пинги идут. А с правилом -A FORWARD -i vboxnet0 -o eth0 -j DROP ничего не проходит

А, ещё. В линухе есть очень правильная утилитка по-моему cpulimit, которая позволяет ограничить загрузку ЦП конкретным процессом. Если что - натравлю её по адресу. Уже делал так когда на терминальнике 10 пользователей запускали по 20 окон мозиллы с флешем, а т.к. терминальник на 64бит и флэш контейнер там слегонца глюкавый - то память и время проца жрались как не в себя. Ограничил её в использовании 10% времени - и проблема ушла :)



О, такой вопрос возник, может кто в курсе... Есть хост вирт машины с физическим интерфейсом eth0 и IP 192.168.1.1. Есть комп, соединённый с ним локалой, с айпишником 192.168.1.2. Есть на хосте вирт. машина .в настройках сети которой - бридж на eth0 и IP 192.168.1.3. Внимание, вопрос: когда пакеты ходят с 192.168.1.2 на 192.168.1.3 и обратно, попадают ли они в INPUT или FORWARD хостовой системы? Т.е. можно ли как-то ими управлять, используя iptables хоста? Или бридж виртуальной машины подразумевает что пакеты идут сразу на гостевую ОСь?
 
Останнє редагування:
ПС: для некоторой защиты, от доса в инете уйма вариантов защиты (понятно что не 100% защита, так как досеры все развиваются и развиваются) + для защиты тогоже root'а и других сервисов поставь DenyHost (
⚠ Тільки зареєстровані користувачі бачать весь контент та не бачать рекламу.
) + если еще не спокойно я себе всегда ставлю примочку (скриптик) к ssh демону - при вхоте какого-нибудь юзаре в системы, мне моментально приходит письмо на почту или смс на телефон, и я могу быстро и вовремя отреагировать + при выходе юзверя из системы мне шлется на почту перечень команд которых он вводил...


Делись :)
 
На веб-сервере несколько систем отражения ДоСа, плюс на роутере ещё
кажется этот вопрос давным давно разжеван. ты, как конечный узел, принимающий пакеты, не имеешь возможности "отражать" ДОС.
представь себе реку и сечение русла реки в любом месте. в зависимости от погодных условий через данное сечение будет протекать или больше или меньше воды. так и твой камп, что бы ты не делал у себя на системе, ты никак не повлияешь на пакеты, которые уже пришли на твою сетевуху.
да, есть навороченые методы. когда непрерывно парсится лог, при определенных условиях вычисляются спамеры/досеры и отправляются почтой жалобы на провайдеров, кому принадлежат ИП. или же звонится провайдеру и трафик с определенных сетей заворачивается у провайдера в никуда, чтоб тебе в канал эта срань не попадала.
т.к. дропаются все пакеты на них
согласно логике работы ТСП дропать пакеты не совсем разумно, хоть и кажется эффективно. и вот почему. если к тебе пришел пакет, который ты не хочешь принимать, ты его реджектишь и отправитель получает отбой, мол не работает.
если же ответа на свой пакет отправитель не получил (ты же дропнул), то отправитель считает что пакет потерялся и отправляет его заново и тд пока не надоест. в итоге может оказаться, что накладные расходы на дропанье повторных пакетов выше, чем реджект.
ну это так. теория.

Это сильно через жопу так DMZ организовывать?
чесно говоря вообще не пойму такого изврата. тебе надо поднять сайт. так подыми его на роутере, зачем городить виртуалку для сайта на том же роутере. если посчитать. то так сайт будет тратить реальный ресурсы физического сервера и делать это очень быстро, а так отдельная виртуалка будет запущена для работы сайта. не вижу выгоды в быстродействии. если же тебя беспокоит что сайт дырявый и его "могут" взламать, а так как он в ДМЗ, то и не жалко напрашивается вопрос, а не лучше ли устранить дырявость сайта?
 
согласно логике работы ТСП дропать пакеты не совсем разумно, хоть и кажется эффективно. и вот почему. если к тебе пришел пакет, который ты не хочешь принимать, ты его реджектишь и отправитель получает отбой, мол не работает.
если же ответа на свой пакет отправитель не получил (ты же дропнул), то отправитель считает что пакет потерялся и отправляет его заново и тд пока не надоест. в итоге может оказаться, что накладные расходы на дропанье повторных пакетов выше, чем реджект.
ну это так. теория.

:клас: :клас: :клас:
Теория теорией - а на практике я почувствовал разницу.



чесно говоря вообще не пойму такого изврата. тебе надо поднять сайт. так подыми его на роутере, зачем городить виртуалку для сайта на том же роутере. если посчитать. то так сайт будет тратить реальный ресурсы физического сервера и делать это очень быстро, а так отдельная виртуалка будет запущена для работы сайта. не вижу выгоды в быстродействии. если же тебя беспокоит что сайт дырявый и его "могут" взламать, а так как он в ДМЗ, то и не жалко напрашивается вопрос, а не лучше ли устранить дырявость сайта?

+100500 ЗА

Как минимум 2 раза уже сказал - лучше потратить ресурсы (время и сылы) на защиту от взлома, чем на безопасность при факте взлома. (Это что-то типа пустим врага поближе в дом, а потом будем надеяться что он не перешагнет через белую черту нарисованную мелом). НО тут ничего не докажешь - человек уже решил как будет это делать. За прошлый год я поставил этак чтобы не соврать больше 60 гейтов с вебками (не только сайты самих компаний, а и панели управления самим гейтом + разная срань по желанию заказавших ) - так при правильном подходе я и проблем не имею, периодически логи смотрю - намеки на каварство есть, но не на долго. Единственный минус в этом всем - сделаешь хорошо, железка годами может работать без проблем и никто тебя не тронет, сделаешь плохо - периодически тебя будут тревожить и тревожить, за что конечно и получать можно мани - НО блин делать как попало не умею, за что иногда и без денег сижу.



откуда скрипты брал....
себе хочу поставить...

1) Уведомление при входе.
Создаешь в /etc/ssh файло sshrc (права на файло без разницы - у меня к примеру rw-r--r-- )
Содержимое:

echo -e "Host:\t\t$(hostname)\nLogin:\t\t$USER\nData:\t\t$(date +%d.%m.%Y\ %H:%M:%S)\t $(date)\nRemote_host:\t`who | cut -d"(" -f2 | cut -d")" -f1` $SSH_CONNECTION\nSSH_TTY:\t$SSH_TTY\nWHO:\t\t`who`" | mail -s "SSH: $USER hostname_`who | cut -d"(" -f2 | cut -d")" -f1`" mail

(Параметра 2-3 есть лишние - но мне они не мешают)

-> перегружаешь ssh демона - новое файло само подтягивается - никуда прописывать его не нужно.

По SMS уведомлению указывать не буду, потому что использую sms-центр который не хотелось бы светить, а с затиранием инфы от скрипта ничего не останется. В нете были примеры на высылку - НО видел только на МТС, на киевстар с ихними задроками указывать картинки не пройдет - НО это было с год назад, как сейчас дело обстоит незнаю.


2) Высылка команд при логауте
Укажу к примеру высылку всего лога - есть файло .bash_logout, а в нем:

# ~/.bash_logout
cat ~/.bash_history | mail -s "Bash command host" mail
clear

у меня при логине делается копия bash_history, при логауте сверяется копия и текущий файл и разница высылается на мыло. Скрипт полностью не указывал, т.к чувствую что сделал немного через (_о_) сравнивая 2 файла. Над этим еще думаю, чтобы довести до разумного (я не являюсь гуру в написании этих страшных слов и длинных строк).

Там где крассное - указывал реальное название сервера или имя, так чтобя мне было понятно, ну и мыло.
Логи кидаю на ****** + на тачке стоит qip с плагином от *моего мира* - при логине проходит 1-2 секунды, а у меня уже qip сигналит что есть месс с таким письмо - оперативно.
 
Останнє редагування:
Сайт не нагруженый, и тратить ресурсы ему особо не надо. Поэтому мне быстродействие вообще не нужно. Но есть сильно отличающаяся от 0 вероятность что его могут ддосить. А самый простой способ - это грузить апач с кучи айпишников сотнями запросов в секунду, 90% так делают. Плюс ещё попытки взлома, за которыми я могу не уследить. Большую ддос атаку конечно отразить не получится, а примерно до 5тыс айпишников думаю хватит. А, кстати, тут была моя тема насчёт ддоса, я там делал режекты, и мне кричали нахера режект, делай дроп )))
Я не говорил что сайт дырявый. Там сейчас вообще заглушка, самого сайта пока нет. Погуглив различные способы организации веб-серверов, много где говорилось что правильный способ - это веб-сервак в ДМЗ, как публичный сервис, потенциально опасный. Вот я примерно так и сделал, только не отдельный физический сервак, а виртуалка, и судя из самого понятия ДМЗ (зона, компы которой не имеют доступа в доверенную сеть, и из доверенной к ним нет доступа тоже) - это у меня получилось. В сети есть что охранять, а следить за вновь появляющимися дырами в апаче, веб-движках, панелях управления, ssh, и т.д. и т.п. - у меня нет времени. Взлом роутера - это доступ практически во всю сеть. Я более чем уверен что и сайт не поломают, но в моём случае лучше перебдеть. Мне совсем непонятна аллегория насчёт дома. Имхо скорее так: если делать сайт на роутере - то это поставить на дом бронированую дверь и надеяться что у врага нет автогена или болгарки. А ДМЗ - это такая же дверь, но если враг таки пройдёт - то он увидит 1 комнату, в которой ничего нет, и всё
 
О, такой вопрос возник, может кто в курсе... Есть хост вирт машины с физическим интерфейсом eth0 и IP 192.168.1.1. Есть комп, соединённый с ним локалой, с айпишником 192.168.1.2. Есть на хосте вирт. машина .в настройках сети которой - бридж на eth0 и IP 192.168.1.3. Внимание, вопрос: когда пакеты ходят с 192.168.1.2 на 192.168.1.3 и обратно, попадают ли они в INPUT или FORWARD хостовой системы? Т.е. можно ли как-то ими управлять, используя iptables хоста? Или бридж виртуальной машины подразумевает что пакеты идут сразу на гостевую ОСь?
по логике фаер хоста ничего не знает о пакетах, которые предназначаются не ему, поскольку у 1.3 в бридже свой МАК, то любые пакеты идущие с/на 1.3 идут мимо хостовой 1.1
иногда ведь даже так и делается, когда хостовая система не видит эзернет в который воткнута, а ходит в сеть через гостевую, которая является для нее роутером. очень схожий параноидальный случай)
еще по-поводу дмз и апача вспомнил. если запускать апач в джаиле, то получив привилегии пользователя, от которого он (апач) выполняется, злоумышленик ровным счетом ничего не получит, кроме доступа к документрут.
 
А, ещё. В линухе есть очень правильная утилитка по-моему cpulimit, которая позволяет ограничить загрузку ЦП конкретным процессом. Если что - натравлю её по адресу.
начни с того, что на скриншоте.
 

Вкладення

  • .webp
    .webp
    82.7 КБ · Перегляди: 91
Назад
Зверху Знизу