Судя по вашему выходу perf
, увеличивающему net.ipv4.inet_peer_threshold
и понижающему как net.ipv4.inet_peer_minttl
, так и ] net.ipv4.inet_peer_maxttl
может немного помочь. Я предполагал, что вы используете несколько недавнее ядро, например 3.2
. Вы можете увидеть исходный код inet_getpeer
здесь: http://lxr.linux.no/#linux+v3.2.51/net/ipv4/inetpeer.c#L395
Если DDoS ограничен ЦП, то вам, вероятно, следует просто запретить UDP-пакеты нулевого размера через netfilter
например:
$ iptables -I INPUT -p udp -m length --length NN -j DROP
, заменив NN
фактической полезной нагрузкой L3, в вашем случае возможно 8
(размер заголовка UDP).
Если DDoS - это ограничение прерывания, вы можете настроить свой e1000e
, см .:
$ modinfo e1000e | grep ^ parm:
также см. Описание параметров в документации Intel: http://downloadmirror.intel.com/9180/eng/README.txt
Если DDoS привязано к сети, вам следует спросить у своего интернет-провайдера (оператора центра обработки данных) помощь.
Что, по вашему мнению, можно оптимизировать? Вы подвергаетесь DDoS-атаке, которая пытается перегрузить сервер. Обычно это имеет успех, если перед сервером нет сетевого компонента, который выполняет нулевую маршрутизацию к серверу.
Вы не можете предотвратить DDoS-атаки на сервере напрямую, только через хорошую сетевую инфраструктуру с системами предотвращения.
1144862]
ваш серверный git-repo - это то, с чем вы бы не работали; вы всегда будете зависеть от локального репо-клона, полученного из этого центрального git-репо (IMHO). что вы можете сделать, чтобы избавиться от уродливых cronjobs: используйте git pre / post-receive-hook на вашем git-сервере:
В дополнение к хукам на стороне клиента вы можете использовать пару важные серверные перехватчики в качестве системного администратора для применения практически любой политики для вашего проекта. Эти сценарии выполняются до и после отправки на сервер. Предварительные хуки могут выйти из ненулевого значения в любое время, чтобы отклонить push, а также вернуть клиенту сообщение об ошибке; вы можете настроить такую сложную политику push.
есть также информативное обсуждение stackoverflow о git-post-receive-hook для размещения веб-сайтов ; особенно