Аутентификация клиента LDAP с помощью SSSD: проблема Групп

chattr +i * предотвратит даже корневую учетную запись от внесения изменений в файлы в каталоге (пока chattr -i * выполняется).

На комментарии Slartibartfast несколько вещей необходимо знать о болтовне и неизменном атрибуте:

  1. Неизменный бит будет препятствовать тому, чтобы файл был удален, переименован, связан с или записан в; использовать lsattr к атрибутам дисплея почти таким же способом ls владение дисплеев и полномочия
  2. Можно препятствовать тому, чтобы неизменный бит был сброшен (даже корнем) путем изменения CAP_LINUX_IMMUTABLE флаг - чтобы сделать так Вы захотите установить libcap, но это - только справедливое предупреждение, что возможности плохо документируются (в лучшем случае)

3
задан 8 December 2012 в 01:47
2 ответа

Наконец, я смог решить эту проблему. Эта статья мне очень помогла.

Вот что я сделал. На стороне SSSD все было настроено нормально, однако на стороне LDAP я не настраивал. Чтобы пользователи Unix (пользователи posix) работали правильно, мы должны создать группы posix и назначить соответствующие значения.

Для каждого пользователя, помимо присвоения идентификатора группы posix и идентификатора пользователя, необходимо также присоединить их к группе posix. Вы также можете добавить это из консоли администратора 389. При создании группы просто нажмите на раздел «posix group». Или из командной строки используйте эту статью

3
ответ дан 3 December 2019 в 06:38

В моем случае были те же симптомы, но причина была более запутанной. Я следовал этому руководству , в котором предлагается настроить средства управления доступом к LDAP, чтобы убедиться, что никто-не может прочитать (зашифрованные)пароли с сервера LDAP, но при этом разрешить пользователям отредактировать некоторые из своих собственных атрибутов выбора (, таких как собственный пароль и фотография ), импортировав следующий LDIF:

dn: olcDatabase={1}mdb,cn=config
changetype: modify
replace: olcAccess
olcAccess: {0}to attrs=cn,givenName,sn,userPassword,shadowLastChange,mail,loginShell,photo by self write by anonymous auth by dn.base="cn=Manager,dc=example,dc=org" write by * none
olcAccess: {1}to * by self read by dn.base="cn=Manager,dc=example,dc=org" write by * read

Когда sssd выполняет поиск идентификатора группы в LDAP, он делает анонимный поисковый запрос, используя следующий фильтр (извлечено из журналов sssd, версия 1.16.5):

(&(memberuid=test)(objectClass=posixGroup)(cn=*)(&(gidNumber=*)(!(gidNumber=0))))

Для этого поискового запроса требуется доступ на чтение к атрибуту cn, но анонимный пользователь имеет только доступ auth, поэтому поиск завершается ошибкой, и sssd не может знать идентификатор группы. То же самое происходит с атрибутом loginShellв другом поисковом запросе, поэтому зарегистрированные пользователи LDAP имеют оболочку по умолчанию (, которая оказывается csh вместо bash). Исправление: установлен доступ на чтение (вместо auth)к атрибутам cnи loginShellв базе данных LDAP (просто удалите их из первой attrsстроки):

dn: olcDatabase={1}mdb,cn=config
changetype: modify
replace: olcAccess
olcAccess: {0}to attrs=givenName,sn,userPassword,shadowLastChange,mail,photo by self write by anonymous auth by dn.base="cn=Manager,dc=example,dc=org" write by * none
olcAccess: {1}to * by self read by dn.base="cn=Manager,dc=example,dc=org" write by * read

Возможно другие атрибуты (например, namedName)также следует удалить из первой строки attr.

0
ответ дан 29 October 2021 в 17:52

Теги

Похожие вопросы