Linux не видит доменного пользователя

Обновлено: 06.07.2024

Некоторое время назад на работе достался мне для работы ноутбук HP ProBook 6460b. Ну и пришла в голову идея поставить на него вместо надоевшей Windows 7 Pro давно понравившуюся мне Ubuntu 14.04 Trusty LTS. Выбор операционной системы связан с тем, что Ubuntu я использую на домашнем ноутбуке и мне захотелось иметь такую же систему на рабочем компьютере. Потому, что постоянное переключение между ОСями дома и на работе быстро надоело мне и я решился на установку Ubuntu на рабочем ноуте.

Процесс установки Убунты на ноутбук не буду пересказывать потому, что не вижу в этом смысла из-за большого количества таких мануалов на просторах интернета. Скажу только то, что устанавливал с флешки, а образ на флешку писал на рабочем ноутбуке под Windows 7 Pro с помощью программы Rufus. Хватит про установку, перейдем к процессу введения в домен.
При вводе в домен Windows я пользовался стандартной инструкцией по вводу в домен. В процессе ввода в домен возникали проблемы самого разного характера (в основном связанные с моей невнимательностью и легкой кривизной рук :-) ). Да инструкция на русском языке есть и она довольно хороша, но я все же пользовался не только этой инструкцией, но и другими подсказками с прочих сайтов и форумов. Поэтому я решил собрать из всех одну свою.

Первое что необходимо сделать это - правильно и вполне логично! - обновиться:

Далее нас потребуется установить клиенты Kerberos , Samba и Winbind для нормальной и адекватной работы в домене Windows . Сделать это можно одной командой:

Лично я пробовал два варианта установки: первый - как указано выше - установка всех необходимых пакетов одной строкой, и второй - установка каждого паке в отдельности. Честно признаюсь, что меня больше устроил и больше понравился вариант отдельной установки каждого пакета. Поясню это тем, что при комплексной установке у меня начальная настройка пакета Kerberos не происходила, и я решил (точнее не решил, а мне пришлось из-за кривизны рук и невнимательности переустанавливать полностью Ubuntu и соответственно все необходимые пакеты) ставить все пакеты по отдельности в вышеуказанном порядке. Это дало свои плоды. На этапе установки пакеты Kerberos произошла его полная настройка где указывались все необходимые параметры для работы в домене (собственно сам домен, необходимые для авторизации DC , рабочие группы или зоны). Далее я поставил Самбу и Винбинд с которыми каких-либо заморочек не было. Так же я установил указанные желательными библиотеки libpam-krb5 , libpam-winbind и libnss-winbind . Их я устанавливал одной командой, т.к. они не требуют никаких ручных настроек и просто желательно их присутствие в системе.

Для начала необходимо изменить настройки DNS на вашей машине, прописав в качестве DNS-сервера доменконтроллер и в качестве домена поиска - нужный домен. Если у вас статический IP-адрес, то в Ubuntu Desktop это можно сделать через Network Manager, в Ubuntu Server необходимо изменить содержимое файла /etc/resolv.conf на примерно такое:

Можно было бы добавить еще один nameserver , но я этого делать не стал потому, что у нас в сети компании он единственный. Для применения изменений необходимо перезапустить службу:

Теперь необходимо проверить файл /etc/hostname и убедиться в том, что мы правильно задали имя нашего ноутбука.

Кроме всего прочего необходимо отредактировать файл /etc/hosts так, чтобы в нем была запись с полным доменным именем и обязательно с коротким именем. У меня получился такой формат:

Сразу необходимо проверить, что наш контроллер домена пингуется нормально по короткому и по полному доменному именам:

Не обязательно конечно, но как говорится в инструкции “желательно” при внесении каких-либо изменений делать перезагрузку. Лично я так и делал.

Тут собственно говоря ничего сложного! Я просто единожды выполнил команду:

и забыл про это дело. Другие варианты развития я не вижу смысла освещать в статье т.к. они мне не понадобились.

Собственно переходим к самому основному: настройка авторизации через Kerberos

Настройка авторизации по протоколу Kerberos осуществляется простым редактированием файла /etc/krb5.conf . Вот примерный его вид:

Это конечно далеко не все, что настраивается но уже сейчас возможно проверить способность авторизации в домене. Для этого достаточно выполнить команду:

