LINUX.ORG.RU
решено ФорумAdmin

Авторизация в виртуальной машине через AD

 , , ,


0

1

Ситуация такая. Есть виртуальная машина (virtualbox) с бубунтой. По мануалам настроил я там авторизацию в AD (winbind, kerberos, samba - я не очень понимаю, чем они все отличаются). И через putty-подключение она действительно работает. А вот если логиниться в самой машине, в терминале, что открывает virtualbox - пускает только под локальным юниксовым паролем. Мне это не нравится :(

В /etc/pam.d/common-auth написано следующее:

auth    [success=4 default=ignore]      pam_krb5.so minimum_uid=1000 use_first_pass
auth [success=3 default=ignore] pam_unix.so nullok_secure use_first_pass
auth [success=2 default=ignore] pam_winbind.so krb5_auth krb5_ccache_type=FILE cached_login use_first_pass
auth [success=1 default=ignore] pam_ldap.so use_first_pass


В pam-auth-update выставлены все галочки (kerberos, unix, winbind, ldap, create home, Inheritable Capabilities Management).
Отключать unix-авторизацию совсем не хочу - если вдруг чего, я же не попаду на машину.

Помогите включить winbind-авторизацию при локальном логине...




Ларчик просто открывался. В виртуалбоксе не работает нумпад, а я цифровую часть пароля набирал с него.
Всем умникам, которые профессионально указывают на неспособность пользоваться магическими заклинаниями - большое спасибо.

★★★★★

Последнее исправление: Xellos (всего исправлений: 1)
Ответ на: комментарий от dexpl

auth optional pam_faildelay.so delay=3000000
auth [success=ok new_authtok_reqd=ok ignore=ignore user_unknown=bad default=die] pam_securetty.so
auth requisite pam_nologin.so
session [success=ok ignore=ignore module_unknown=ignore default=bad] pam_selinux.so close
session required pam_env.so readenv=1
session required pam_env.so readenv=1 envfile=/etc/default/locale
@include common-auth
auth optional pam_group.so
session required pam_limits.so
session optional pam_lastlog.so
session optional pam_motd.so motd=/run/motd.dynamic noupdate
session optional pam_motd.so
session optional pam_mail.so standard
@include common-account
@include common-session
@include common-password
session [success=ok ignore=ignore module_unknown=ignore default=bad] pam_selinux.so open
Xellos ★★★★★
() автор топика
Ответ на: комментарий от menzoberronzan

Локальный вход:


Apr 17 15:25:41 ubuntu-host login[27012]: pam_krb5(login:auth): authentication failure; logname=USER uid=0 euid=0 tty=/dev/tty1 ruser= rhost=
Apr 17 15:25:42 ubuntu-host login[27012]: pam_unix(login:auth): authentication failure; logname=USER uid=0 euid=0 tty=/dev/tty1 ruser= rhost= user=USER
Apr 17 15:25:42 ubuntu-host login[27012]: pam_winbind(login:auth): getting password (0x00000390)
Apr 17 15:25:42 ubuntu-host login[27012]: pam_winbind(login:auth): pam_get_item returned a password
Apr 17 15:25:42 ubuntu-host login[27012]: pam_winbind(login:auth): request wbcLogonUser failed: WBC_ERR_AUTH_ERROR, PAM error: PAM_USER_UNKNOWN (10), NTSTATUS: NT_STATUS_NO_SUCH_USER, Error message was: No such user
Apr 17 15:25:47 ubuntu-host login[27012]: FAILED LOGIN (1) on '/dev/tty1' FOR 'USER', Authentication failure

Удалённый вход:

Apr 17 15:27:32 ubuntu-host sshd[31022]: pam_krb5(sshd:auth): user USER authenticated as USER@DOMAIN.COM
Apr 17 15:27:32 ubuntu-host sshd[31022]: Accepted password for USER from 10.0.2.2 port 53364 ssh2
Apr 17 15:27:32 ubuntu-host sshd[31022]: pam_unix(sshd:session): session opened for user USER by (uid=0)
Apr 17 15:27:32 ubuntu-host nscd: nss_ldap: reconnecting to LDAP server...
Apr 17 15:27:32 ubuntu-host nscd: nss_ldap: reconnected to LDAP server ldap://dc.domain.com/ after 1 attempt


Логин тот же, пароль тот же в обоих случаях.

Xellos ★★★★★
() автор топика
Последнее исправление: Xellos (всего исправлений: 1)

1. Выкинь самбу с винбиндом и настрой sssd

2. Чаще всего, забывают о pam_mkhomedir

anonymous
()
Ответ на: комментарий от anonymous

При чём тут pam_mkhomedir? Юзер один. Пароль один. Удалённо - пускает, локально - не пускает.

Xellos ★★★★★
() автор топика
Ответ на: комментарий от Xellos

Думаю локальный вход не работает из-за ненастроенного nss и наличия в /etc/pam.d/login этой строчки

auth [success=ok new_authtok_reqd=ok ignore=ignore user_unknown=bad default=die] pam_securetty.so
Для подтверждения - дайте посмотреть на /etc/pam.d/sshd, /etc/nsswitch.conf
Также дайте вывод
getent passwd
aptitude search libnss | grep ^i

menzoberronzan
()
Ответ на: комментарий от Xellos

При чём тут pam_mkhomedi

потому что так понятно объясняешь. Я решил, что пользователь по ssh логинится, а на десктоп — нет. Такое бывает от отсутствия домашнего каталога

anonymous
()
Ответ на: комментарий от anonymous

В pam-auth-update выставлены все галочки
create home

Xellos ★★★★★
() автор топика
Ответ на: комментарий от menzoberronzan

Что именно нужно из getent passwd? Для юзера там

USER:x:1000:27:USER,,,:/home/USER:/bin/bash
$ aptitude search libnss | grep ^i
i A libnss-ldap                     - NSS module for using LDAP as a naming serv
i   libnss-winbind                  - Samba nameservice integration plugins
/etc/pam.d/sshd
@include common-auth
account    required     pam_nologin.so
@include common-account
session [success=ok ignore=ignore module_unknown=ignore default=bad]        pam_selinux.so close
session    required     pam_loginuid.so
session    optional     pam_keyinit.so force revoke
@include common-session
session    optional     pam_motd.so  motd=/run/motd.dynamic
session    optional     pam_motd.so noupdate
session    optional     pam_mail.so standard noenv # [1]
session    required     pam_limits.so
session    required     pam_env.so # [1]
session    required     pam_env.so user_readenv=1 envfile=/etc/default/locale
session [success=ok ignore=ignore module_unknown=ignore default=bad]        pam_selinux.so open
@include common-password
/etc/nsswitch.conf
passwd: files ldap
group: files ldap
shadow: files ldap
hosts:          files dns
networks:       files
protocols:      db files
services:       db files
ethers:         db files
rpc:            db files
netgroup: nis

Xellos ★★★★★
() автор топика
Ответ на: комментарий от Xellos

Хм.. думаю дело в модуле pam_nologin.so, который присутствует в /etc/pam.d/login в секции auth. В /etc/pam.d/sshd этого модуля в секции auth нету, вот и разница. Он как раз отвечает за логин non-root пользователей

pam_nologin is a PAM module that prevents users from logging into the system when /etc/nologin exists. The contents of the /etc/nologin file are displayed to the user. The pam_nologin module has no effect on the root user's ability to log in.

Return Values .... PAM_USER_UNKNOWN User not known to the underlying authentication module.

menzoberronzan
()
Ответ на: комментарий от Xellos

а nsswitch чо? уверен, что у тебя лдап нужного пользователя добывает?

anonymous
()
Ответ на: комментарий от menzoberronzan

Закомментировал. Не спасло.

Xellos ★★★★★
() автор топика
Ответ на: комментарий от anonymous

1. Выкинь самбу с винбиндом и настрой sssd

Нафига, если и так работает?

2. Чаще всего, забывают о pam_mkhomedir

Инкрементирую

dhameoelin ★★★★★
()
Ответ на: комментарий от dhameoelin

как видишь, не работает, плюс, у sssd есть масса полезных фич, которых в самбовинбинде нет

anonymous
()
Ответ на: комментарий от anonymous

А не работает, так как у ТС нет понимания, что он хочет сделать. На хой-то куй он в одной солянке собрал мух, говно и авторизацию. И sssd ему вряд ли поможет.

dhameoelin ★★★★★
()
Ответ на: комментарий от dhameoelin

его настраивать проще, на мой взгляд, потому должно помочь. Хотя если и впрямь нет понимания...

anonymous
()
Ответ на: комментарий от anonymous

Не в облом, глянь кишки пакета по моей ссылке. Если человеку трудно сделать руками то, что я заскриптил - может, ему не надо в админство?!

dhameoelin ★★★★★
()
Ответ на: комментарий от dhameoelin

А я не занимаюсь админством. Уже много лет как. У меня конкретная задача - авторизация через AD. Чтобы и локально, и удалённо логин шёл через AD. Ну и желательно, но необязательно, чтобы при этом самба знала, что я это я, и давала мне сетевые шары.

Xellos ★★★★★
() автор топика
Ответ на: комментарий от Xellos

Так-то я тоже в венде. Если тебе именно скриптота нужна, то я покопаю в направлении. Но завтра. Кастани меня отдельно.

dhameoelin ★★★★★
()
Ответ на: комментарий от Xellos

У меня конкретная задача - авторизация через AD. Чтобы и локально, и удалённо логин шёл через AD. Ну и желательно, но необязательно, чтобы при этом самба знала, что я это я, и давала мне сетевые шары.

Чтобы сделать «что-то» надо знать «как». Если не знаешь - либо учиться, либо нанимать. Иных вариантов я не знаю. Говорят, что некоторые прокачанные начальники умудрялись заводить авторизацию в чём угодно силой служебной записки/приказа. При этом, оставляют за кадром тех, кто реально работал и тех, кто не вынес кретина в кресле и уволился.

dhameoelin ★★★★★
()
Последнее исправление: dhameoelin (всего исправлений: 2)
Ответ на: комментарий от Xellos

Знаю. Я сам попробовал открыть на венде. Скачай на линуксы^Wубунты и открой там. Можешь даже ppa на тест подключить.

dhameoelin ★★★★★
()
Ответ на: комментарий от dhameoelin

Завтра. Я не хочу сейчас логиниться на рабочую машину, у меня пятница, я в изменённом состоянии сознания.

Xellos ★★★★★
() автор топика
Ответ на: комментарий от dhameoelin

Чтобы сделать «что-то» надо знать «как».

Шёл 21 век и рота красноармейцев.
Это такая сложная, требующая максимального интеллекта и высшего технического образования задача - авторизация через ldap? Я делал по убунтовому мануалу. У меня наполовину получилось. Да, меня несколько смущает, что функциональность ldap, kerberos и winbind частично перекрывается, как я понимаю, а у меня задействованы одновременно они все. Но я не хочу разбираться в кишках. Я хочу авторизоваться через AD, и больше ничего. А что такое kerberos и winbind, и как они относятся к виндовой инфраструктуре, нигде простыми словами, не для админов, не сказано.
То есть прямо вот сейчас меня всё устраивает, сабжевая машина - полигон для тестов, обкатки и прочего, но я хочу и на физический рабочий компьютер linux поставить. И я не хочу там тратить целый рабочий день, а то и не один, на настройку авторизации. У меня без того куча несделанной работы, и ещё большая куча работы, которую я хочу сделать, но мне не дают.

Xellos ★★★★★
() автор топика

никогда не говори так - «с бубунтой»

armbox
()
Ответ на: комментарий от dhameoelin

Нажрался - это в говно. А я просто в изменённом состоянии сознания. Я откатал 35 км (четвёртая поездка за сезон), и сижу отмечаю это. Имею право, вот.

Xellos ★★★★★
() автор топика
Ответ на: комментарий от Xellos

Ёжики размножаются в тишине и без посторонних глаз. В том числе, на сиденьях офицеров вермахта.

BTW, я обозначил, что у тебя лишнее. Тебе нужны модули кербероса и winbind. Выкинь к Айсману всё остальное - это не твой случай.

я не хочу разбираться в кишках. Я хочу авторизоваться через AD, и больше ничего.

Тогда изволь знать как. No exceptions.

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

Обратись к системному администратору © же

dhameoelin ★★★★★
()
Последнее исправление: dhameoelin (всего исправлений: 2)
Ответ на: комментарий от Xellos

Я откатал 35 км (четвёртая поездка за сезон), и сижу отмечаю это.

Тебе сколько лет и насколько пересечённая местность была?

Имею право, вот.

Да хоть лево, тут я не спорю.

Да, забыл обосрать:

Это такая сложная, требующая максимального интеллекта и высшего технического образования задача - авторизация через ldap?

Так через что ты авторизовываться и аутентифицироваться собрался? Я предлагаю Kerberos+Winbind. Эту связку даже я смог осилить.

dhameoelin ★★★★★
()
Последнее исправление: dhameoelin (всего исправлений: 1)
Ответ на: комментарий от dhameoelin

Ты здесь раскидал пальцев на целую гоп-группировку, но так и не ответил на простой вопрос. Почему локальная и удалённая авторизация работают по-разному, и как добиться их одинаковой работы?

Xellos ★★★★★
() автор топика
Ответ на: комментарий от Xellos

Это два вопроса.

Про нумлок: сколько времени в итоге у тебя заняли поиск и локализация проблемы?

dhameoelin ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.