Автоматическое подключение домашних дисков Active Directory на сервере Linux при входе в систему
У меня есть коробка Centos 5.7, аутентифицирующаяся по Active Directory через PBIS Open (новый LikeWise Open), который работает хорошо. Теперь я пытаюсь заставить сервер автоматически смонтировать домашний каталог AD пользователя, расположенный по адресу //ad.server.dom/shares/home directories
(Да, это место на пути. Я не настраивал это). У каждого пользователя есть каталог с тем же именем, что и у пользователя.
Я пытался заставить работать pam_mount, но у него есть ряд проблем с RedHat и друзьями, и я не могу заставить его работать. Каталог должен быть автоматически смонтирован, чтобы сервер выполнял свою роль. Мое чтение об автомонтировании, кажется, говорит о том, что нет способа заставить его работать с аутентификацией, хотя я счастлив, что оказался неправ. Я посмотрел на этот ресурс, но он требует версию RedHat (то есть CentOS) 6 или выше, и более новые пакеты, чем у меня.
Я могу вручную (как root) смонтировать каталог AD с помощью команды
mount.cifs "//ad.server.dom/Shares/home directories/testuser" /home/local/AD/testuser/nfs_mount/ -o username=testuser
и когда я захожу как testuser
Я могу увидеть все примеры файлов в nfs_share
каталог.
Любые советы в правильном направлении будут высоко оценены. Это будет происходить на сервере в колледже, поэтому он должен быть достаточно стабильным и привести к более широкому внедрению Linux.
1 ответ
Если pam_mount и autofs не работают для вас, вы можете попробовать pam_exec с помощью bash-скрипта. Это неприлично, но это может сработать для вас, посмотрите, сможете ли вы приспособить приведенное ниже под свои нужды:
Добавьте в pam.d/system-config-auth:
auth sufficient pam_exec.so expose_authtok /usr/local/bin/mount_home
session optional pam_exec.so /usr/local/bin/mount_home
Создайте файл /usr/local/bin/mount_home:
#!/bin/bash
case "$PAM_TYPE" in
auth )
head -c -1 | mount.cifs "//ad.server.dom/Shares/home directories/$PAM_USER" /home/local/AD/$PAM_USER/nfs_mount/ -o username=$PAM_USER
;;
close_session )
umount /home/local/AD/$PAM_USER/nfs_mount
;;
esac
exit 0
Я не проверял это, но, возможно, вы можете сделать эту работу для вас. Удачи!