User Tools

Site Tools


зачем_вводить_системы_linux_в_домен_microsoft

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
зачем_вводить_системы_linux_в_домен_microsoft [2021/03/03 08:57]
val [Техническое задание]
зачем_вводить_системы_linux_в_домен_microsoft [2022/10/15 21:33] (current)
val [3.5 Монтирование домашнего каталога ручном режиме]
Line 6: Line 6:
 ===== Запись вебинара ===== ===== Запись вебинара =====
  
 +  * [[https://​youtu.be/​S7QOkcznEVY|Зачем вводить системы Linux в домен Microsoft?​]]
 ===== Реклама вебинара ===== ===== Реклама вебинара =====
  
Line 14: Line 15:
 ===== Техническое задание ===== ===== Техническое задание =====
  
-  * Сотрудники должны иметь возможность с любой рабочей станции linux работать в личном окружении (файлы, настройки) а так же, с общими с корпоративными файлами.+  * На предприятии используется Microsoft Active Directory. ​Сотрудники должны иметь возможность с любой рабочей станции linux работать в личном окружении (рабочий стол, документы, настройки) а так же, с общими с корпоративными файлами ​совместно с пользователями систем Windows.
  
 ===== Шаг 1. Исходное состояние стенда ===== ===== Шаг 1. Исходное состояние стенда =====
Line 79: Line 80:
  
 <​code>​ <​code>​
 +user1$ klist
 +
 user1$ cd / user1$ cd /
  
Line 87: Line 90:
 # klist # klist
  
-# mount.cifs //​gate.corp13.un/​user1 -o rw,​user,​sec=krb5,noauto,​vers=3.1.1,​uid=`id -u user1`,​gid=`id -g user1` /​home/​user1/​+# mount.cifs //​gate.corp13.un/​user1 -o rw,​user,​sec=krb5,​vers=3.1.1,​uid=`id -u user1`,​gid=`id -g user1` /​home/​user1/​
  
 # ls -l /home/user1 # ls -l /home/user1
Line 121: Line 124:
 if ! id $PAM_USER &>/​dev/​null;​ then if ! id $PAM_USER &>/​dev/​null;​ then
         useradd -m -s /bin/bash $PAM_USER         useradd -m -s /bin/bash $PAM_USER
-        sed -i.bak -e "/​\/​home\/​$PAM_USER/​d"​ /etc/fstab 
         echo //​gate.corp13.un/​corp_share /​home/​$PAM_USER/​Public cifs rw,​user,​sec=krb5,​noauto,​vers=3.1.1 0 0 >> /etc/fstab         echo //​gate.corp13.un/​corp_share /​home/​$PAM_USER/​Public cifs rw,​user,​sec=krb5,​noauto,​vers=3.1.1 0 0 >> /etc/fstab
 fi fi
Line 130: Line 132:
 ===== Шаг 4. Клонируем конфигурацию рабочей станции ===== ===== Шаг 4. Клонируем конфигурацию рабочей станции =====
  
-  * [[Сервис Ansible]]+  * Задание - использовать ​[[Сервис Ansible]]
  
 <​code>​ <​code>​
Line 150: Line 152:
  
 gate# scp -3 $client1:/​usr/​share/​libpam-script/​pam_script_ses_open $clientN:/​usr/​share/​libpam-script/​ gate# scp -3 $client1:/​usr/​share/​libpam-script/​pam_script_ses_open $clientN:/​usr/​share/​libpam-script/​
 +</​code>​
 +
 +===== Исправления и альтернативные варианты =====
 +
 +==== 0. Wrong path for pam_script.so ====
 +
 +  * [[https://​bugs.debian.org/​cgi-bin/​bugreport.cgi?​bug=983183|Debian Bug report logs - #983183 libpam-script:​ Wrong path for pam_script.so]]
 +
 +==== 1. Создание несуществующих в AD учетных записей ====
 +
 +  * [[Использование библиотеки PAM]]
 +
 +В вебинаре создание учетной записи происходит до проверки ее подлинности,​ поэтому лучше расположить модули так:
 +
 +<​code>​
 +# cat /​etc/​pam.d/​common-auth
 +</​code><​code>​
 +...
 +auth    [success=2 default=ignore] ​     pam_krb5.so minimum_uid=1000
 +auth    [success=1 default=ignore] ​     pam_unix.so nullok_secure try_first_pass
 +auth    requisite ​                      ​pam_deny.so
 +auth    sufficient ​                     pam_script.so
 +auth    required ​                       pam_permit.so
 +...
 +</​code>​
 +
 +==== 2. Через 10 часов сессия монтирования домашнего каталога устаревает ====
 +
 +Вариант решения - не удалять в скрипте /​tmp/​krb5cc_0 и обновлять TGT через cron
 +
 +<​code>​
 +client1:~# crontab -l
 +</​code><​code>​
 +0 */8 * * * kinit -R >/​dev/​null 2>&1
 +</​code>​
 +
 +Усиливается проблема (уже была) параллельного подключения нескольких пользователей к рабочей станции
 +
 +==== 3. Желательно удалять возможные записи для пользователя в /etc/fstab перед его созданием в скрипте ====
 +
 +Особенно,​ если для отладки пользователи постоянно создаются/​удаляются
 +
 +<​code>​
 +...
 +  sed -i.bak -e "/​\/​home\/​$PAM_USER/​d"​ /etc/fstab
 +...
 +</​code>​
 +
 +==== 4. Можно поручить монтирование домашних каталогов systemd ====
 +
 +<​code>​
 +# cat /​usr/​share/​libpam-script/​pam_script_auth
 +</​code><​code>​
 +#!/bin/bash
 +
 +if ! id $PAM_USER &>/​dev/​null;​ then
 +        useradd -m -s /bin/bash $PAM_USER
 +
 +        sed -i.bak -e "/​\/​home\/​$PAM_USER/​d"​ /etc/fstab
 +        echo //​gate.corp13.un/​$PAM_USER /​home/​$PAM_USER cifs rw,​user,​sec=krb5,​noauto,​vers=3.1.1,​uid=`id -u $PAM_USER`,​gid=`id -g $PAM_USER` 0 0 >> /etc/fstab
 +        echo //​gate.corp13.un/​corp_share /​home/​$PAM_USER/​Public cifs rw,​user,​sec=krb5,​noauto,​vers=3.1.1 0 0 >> /etc/fstab
 +
 +        systemctl daemon-reload
 +fi
 +</​code><​code>​
 +# cat /​usr/​share/​libpam-script/​pam_script_ses_open
 +</​code><​code>​
 +#!/bin/sh
 +
 +cp /​tmp/​krb5cc_`id -u $PAM_USER`* /​tmp/​krb5cc_0
 </​code>​ </​code>​
зачем_вводить_системы_linux_в_домен_microsoft.1614751050.txt.gz · Last modified: 2021/03/03 08:57 by val