Убедиться в том, что билет получен, можно с помощью команды:

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

Для того, чтобы войти в домен, необходимо прописать правильные настройки в файле /etc/samba/smb.conf . На данном этапе нас интересуют только некоторые параметры секции [global] . Вот примерный вариант файла:

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

В случае правильного изменения файла /etc/samba/smb.conf вы увидите примерно следующее:

В случае успешного входа вы увидите на экране примерно следующее:

Я снова не стану описывать все возможные ошибки, потому что и ежу понятно, что если появились ошибки значит ты сделал что-то не так. Поэтому скажу только одно: RTFM friend!

На данном этапе вы можете установить себе smbclient :

и проверить доступность ресурсов, хотя бы, на доменконтроллере:

Вы должны будете увидеть список доступных ресурсов на доменконтроллере

Если вам необходимо работать с пользователями домена, например, настраивать SMB-шары с разграничением доступа, то вам понадобится кроме самой Samba ещё и Winbind - специальный демон, служащий для связи локальной системы управления пользователями и группами Linux с сервером Active Directory . Проще говоря Winbind нужен, если вы хотите видеть пользователей домена на своём компьютере с Ubuntu.

Winbind позволяет спроецировать всех пользователей и все группы AD в вашу Linux систему, присвоив им ID из заданного диапазона. Таким образом вы сможете назначать пользователей домена владельцами папок и файлов на вашем компьютере и выполнять любые другие операции, завязанные на пользователей и группы.

Для настройки Winbind используется всё тот же файл /etc/samba/smb.conf . Добавьте в секцию [global] следующие строки:

Строки с параметрами idmap config указаны с новыми параметрами не характерными для старых версий Samba, поэтому на данном этапе будьте внимательнее. Старый формат этих строк можно посмотреть в официальной инструкции по вводу в домен.

Теперь вам необходимо перезапустить демон Winbind и Samba . Для этого соблюдая порядок команд, выполните их поочередно:

Смотрим есть ли ошибки или предупреждения, если появится: rlimit_max: rlimit_max (1024) below minimum Windows limit (16384) , то отредактировать файл /etc/security/limits.conf :

После перезапуска проверьте, что Winbind установил доверительные отношения с AD командой

А так же, что Winbind увидел пользователей и группы из AD командами:

Эти две команды должны выдать список пользователей и групп из домена соответственно. Либо с префиксом DOMAIN , либо без него - в зависимости от того, какое значение вы указали параметру winbind use default domain в /etc/samba/smb.conf .

Итак, Winbind работает, однако в систему он еще не интегрировал.

Для того, чтобы ваша Ubuntu прозрачно работала с пользователями домена, в частности, чтобы вы могли назначать пользователей домена владельцами папок и файлов, необходимо указать Ubuntu использовать Winbind как дополнительный источник информации о пользователях и группах.

Для этого измените две строчки в файле /etc/nsswitch.conf :

добавив к ним в конце winbind :

Так же рекомендую привести строку hosts: в файле /etc/nsswitch.conf к виду:

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

После выполнения первой команды вы должны увидеть содержимое вашего файла /etc/passwd и пользователей вашего домена AD из указанного диапазона в файле /etc/samba/smb.conf . Вторая команда вернет все то же самое, только для групп.

Несмотря на то, что все пользователи домена фактически стали полноценными пользователями системы (в чём можно убедиться, выполнив последние две команды из предыдущего раздела), зайти ни под кем из них в систему всё ещё нельзя. Для включения возможности авторизации пользователей домена на компьютере с Ubuntu необходимо настроить PAM на работу с Winbind .

Для он-лайн авторизации я лично подредактировал парочку файлов. Первый файл, который я редактировал это /etc/pam.d/common-session и добавил в него всего одну строчку:

Вторым был файлик /etc/lightdm/user.conf . В него необходимо добавить строчку в самый конец файла:

На этом собственно говоря все готово! Перезагружаемся и входим под учетной записью доменного пользователя.

Часто возникает ситуация, когда домен-контроллер недоступен по различным причинам — профилактика, отключение света или вы принесли ноутбук домой и хотите поработать. В этом случае для Winbind можно настроить кэширование учетных записей пользователей домена. Для этого необходимо сделать следующее. Добавьте в секцию [global] файла /etc/samba/smb.conf следующие строки:

