хранение системных пользователей в DB

FreeBSD, NetBSD, OpenBSD, DragonFly и т. д.

Модератор: arachnid

Аватара пользователя
gcc
Сообщения: 526
ОС: FreeBSD 8.0 CURRENT

хранение системных пользователей в DB

Сообщение gcc »

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

чтобы при добавление не трогать root, а использовать mysql, наприммер!
может там Berkekey DB? организовать свою небольшую БД на основе этой СУБД
Спасибо сказали:
Аватара пользователя
Ariasp
Сообщения: 254
Статус: NixLander

Re: хранение системных пользователей в DB

Сообщение Ariasp »

gcc писал(а):
24.07.2008 20:47
можно ли хранить системные пользователей в таблице (не всех, то есть те которые добалвенные для или распределние ресурсов, или для хостинга, или и т.д.)

чтобы при добавление не трогать root, а использовать mysql, наприммер!
может там Berkekey DB? организовать свою небольшую БД на основе этой СУБД

о bdb забудь, а вот mysql и тем более ldap для этой цели используются
если очень коротко -- ищи инфу по pam_mysql (либо pam_ldap) и nsswitch.conf
Спасибо сказали:
Аватара пользователя
gcc
Сообщения: 526
ОС: FreeBSD 8.0 CURRENT

Re: хранение системных пользователей в DB

Сообщение gcc »

спасибо, нашел, но там на сервере пользователи стоят системные рабочие, в документации написано, что нужно держать открытый рут, на случай если сконфигурировать не получиться, не хотелось юы все из самого начала делать если будет сбой :)

(сделал скрипт через крон, который смотрит базу сам, если там есть новые пользователи, то добовляет их в систему)

а можно настроить так чтобы некоторые были в системе как обычные, а другие в DB?
Спасибо сказали:
Аватара пользователя
Ariasp
Сообщения: 254
Статус: NixLander

Re: хранение системных пользователей в DB

Сообщение Ariasp »

gcc писал(а):
01.08.2008 07:46
а можно настроить так чтобы некоторые были в системе как обычные, а другие в DB?

конечно можно; скажем учётку рута я всегда держу только системной;
вобще говоря, благодаря nss грань между системным юзером и юзером из ldap/db/базы_winbind и т.п. стирается; при правильно сконфигурированном nsswitch.conf данные из db как бы добавляются к таблицам /etc/passwd и /etc/group
но там на сервере пользователи стоят системные рабочие, в документации написано, что нужно держать открытый рут, на случай если сконфигурировать не получиться, не хотелось юы все из самого начала делать если будет сбой

не очень понял смысл написанного; на случай сбоя -- во-первых, nsswitch.conf всегда надо конфигурить так, чтобы сохранялась возможность логина с обычной системной учёткой; а во-вторых, полезно иметь резервные сервера db с учётной информацией -- и в ldap, и в mysql можно настроить репликацию + в конфиге клиента nss_ldap можно указать несколько серверов (полагаю, что и для nss_mysql.conf есть такая возможность)
Спасибо сказали:
Аватара пользователя
gcc
Сообщения: 526
ОС: FreeBSD 8.0 CURRENT

Re: хранение системных пользователей в DB

Сообщение gcc »

Ariasp писал(а):
01.08.2008 10:43
не очень понял смысл написанного; на случай сбоя -- во-первых, nsswitch.conf всегда надо конфигурить так, чтобы сохранялась возможность логина с обычной системной учёткой; а во-вторых, полезно иметь резервные сервера db с учётной информацией -- и в ldap, и в mysql можно настроить репликацию + в конфиге клиента nss_ldap можно указать несколько серверов (полагаю, что и для nss_mysql.conf есть такая возможность)

что нужно указать в nsswitch.conf чтобы была возможность логиниться с системных учёток и с бд? в это файле все стандартно... или что там можно поменять?
Спасибо сказали:
Аватара пользователя
Ariasp
Сообщения: 254
Статус: NixLander

Re: хранение системных пользователей в DB

Сообщение Ariasp »

gcc писал(а):
05.09.2008 01:44
что нужно указать в nsswitch.conf чтобы была возможность логиниться с системных учёток и с бд? в это файле все стандартно... или что там можно поменять?

не можно, а нужно; в случае ldap -- как минимум
passwd: files ldap
group: files ldap
в случае mysql соответственно
passwd: files mysql
group: files mysql
если и пароли размещены в бд, то ещё нужно будет указать
shadow: files ldap или shadow: files mysql
порядок следования источника учётной информации важен; так при files ldap учётная информация сначала просматривается в /etc/passwd и /etc/group, а затем в бд; при изменении порядка изменится и последовательность просмотра, что (на мой взгляд) более экстремально;
вместо files можно использовать compat -- ни на что не повлияет, это пережиток ранних версий NIS;
также следует соблюдать осторожность при редактировании nsswitch.conf, т.к. изменения вступают в силу сразу; цена ошибки синтаксиса при определённых условиях может оказаться достаточно высокой :); поэтому после редактирования не следует спешить выходить из открытой ssh-сессии, чтобы после проверки изменений можно было исправить возможные ошибки в nsswitch.conf
Спасибо сказали: