-
Публикации
22 -
Зарегистрирован
-
Посещение
-
Организация Internet eXchange
тему ответил в SokolovS пользователя Wheely в Программное обеспечение, биллинг и *unix системы
Будем рады увидеть в открытом доступе :) -
Аномалия
тему ответил в entwine пользователя Wheely в Программное обеспечение, биллинг и *unix системы
egrep -i established /proc/net/ip_conntrack -
Борьба с TCP Connection DDoS
тему ответил в Wheely пользователя Wheely в Программное обеспечение, биллинг и *unix системы
PS склонился к идее от rage, поскольку slowloris/slowread & sockstress используют методику понижения размера окна до нуля в определенный момент tcp сессии, я просто посредством u32 заблокировал пакеты с winsize 0. Будем тестировать. ну я бы просто рейты на такие пакеты поставил. потому что так можно и tcp сломать :) Не люблю я рейты, честно. Если ситуация не такая, что без них вообще никак - никогда не использую. Ибо счетчики рейтов берут информацию с clocksource, а это даже в состоянии покоя будет отжирать честь процессора. Особенно это касается таймеров в ipset. Каким образом я сломаю тцп подобным образом? SYN пакеты с initial winsize 0 никогда не посылаются, а ack с нулевым окном - собственно и есть нарушение логики tcp сессий. -
Борьба с TCP Connection DDoS
тему ответил в Wheely пользователя Wheely в Программное обеспечение, биллинг и *unix системы
Айписет стоит давно, да. Фейл2бан и подобные высокоуровневые надстройки фтопку, ибо прокси молотит довольно внушительные объемы трафика. Если в айпитейблах какой-нибудь connlimit лишний сразу задерет нагрузку процентов на 40, то какая речь о файл2бан. PS склонился к идее от rage, поскольку slowloris/slowread & sockstress используют методику понижения размера окна до нуля в определенный момент tcp сессии, я просто посредством u32 заблокировал пакеты с winsize 0. Будем тестировать. -
переадресация на страничку при отрицательном балансе
тему ответил в mousus пользователя Wheely в Программное обеспечение, биллинг и *unix системы
Я понимаю, а где это тогда реализовать? На каком сервере? Я смотрел в сторону DNS. стоит bind. Но как?! На роутере своем. Ессно, команда для ната будет другая, если у вас не софтроутер, а железка. -
Борьба с TCP Connection DDoS
тему ответил в Wheely пользователя Wheely в Программное обеспечение, биллинг и *unix системы
A kind of, но довольно специфичный. Либо мне забили коннекты быстрее, чем нжинкс закрывал старые, либо... ну, я на scapy делал 3-way handshake и потом выставлял окно в 0. несколько сотен тысяч итераций делают жертве плохо. winsize 0 можно легко заблочить, а вот когда тебе валят куча вполне легитимных запросов, никаким образом не поддающихся сигнатурной фильтрации с разных айпишников - тут нужно покумекать. Идея склоняется к тому, чтобы максимально агрессивно выхеривать залипшие тсп-коннекты, не навредя при этом нормальному tcp обмену трафиком. -
переадресация на страничку при отрицательном балансе
тему ответил в mousus пользователя Wheely в Программное обеспечение, биллинг и *unix системы
Некстхоп там зачем? Если должникам выдается ип из пула 172.17.0.0/16, тогда iptables -t nat -A PREROUTING -s 172.17.0.0/16 -p tcp -j DNAT --to-destination 10.10.10.10:80 Где 10.10.10.10 - айпишник сервака со страничкой index.html. В конфиге веб-сервера - реврайт отовсюду на index.html, либо ErrorDocument 404 /index.html -
Борьба с TCP Connection DDoS
тему ответил в Wheely пользователя Wheely в Программное обеспечение, биллинг и *unix системы
A kind of, но довольно специфичный. Либо мне забили коннекты быстрее, чем нжинкс закрывал старые, либо... Прочитал эту статью: http://blog.tsunanet.net/2011/03/out-of-socket-memory.html В системе нет сообщений о том, что Out of socket memory. Только о том, что too many orphans. Крутить max_orphans я не стал, ибо сомневаюсь, что в этом есть большой смысл. В то же время я кое-как пробился в консоль сервера и мог оперировать там, в то время, как на порт веб-сервера вообще было не подключиться, поэтому я склюняюсь к тому, что проблема именно в настройках в nginx. -
Доброго времени суток. Имеется защищенный веб-сервер на базе nginx, который на днях заддосили банальным методом. В access логах нжинкса ничего нет, но я видел кучу подключений (120000+) на 80 порт, которые уже установились. (Значит подмены IP не было, ибо проходил three way handshake) В логах системы куча сообщений вида TCP: Too many orphaned sockets и в момент атаки нжинкс съедал весь процессор. Немного продумав схему атаки, я сделал вывод, что атакующий ботнет подключался к порту nginx, но ничего дальше не слал. В настройках нжинкс keepalive_timeout установлен в 5 секунд, то есть банальный телнет на порт - и соединение закроется через 5 секунд неактивности. Меня удивило то, что веб сервером не отдается ошибка 408 в таком случае. В настройках системы max_orphans установлен в 8192 и orphan_retries установлен в 0. Позже я в nginx'e установил accept_mutex off в секции events {}, а также уменьшил fin_timeout до 5 в настройках системы. Системой обнаружения атак данная атака не детектировалась вследствии того, что весь трафик де-факто нормален (нечего блочить), ибо все запросы легитимны, просто их очень много. Соответственно прошу совета, как лучше защититься от подобного вида атак. Ratelimit на dst_port не предлагайте, плз :) Пока что надумал впихнуть haproxy с агрессивными настройками по отношению к таймаутам коннектов, но мне кажется, что это костыль, ибо задачу, должно быть, можно решить другими настройками системы. Почему nginx съедал весь процессор, несмотря на то, что сокеты по идее требовательны к памяти, а не процу (1 сокет забирает 64 кб unswappable памяти, AFAIK)? По ошибке TCP: Too many orphaned sockets в гугле очень мало инфы, и все советы, которые даются в данном случае, уже были приняты. Что крутить: nginx или настройки tcp стека? Спасибо за внимание.
-
Новые сетевые от Intel на чипсете XL710
тему ответил в pavel.odintsov пользователя Wheely в Программное обеспечение, биллинг и *unix системы
Спасибо за отличную новость, Павел! Собираемся закупать несколько карточек на пробу. Учитывая не заоблачную цену, думаю, будет разумное приобретение. -
Несимметричное распределение прерываний по очередям
тему ответил в IVB пользователя Wheely в Программное обеспечение, биллинг и *unix системы
Нельзя пренебречь. Для сетевушек разные маршруты? На всех сетевухах висят айпишники из одной подсети или из разных (с необходимостью создания n числа "дефолтных" маршрутов для каждой сетевухи)? -
Как можно лимитировать udp-пакеты в pf?
тему ответил в alibek пользователя Wheely в Программное обеспечение, биллинг и *unix системы
iptables hashlimit. но это всё равно форма стейтов. Работают эти стейты действительно ОЧЕНЬ быстро и оверхедят сравнительно мало по отношению к классике state - коннтреку. -
Здравствуйте. Очень с трудом мы подняли интерфейс mgt на Juniper NetScreen 5200, тоже упорно не хотел подниматься. Следующие интерфейсы eth.. не поднимаются вообще. ns5200-> get route IPv4 Dest-Routes for <untrust-vr> (0 entries) -------------------------------------------------------------------------------------- H: Host C: Connected S: Static A: Auto-Exported I: Imported R: RIP/RIPng P: Permanent D: Auto-Discovered N: NHRP iB: IBGP eB: EBGP O: OSPF/OSPFv3 E1: OSPF external type 1 E2: OSPF/OSPFv3 external type 2 trailing B: backup route IPv4 Dest-Routes for <trust-vr> (6 entries) -------------------------------------------------------------------------------------- ID IP-Prefix Interface Gateway P Pref Mtr Vsys -------------------------------------------------------------------------------------- * 28 0.0.0.0/0 eth2/1 *.*.218.1 S 20 1 Root * 29 0.0.0.0/0 mgt *.*.231.1 S 20 1 Root * 24 *.*.218.129/32 eth2/1 0.0.0.0 H 0 0 Root * 23 *.*.218.0/24 eth2/1 0.0.0.0 C 0 0 Root * 20 *.*.231.0/24 mgt 0.0.0.0 C 0 0 Root * 21 *.*.231.90/32 mgt 0.0.0.0 H 0 0 Root ns5200-> get interface A - Active, I - Inactive, U - Up, D - Down, R - Ready Interfaces in vsys Root: Name IP Address Zone MAC VLAN State VSD Vsys mgt *.*.231.90/24 MGT 0010.dbb8.5e00 - U - Root ha1 0.0.0.0/0 HA 0010.dbb8.5e05 - D - Root ha2 0.0.0.0/0 HA 0010.dbb8.5e06 - D - Root eth2/1 *.*.218.129/24 Trust 0010.dbb8.5e07 - U - Root eth2/2 0.0.0.0/0 Trust 0010.dbb8.5e08 - D - Root vlan1 0.0.0.0/0 VLAN 0010.dbb8.5e0f 1 D - Root null 0.0.0.0/0 Null N/A - U - Root До mgt интерфейса пинг ходит (и обратно), с eth2/1 ничего не ходит в оба направления. set policy from trust to untrust any any any permit сделан. Подскажите, пожалуйста!
-
Отваливается GRE
тему ответил в Wheely пользователя Wheely в Программное обеспечение, биллинг и *unix системы
Да, вы были правы. На другом сервере все ОК. Спасибо. -
Здравствуйте. Имеется 2 тазика на Debian Wheezy, между которыми поднят GRE туннель, а точнее первый тазик отдает один из своих внешних IP второму тазику. Через определенное время gre сессия отваливается и этот отдаваемый адрес ниоткуда недоступен, на трассе последним узлом является основной ип тазика-донора. При пинге со второго тазика первый тазик на ip внутри gre туннеля сессия возобновляется и трафик опять начинает ходить (на 10-20 минут, потом снова). Что за мистика? Весь гугл искурил, нашел пару таких же вопросов но без ответов...