Обычно этого достаточно. Если же возникают ошибки, то необходимо создать файл /etc/security/pam_winbind.conf со следующим содержанием:

Файл /etc/pam.d/gnome-screensaver в таком случае принимает вид:

А также изменяется файл /etc/pam.d/common-auth :

На этом вроде бы все :-)

После всех проделанных операций наша машина на Ubuntu стала полноценным членом домена Windows и теперь с ней могу работать пользователи AD .

Было мягко говоря не легко. Тяжело было собрать информацию, относящуюся именно к моей Ubuntu 14.04 Trusty LTS .

Ошибка «Failed to join domain: failed to lookup DC info for domain 'win.ad' over rpc: The attempted logon is invalid. This is either due to a bad username or authentication information.»

Причина: в команде ввода в домен неправильно указано имя администратора домена или пароль:

  • Указанный пользователь не имеет необходимых прав;
  • В файле /etc/resolv.conf указаны неверные данные, либо данные отсутствуют;
  • Неправильно указаны данные (например, после смостоятельного внесения изменений) в файле /etc/nsswitch.conf.
  • Использовать правильный логин или пароль, а также проверить вход от имени администратора домена;
  • При настройке сети указать правильные данные сервера (серверов) DNS и правильный поисковый домен;
  • Вернуть файл /etc/nsswitch.conf к исходному состоянию.

Ошибка: «Failed to join domain: Invalid configuration ("workgroup" set to 'ASTRA', should be 'WIN') and configuration modification was not requested»

Причина: неправильно указано имя рабочей группы (NetBIOS).

Решение: указать правильное имя рабочей группы (NetBIOS).

Ошибка: «Failed to join domain: Failed to set account flags for machine account (NT_STATUS_ACCESS_DENIED)»

Причина: в команде ввода в домен указано имя компьютера уже испольованное в домене AD (например, имя другого ПК).

  1. Изменить имя компьютера, вводимого в домен:
    1. Изменить имя ПК в файле /etc/hosts и в файле /etc/hostname;
    2. Перезагрузить ПК;
    3. повторить ввод в домен AD;

    Проблема с авторизацией после ввода в домен

    Причина: не синхронизировано время контроллера домена и клиента.

    Решение: проверить синхронизацию времени с контроллером домена AD, для чего выполнить команду:


    Дополнительно проверить синхронизацию времени с контроллером домена AD, если нет информации об ошибке. В /var/log/auth.log отображается следующее:

    Конфликтующие модули в pam-стеке (winbind и sssd)

    Причина: одновременное использование пакетов winbind и sssd.

    Решение: использовать только пакеты winbind или только sssd. Для удаления ненужного пакета выполнить команду:

    Для удаления пакета sssd:

    sudo apt purge *sss*

    или для удаления пакета winbind:

    sudo apt purge *winbind*

    Если в дальнейшем будет использоваться пакет winbind, то выполнить команду:


    где в появившемся окне снять чек-бокс с модуля sss authentication:

    См. также следующий раздел "Исправление параметров в файле /etc/krb5.conf при использовании winbind"

    Исправление параметров в файле /etc/krb5.conf при использовании winbind

    Если иные способы не помогают, то при проблемах с входом пользователя можно попробовать д обавить в файл /etc/krb5.conf в секцию [realms] следующие параметры:


    Вместо "@WINDOMAIN.AD" и "@windomain.ad" указать свой домен:

    Если после изменения файла /etc/krb5.conf возникает ошибка входа, необходимо проверить правильность написания параметров.

    Ошибка "Проблема установки" при использовании sssd

    Причина: ошибка "проблема установки" может возникать, если раннее ПК был введен в домен AD с использованием winbind.

    Решение: выполнить следующие команды:

    sudo apt purge *winbind*
    sudo astra-ad-sssd-client -U -y

    После чего перезагрузить ПК и повторить ввод в домен AD.

    Ошибка: «Your account has been locked. Please contact your System administrator»

    Причина: пользователь заблокирован на контроллере домена AD.

    Решение: разблокировать доменного пользователя на контроллере домена AD.

    Ошибка «Не могу войти в домашний каталог. Временный каталог будет использован»

    Причина: компьютер ранее вводился в домен разными способами (winbind или sssd).

    Проверить настройку PAM-стека;

    Временно перенести папку .fly из домашнего каталога проблемного пользователя в любое удобное место;

    При использовании Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6) установить обновление БЮЛЛЕТЕНЬ № 20210611SE16 (оперативное обновление 7), где исправлена данная ошибка.

    ПК вводится в домен, но не создаются и не обновляются DNS записи при использовании sssd

    Причина: для динамического обновления записей DNS необходима утилита nsupdate, которая содержится в пакете dnsutils, не устанавливаемом по умолчанию.

    Столкнулся на днях с неожиданной ошибкой в samba, на которую потратил пару часов, пока не разобрался, в чем дело. Проблема возникла на файловом сервере linux, включенном в домен Windows. Использовал свою стандартную конфигурацию, но тут она почему-то подвела.

    Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на . Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.

    Нужно было добавить очередной сервер с samba в домен для использования в качестве файлового хранилища. Я такие вещи часто проделываю и у меня есть стандартная конфигурация самбы для этого дела. В зависимости от типа системы, бывают незначительные отличия в разных дистрибутивах, я сначала завожу машину в домен, проверяю что все работает, затем настраиваю самбу.

    В этот раз все то же самое было. У меня имелась система CentOS 6. Добавил ее в домен, как описано в статье, заменив некоторые команды, так как они отличаются в 6-й и 7-й версии. Прошел все проверки, все было на первый взгляд нормально.

    Проверка samba на ошибки

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

    При этом все проверки wbinfo возвращают пользователей, группы, доверительные отношения и прочее. Билетик керберос нормально получается. Файл nsswitch.conf был правильно отредактирован, все как полагается. Не проходила следующая проверка:

    выводил только локальных пользователей, а должен и доменных.

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

    Ответ нашел в интернете, хотя и не разу. Некоторые советы по решению схожих ошибок мне не помогли. А помогло вот что. У меня в конфмге самбы есть такие строки:

    После того, как я их заменил на:

    Все заработало. Простая смена backend с tdb на rid не помогала, необходимы были дополнительные параметры. Я до конца не стал вникать, что это такое и в чем принципиальная разница. Понял только, что через этот инструмент winbind взаимодействует с утилитами AD. После замены бэкенда все заработало как и должно.

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

    Как же мне теперь разблокировать доменную учетную запись в Linux системе, созданную в Active Directory? __________________
    Помощь в написании контрольных, курсовых и дипломных работ здесь


    Согласны ли вы с мнением, что конечный пользователь – это пользователь, не работающий с системой
    Согласны ли вы с мнением, что конечный пользователь – это пользователь, не работающий.

    Пользователь вводит целое число Вывести его в СС которую введет пользователь до 16СС
    7) Пользователь вводит целое число. Вывести его в СС которую введет пользователь до 16СС

    Вывод чатов в которых наш пользователь - админ,но пользователь,которого мы приглашает не состоит
    Функция должна получить чаты в котором наш пользователь - админ,и получить чаты в которых.

    Пользователь вводит целое число Вывести его в СС которую введет пользователь до 10СС
    6) Пользователь вводит целое число. Вывести его в СС которую введет пользователь до 10СС

    UPD:
    Как оказалось, пользователь был заблокирован по причине неправильного ввода пароля более 10 раз. Но попытки эти были не подряд - а накопились со временем. Разблокировать удалось так
    Зайти под root и выполить:
    А теперь вопрос: Почему успешный вход в систему не сбрасывает кол-во неудачных входов в систему?

    Ошибка Kernel driver not installed (rc=-1908) linux в VirtualBox (Linux Mint)
    При попытке запустить ВМ в VB вылетает ошибка Kernel driver not installed (rc=-1908)Смотрел в.

    Разметка в Linux жесткого диска для дуалбут MS-DOS и Linux
    У меня, значит, на стационарном старичке стоит жесткий на 2 Тб. Win XP такие цифры не знает, а вот.

    Linux mint + win 8 + uefi + hibernate - пропал загрузчик linux
    Здравствуйте, скажу сразу, линукс установил впервые, поэтому может вопрос будет нубский. На ноуте.


    Нужен компилятор под linux mint или linux ubuntu
    Нужен компилятор под linux mint или linux ubuntu. Желательно голенький компилятор без редактора, и.

    Читайте также: