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

Что произойдет, если у вас возникнут конфликты пользователей между системой Linux и сервером LDAP?

У меня есть (открытый) сервер LDAP, работающий в системе Debian внутри моей локальной сети, и несколько систем, работающих под управлением Linux Mint, настроенных как клиенты LDAP.

Вот содержание моего /etc/nsswitch.conf:

passwd:         compat ldap
group:          compat ldap
shadow:         compat ldap
gshadow:        files

hosts:          files mdns4_minimal [NOTFOUND=return] dns myhostname
networks:       files

protocols:      db files
services:       db files
ethers:         db files
rpc:            db files

netgroup:       ldap

Мой вопрос: что произойдет, если сервер LDAP вводит конфликты пользователей (uid / username)? Можно ли использовать это для получения root-доступа на клиентах? Является ли в этом отношении LDAP-сервер единственной точкой отказа? Можно ли это предотвратить?

Я знаю, что задал 4 вопроса, но все они по одной теме: «конфликты пользователей».

Спасибо!

  • Конфликт с uid: если пользователь A из LDAP и пользователь B из /etc/passwd имеют одинаковый UID, оба могут получить доступ к файлам другого - фактически, они являются одним и тем же пользователем.
  • Конфликт с именем пользователя: при входе в систему будет запрашиваться первая база данных. В вашем примере пользователь LDAP не может войти в систему
  • Корневой эксплойт: если у вас есть конфликт UID и один из пользователей sudo права или что-то подобное, у другого пользователя также будет (как я уже сказал, это фактически один и тот же пользователь).
  • LDAP не является здесь точкой отказа - вы можете даже иметь несколько имен пользователей с одним и тем же uid всего за /etc/passwd. Предотвратить это означает убедиться, что у вас нет коллизий перед подключением к LDAP, а после этого добавлять пользователей только в LDAP, а не в локальные файлы (за исключением учетных записей служб). Это ваша ответственность, и система не защищает вас в этом случае.

Что происходит, так это то, что вы получаете номера UID / GID, которые не совпадают между серверами.

Ситуации:

  • У пользователя / группы может быть несколько разных номеров UID / GID на серверах.
  • Один и тот же номер UID / GID может использоваться несколькими разными пользователями / группами на серверах.

Несогласованные номера UID / GID на серверах могут вызвать ряд проблем, таких как проблемы с владением файлами при экспорте NFS или проблемы с владением файлами при переключении хранилища / файловых систем SAN между серверами.

Вы не можете успешно использовать центральную систему аутентификации пользователей, такую ​​как LDAP, у вас нет согласованных номеров UID / GID.

Итак, что вам нужно сделать, это собрать информацию со всех серверов, чтобы установить:

  • количество уникальных пользователей / групп на серверах
  • количество конфликтующих UID / GID
  • каково количество конфликтующих пользователей / групп на UID / GID
  • количество пользователей / групп с несколькими разными номерами UID / GID на серверах
  • подробная разбивка количества учетных записей пользователя / группы на сервер с каждым UID / GID

По сути, вы составляете общую картину всего. Вы предотвратите все проблемы, сделав аналогичный анализ с вышеупомянутым и приняв меры, чтобы все это объединить.

Что касается единой точки отказа, вам следует проверить передовые методы, подобные перечисленным Вот.

Чтобы защитить свой сервер LDAP, отметьте это руководство.

Также см связанные уязвимости.