Если это имеет значение я чувствую Вашу боль. Кажется, что heartbeat считает потерю пассивного узла тем же как поглощение пассивного узла, таким образом, это запускает свои сервисы. Когда сценарии запуска перестали работать, и не было никакого другого узла, к которому к обработке отказа, heartbeat остался основным, и завершите работу всех сервисов. Единственный способ рассердиться снова состоит в том, чтобы перезапустить heartbeat, когда это происходит.
Мы имели дело с этой проблемой путем создания единственного сценария, который запускает все службы кластеров (IP, FS монтируется, ipvsadm, Apache, и т.д.), только если они уже не работают. Мы удостоверяемся "все в одном" init, сценарий только возвращается ненулевой для фактических отказов запуска (а не для предупреждений как "уже работающий") для предотвращения проблем как это.
If you have pam_tally
configured already, you just need to add it to your /etc/pam.d/common-auth directory. Failed logins from LDAP should appear--to PAM--as the same as failed logins against your local machine. So just make sure you get the ordering correct:
auth required /lib/security/$ISA/pam_tally.so onerr=fail no_magic_root
account required /lib/security/$ISA/pam_tally.so per_user deny=5 no_magic_root reset
(Adapt paths as necessary)
Приведенный выше ответ неверен для современных установок RHEL 5 и Ubuntu. В какой-то момент это было правдой, и я не могу определить, когда произошло изменение, но оно произошло до ОП 30 августа 2011 г. (с учетом эталонного теста CIS, опубликованного в августе 2011 г.). deny = должен находиться в строке авторизации, а не в строке аккаунта. Различные источники в Интернете устарели / неверны в этом отношении.
См. Справочные страницы для pam_tally:
http://linux.die.net/man/8/pam_tally
http: // manpages. ubuntu.com/manpages/hardy/man8/pam_tally.8.html
... вы увидите, что deny - это опция «auth», а не опция учетной записи.
Это правильные настройки: (в system-auth / system-auth-ac в RHEL и common-auth в Ubuntu)
#Actually locks out the user; put BEFORE pam_unix.so auth line.
auth required pam_tally2.so deny=5 onerr=fail unlock_time=900
(в system-auth / system-auth-ac в RHEL и common-account в Ubuntu)
#Resets the failed counter if the user finally gets in successfully. This is only needed to support programs that do not call pam_setcred(3) correctly (like sshd). Put BEFORE pam_unix.so account line.
account required pam_tally2.so
Обратите внимание, что pam_tally2 имеет заменил pam_tally. Pam_tally по-прежнему работает, и если используется только pam_tally, deny = 5 все еще должен быть в строке auth, а не в строке учетной записи. Pam_tally2 рекомендуется в текущих версиях руководств по усилению защиты RHEL NSA и CIS.
Некоторые источники в Интернете предлагают добавить оператор magic_root, чтобы учетная запись root не блокировалась, если пользователь вводит неверный пароль sudo. Я не обнаружил, что это правда при тестировании. Если пользователь вводит неправильный пароль для su, это может быть правдой, но в любом случае никто не должен запрашивать права root напрямую, и если они вводят неправильный пароль, мне кажется, что root будет заблокирован. Если у вас есть magic_root, некоторые источники предполагают, что вам также необходимо добавить строки в /etc/pam.d/sshd; Я не пробовал.
Pam_tally2 имеет следующие улучшения / изменения:
Правильная настройка присутствует в руководстве по усилению защиты RHEL NSA и новейшем тесте CIS Benchmark для RHEL 5. В руководствах по усилению защиты RHEL от NSA отмечается, что поведение pam_tally изменилось за время существования RHEL, и что в новом, исправленном настройки могут не работать в системах, которые не обновлены.
ПРИМЕЧАНИЕ: В RHEL 6 синтаксис другой. Это показано в тестах CIS для RHEL 6, но я не тестировал эти настройки.
Источники:
http://linux.die.net/man/8/pam_tally
http: // man .he.net / man8 / pam_tally2
http://manpages.ubuntu.com/manpages/hardy/man8/pam_tally.8.html
http://manpages.ubuntu.com/manpages/lucid/man8 /pam_tally2.8.html12152_ru/ .0.0. pdf