Настроить - порядка часа времени. От числа доменов зависит не сильно.
Определить спамят-ли - можно. Найти как - сложнее. А вот
огородить - еще сложнее, от дырявых веб-скриптов, как правило,
никто не застрахован. Особенно, если используется чужой код.
Это критично только если апач будет отжирать память в ущерб mysql. Действительно,
MaxClients это регулирует в режиме пиковой нагрузки (когда запущены все
доступные воркеры). А если память есть - пусть берет кто хочет. Странно создавать
узкое место, только чтобы не дать ее новым апачам.
1) работает, делал неоднократно
Если не нужна полноценная почта - просто держим на сервере
SMTP (postfix или exim - по вкусу) на localhost-е для отправки
наружу. MX-ы на гугл или куда вам больше нравится.
PS: А с Вас-то не спамят часом? ;) Уж как там поставлено
игнорировать - если оно не игнорирует?
Помог бы
1) поиск в логах подозрительных сообщений (grep sshd /var/log/* ;)),
связанных с sshd
2) текст сообщения об ошибке от ssh-клиента (putty, или что там у вас)
3) чтобы исключить вашего провайдера - проверить, может быть
такое у вас с другими ssh-серверами?
Логично, что MaxClients имеет смысл выставлять в соответствие с ресурсами
в системе. Чтобы и при пиковой возможной загрузке апачу и всемвсемвсем -
хватило памяти. И даже как-то все еще шевелилось бы :).
Но что Вы выигрываете, устанавливая MaxClients заведомо низким (10)? Форки?
Так новые апачи будут форкаться только при значительных колебаниях нагрузки
(Min/MaxSpareWorkers этим поможет рулить).
Новых клиентов по-существу принудительно тормозят на этапе начала обработки
соединения апачем (listen). Т.е. в _одном_ месте. А если у вас побольше допускается
апачей - шедулер просто переключается между ними как ему нравится, причем
обработка реквестов прерывается в самых разных местах.
Каждый процесс жрет 20Kb+ из kmemsize. В среднем - где-нить 50-60Kb. Наплодите их
побольше - возникнут отказы как залезете за лимит 97402880 (байтов). По самым
грубым прикидкам < 1k процессов выживут, не более. А с учетом более "жырных",
типа mysqld - гораздо менее 1k.
Нужно либо пинать хостера на модификацию лимита (посмотреть еще на numproc
заодно). Либо пробовать перейти на схему с фронтендом (nginx) перед апачем. Это
заметно должно уменьшить количество процессов апача.
madoff, указал. причем "для танкистов" - явно в посте #3.
/ru/forum/comment/6266826
Proxoma, почитайте в вики openvz подробнее про этот параметр (kmemsize). Грубо говоря, он
как минимум линейно растет с числом процессов. При определенном "везении" за
счет "грамотных" настроек хостером ограничений памяти для вашего VPS - и Вы
в этот лимит упретесь.
VPS хостинг у вас по ограничениям не похож на бюджетный - возможно хостер
пойдет Вам навстречу и изменит этот параметр.
А легкий прокси поставить - подумайте. Посмотрите по mod_status. Если у вас
куча апачей сидят в состоянии "W" запихивают контент клиенту - не лучше ли будет,
если они быстро отдадут его nginx-у и займутся другими вещами?
Я не понимаю того, например, зачем вы посоветовали ТС заключить
директивы для prefork в <IfModule>.
Proxoma, Вы не одиноки. Тут мало кто понимает, что madoff имеет в виду :D
а nginx (в режиме прозрачного прокси) поможет, поскольку возьмет на себя
обработку медленных клиентов. И не будет нужды висеть в памяти аж до
500 процессам апача.