Назад | Перейти на главную страницу

Блокировка учетной записи в Ubuntu

Я пытаюсь реализовать блокировку учетной записи для систем Ubuntu, используя pam_tally. Вход в систему должен быть отключен на определенный интервал после 3 неверных попыток входа. Это должно произойти как для системного входа, так и для входа в систему через LDAP.

(У нас есть работающая центральная система аутентификации LDAP, в которой пользователи из клиентов Ubuntu могут аутентифицироваться)

Как мы можем это настроить? Я мог видеть несколько статей об этом для RedHat, но не для ubuntu

Приведенный выше ответ неверен для современных установок 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 рекомендуется в текущих версиях руководств по укреплению безопасности NSA и CIS RHEL.

Некоторые Интернет-источники предлагают добавить оператор magic_root, чтобы учетная запись root не блокировалась, если пользователь вводит неверный пароль sudo. Я не обнаружил, что это правда при тестировании. Если пользователь вводит неправильный пароль для su, это может быть правдой, но никто не должен использовать su’ing для прямого доступа к root напрямую, и если они введут неправильный пароль, мне кажется, что root будет заблокирован. Если у вас есть magic_root, некоторые источники предполагают, что вам также необходимо добавить строки в /etc/pam.d/sshd; Я этого не пробовал.

Pam_tally2 имеет следующие улучшения / изменения:

  • ГЛОБАЛЬНО: новые параметры «без звука» и «no_log_info»
  • AUTH: even_deny_root_account -> even_deny_root
  • AUTH: per_user устарел
  • AUTH: новая опция root_unlock_time и сериализации
  • АККАУНТ: no_reset устарел
  • «Faillog» больше не работает; используйте 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.html
http://www.nsa.gov/ia/_files/os/redhat/NSA_RHEL_5_GUIDE_v4.2.pdf
https://benchmarks.cisecurity.org/tools2/linux/CIS_Redhat_Linux_5_Benchmark_v2.0.0.pdf

Если у вас есть pam_tally уже настроен, вам просто нужно добавить его в каталог /etc/pam.d/common-auth. Неудачный вход из LDAP должен отображаться в PAM так же, как и в случае неудачного входа в систему на вашем локальном компьютере. Так что убедитесь, что вы правильно сделали заказ:

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

(При необходимости измените пути)

(источник)