Итак, я использую webmin для создания пользователя ldap. Затем я вручную создаю папку public_html и устанавливаю квоту для вновь созданной домашней папки. Есть ли способ выполнять команды, когда пользователь впервые входит в систему, или есть способ автоматически устанавливать квоту и создавать папки, когда пользователь создается через webmin?
Set up Home directory Общий подход заключается в настройке шаблона домашнего каталога вашего нового пользователя в файле /etc/skel.
После включения модуля PAM pam_mkhomedir, который создаст домашний каталог пользователя при первом входе в систему (если его ещё нет), модуль pam_mkhomedir PAM создаст домашний каталог пользователя, если его нет существуют, когда сессия начинается. Это позволяет пользователям присутствовать в центральной базе данных (такие как NIS, kerberos или LDAP) без использования распределенной файловой системы или предварительное создание большого количества каталогов. Каталог скелета (обычно /etc/skel/) используется для копирования файлов по умолчанию, а также устанавливает маску для создания.
где модуль pam_mkhomedir включен, в точности зависит от вашего дистрибутива, но, например, на RHEL6 это будет файл /etc/pam.d/system-auth
, в который вы добавите строку
session optional pam_keyinit.so revoke
session required pam_limits.so
session [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid
session required pam_mkhomedir.so skel=/etc/skel/ umask=0022
session required pam_unix.so
с правильным каталогом шаблонов (/etc/skel) и маской umask.
Quota Установка квоты зависит от базовой файловой системы, IIRC на файловых системах EXT[2-4] вы должны явно устанавливать квоты для каждого (нового) пользователя, но XFS позволяет установить значение квоты по умолчанию для каждого уникального пользователя в каждой файловой системе XFS.
pam_exec Позволяет pam выполнять определённые команды каждый раз, когда пользователь входит в систему. Вы можете создать скрипт (который заменяет вышеописанные шаги), который проверяет, существует ли домашний каталог пользователей, если не подготавливает домашний каталог, конфигурирует квоту и всё остальное, что вы хотите настроить.
session required pam_unix.so
session required pam_exec.so /sbin/setup_newuser.sh $PAM_USER
Мой ответ не очень похож на webmin, но он сэкономит вам много кликов в будущем из-за автоматизации.
Вы можете автоматизировать весь процесс создания домашних папок и генерации скрипта входа по умолчанию:
Ссылки, которые я дал, предназначены для Ubuntu, но я считаю, что для других основных дистрибутивов он не очень отличается.
.