замена_корпоративных_решений_microsoft

Table of Contents

Linux. Уровень 4. Замена корпоративных решений Microsoft

Программа курса

Задача курса

  • Дисклеймер, хотелось бы чтобы то, что мы с Вами сделаем, было просто интересным хаком, развлечением, разминкой для инженера, но возможно, что перед Вами эта задача уже возникла всерьез, поэтому, будем поэтапно, “на ходу” заменять в сети предприятия системы Microsoft начиная с Desktop и заканчивая Active Directiory на Open Source решения без потерь привычной функциональности
  • Курс посвящен изучению технологий Single sign-on SSO - единого входа, сквозной аутентификации пользователей и Workplace Innovation (WPI) - универсального рабочего места

Модуль 0. Подготовка стенда в классе

  • Узнать свой номер стенда
  • Проверить наличие дистрибутивов и образов

Часть 1. Использование инфраструктуры Microsoft Active Directory

Модуль 1. Развертывание сети предприятия с использованием MS AD

Теория

Лабораторные работы: Развертывание сети предприятия

1.1 Схема стенда, импорт, настройка и запуск VM gate и server

  • Запускаем процесс импорта winserver2016, подключаем к NAT адаптеру и проводим Развертывание Active Directory, по окончании, подключем к VirtualBox Host-Only Ethernet Adapter и настраиваем .10-й IP адрес
Запустите с правами Administrator

C:\cmder\Cmder.exe

λ bash

λ cd

λ test -d conf && rm -r conf

λ git clone http://val.bmstu.ru/unix/conf.git

λ cd conf/virtualbox/

!!! 4 - это номер курса, вместо X укажите Ваш номер стенда, если не знаете его, спросите преподавателя !!!

λ ./setup.sh X 4

1.2 Настройка сети VM gate

  • Запустить gate
  • Преподавателю запустить импорт будущей системы lin client1
  • Запустить импорт системы win client2
# sh net_gate.sh

# init 6
  • Создать в Putty профиль 192.168.X.1 gate и подключиться

1.3 настройка сервиса DHCP

gate:~# apt update

gate:~# sh conf/dhcp.sh

1.4 Запуск и настройка системы lin client1

!!! Делает преподаватель и выкладывает для всех (уточнив, что в ОО это надо сделать самостоятельно)

!!! Из-за неготовности DNS подключить VM к сети класса, выяснить ip и, через ssh:

gate# dhcp-lease-list

1.5 Регистрируем доменных пользователей

1.6 Запуск, настройка и включение в домен системы windows client2

Вопросы

Модуль 2. Развертывание сервисов на Linux в инфраструктуре MS AD

Теория

Лабораторные работы: Развертывание сервисов

2.1 Сервис HTTP Proxy с GSSAPI аутентификацией

gate# tail -f /var/log/squid/access.log

2.2 Ввод Linux систем в домен с использование Winbind

  • Удаляем пользователей gate* из AD
  • Удаляем файлы с ключами на AD
C:\>del *keytab
  • Удаляем ключи сервисов с gate
gate# rm -v /root/*keytab /etc/krb5.keytab
  • Удалить запись gate из dns

2.3 Файловый сервис CIFS для пользователей домена MS AD на Linux

2.4 Сервис электронной почты (SMTP/IMAP/LDAP/HTTP)

gate# apt install ansible

gate# ansible-playbook conf/ansible/roles/mail.yml

2.5 Сервис GitLab с авторизацией через LDAP

2.6 Сервис мгновенных сообщений и статуса абонента (XMPP)

Обсудить и предложить вебинар: Интеграция Asterisk с системами IM и Presence в инфраструктуре Microsoft AD, часть 1

2.7 Сервис Keycloak

Вопросы

Модуль 3. Добавление рабочих станций Linux в инфраструктуру MS AD

Теория

Лабораторные работы: Добавление рабочих станций Linux

3.0 Подготовка к следующему модулю

3.1 Использование библиотеки PAM

3.2 Использование SSSD/Realmd

3.3 Управление рабочими станциями Linux

3.4 Подключение рабочих станций Linux к файловому сервису CIFS

Вопросы

Модуль 4. Миграция инфраструктуры MS AD на Samba4

Теория

Лабораторные работы: Развертывание сервисов

4.1 Развертывание системы linux server2

  • Клонируем server→server2 в VBox, генерируем новый mac и запускаем
  • Запускаем импорт win client4 (!!! генерируем новый mac)
  • Настраиваем подключение к сети
# ifconfig eth0 inet 192.168.X.12/24

PuTTY

# sh net_server.sh

# hostnamectl set-hostname server2.corpX.un
# cat /etc/hosts
127.0.0.1               localhost

192.168.X.12 server2.corpX.un server2
# cat /etc/network/interfaces
...
        address 192.168.X.12
...
# cat /etc/resolv.conf
search corpX.un
nameserver 192.168.X.10
# init 6

4.2 Настройка Samba 4 контроллером существующего домена

4.3 Замена MS AD на Samba4

4.3.1 Переносим FSMO на новый сервер
4.3.2 Настраиваем сервисы на новый сервер (вариант 1)
  • DNS client и Squid (для тестов user4@client4 - пускать всех, кто прошел аутентификацию)
gate# cat /etc/resolv.conf
search corpX.un
nameserver 192.168.X.12
gate# service squid restart
  • DHCP
gate# cat /etc/dhcp/dhcpd.conf
...
option domain-name-servers 192.168.X.12;
...
gate# service isc-dhcp-server restart
  • Правим настройки клиента DNS рабочей станции слушателя через netsh
4.3.3 Настраиваем сервисы на новый сервер (вариант 2)
  • Останавливаем server
server2# cat /etc/network/interfaces
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
        address 192.168.X.10
        netmask 255.255.255.0
        gateway 192.168.X.1

auto eth0:0
iface eth0:0 inet static
         address 192.168.X.12
         netmask 255.255.255.255
server2# init 6
4.3.4 Удаляем сервер MS AD

Для варианта 2

server2# kinit Administrator

server2# samba-tool dns add server2 corpX.un server A 192.168.X.10

4.4 Проверяем работу инфраструктуры

  • Вводим в домен win client4, подключаемся user4 и проверяем работу GPO по proxy и наличию иконки Thunderbird
  • Настраиваем Thunderbird и Получение списка контактов через LDAP (может понадобиться указать server2), проверяем на client1
  • Добавляем через оснастки (на client2) атрибуты (телефон и email) пользователю user4 и включаем его в группу group1, проверяем CISF + Управление доменом
  • Проверяем работу веб интерфейса к почте и адресную книгу в ней
  • Проверяем работу GitLab

Вопросы

Часть 2. Замена проприетарных решений

Модуль 5. Развертывание KDC

Теория

Лабораторные работы:

5.1 Отключаем системы от домена MS AD

5.2 Добавляем в сеть linux сервер

# sh net_server.sh

# init 6

5.3 Историческая ретроспектива

5.4 Разворачиваем DNS сервер и настраиваем системы на новый DNS

server:~# sh conf/dns.sh
  • Настройка клиента DNS
# cat /etc/resolv.conf
search corpX.un
nameserver 192.168.X.10
  • DNS client
gate# cat /etc/resolv.conf
search corpX.un
nameserver 192.168.X.10
  • DHCP
gate# cat /etc/dhcp/dhcpd.conf
...
option domain-name-servers 192.168.X.10;
...
gate# service isc-dhcp-server restart
  • Правим настройки клиента DNS рабочей станции слушателя через netsh

5.5 Развертывание KDC

5.6 Регистрация рабочих станций в KDC

5.7 Kerberos GSSAPI аутентификация

Вопросы

Модуль 6. Развертывание LDAP каталога

Теория

Лабораторные работы:

6.1 Установка и настройка OpenLDAP

6.2 Хранение учетных записей UNIX в LDAP

6.3 Авторизация с использованием LDAP сервера

gate# 
chown user1 /var/mail/user1
chown -R user1:user1 /home/user1
chown user2 /var/mail/user2
chown -R user2:user2 /home/user2
chown user3 /var/mail/user3
chown -R user3:user3 /home/user3

6.4 "Перемещаемый" профиль

6.5 Хранение дополнительной информации в LDAP

6.6 Аутентификация с использованием LDAP сервера

Вопросы

  1. Что определяет порядок использования файлов /etc/hosts и /etc/resolv.conf для разрешения DNS имен?
  2. Какие поля в учетной записи UNIX используются для аутентификации?
  3. Какие поля в учетной записи UNIX используются для авторизации?
  4. Для чего используется поле GECOS учетной записи пользователя UNIX?
  5. Что такое NIS домен?
  6. Что такое NIS карты?
  7. Какая утилита используется для инициализации NIS карт?
  8. Какая утилита используется для тестирования NIS?
  9. Какие задачи решает библиотека NSS
  10. Какой идентификатор источника данных в NSS позволяет подключить NIS через указание в файлах учетных записей системы строки, начинающейся с символа «+»
  11. Какой командой можно посмотреть учетные записи из всех источников данных?
  12. Какая подсистема (facility) библиотеки PAM позволяет временно запретить регистрацию пользователей?
  13. Какая подсистема (facility) библиотеки PAM может быть использована для создания домашних каталогов пользователей?
  14. По умолчанию, при первом подключении клиента к SSH серверу, он получает предупреждение о недостоверном …
  15. Клиент ssh использует ssh-agent для получения расшифрованного …
  16. Kerberos обеспечивает механизм …
  17. Что такое Kerberos realm (сфера)?
  18. Какие объекты представляются учетными записями (Principal) в Kerberos?
  19. Используется ли в протоколе Kerberos SSL или TLS?
  20. Используются ли в протоколе Kerberos сертификаты?
  21. Что хранится в TGT?
  22. Какая команда может быть использована для получения TGT?
  23. Разница в настройке времени между системами, взаимодействующими по протоколу Kerberos, не должна составлять более …
  24. В каком файле, по умолчанию, на стороне сервера хранятся учетные записи сервисов?
  25. Для чего используется GSSAPI?
  26. Какого типа сервиса должен быть добавлен в KDC для использование Kerberos с сервисом Squid?
  27. Какой режим безопасности должен быть настроен в SAMBA для работы с собственной базой данных пользователей?
  28. Какая утилита используется для управления учетными записями пользователей в файловом сервере SAMBA?
  29. Какого типа сервис должен быть добавлен в KDC для регистрации рабочей станций Windows при использовании Kerberos сферы?
  30. Где хранится пользовательский профиль при использовании Kerberos сферы для аутентификации пользователей рабочих станций Windows?
  31. Какой режим безопасности должен быть настроен в пакете SAMBA для работы с базой данных пользователей в KDC?
  32. В виде какой структуры представляются записи в LDAP?
  33. Для чего используется формат LDIF?
  34. Как в протоколе LDAP называется операция аутентификации?
  35. Что такое DN и RDN в LDAP?
  36. Сколько атрибутов класса (object class) может быть у записи?
  37. Какой утилитой можно добавить учетную запись сервиса UNIX в Microsoft AD?
  38. Какой утилитой можно вывести список сервисов, привязанных к учетной записи Microsoft AD?
  39. Что нужно сделать для хранения в Microsoft AD атрибутов учетных записей UNIX?
  40. Что нужно сделать для развертывания сервиса NFS на Microsoft Windows Server?
  41. Для каких задач предназначен WINBIND?
  42. Какая утилита позволяет проверить работу WINBIND?
  43. Какой ключ утилиты samba-tool используется для расширения схемы для хранения UNIX атрибутов при инициализации контроллера домена Samba4?
  44. Какая утилита используется для управления учетными записями пользователей в контроллере домена Samba4?
  45. Что нужно установить на рабочую станцию Windows для управления контроллером домена Samba4?
  46. Поддерживает ли контроллер домена Samba4 групповые политики?
  47. Какой вариант системы централизованного управления учетными записями самый лучший?

Дополнительные материалы

$x = Read-Host -Prompt "Ваш X"; New-ADUser -Name "gatehttp" -SamAccountName "gatehttp" -AccountPassword(ConvertTo-SecureString -AsPlainText 'Pa$$w0rd' -Force) -Enabled $true -ChangePasswordAtLogon $false -CannotChangePassword $true -UserPrincipalName gatehttp@corp$X.un -DisplayName  gatehttp -PasswordNeverExpires $true

Вебинар

Перед вебинаром:

  1. Удалить образы
  2. Восстановить образы
  3. Возвращаем настройки клиента DNS рабочей станции слушателя через netsh
  4. slmgr /rearm
  5. Отключить wpad
  6. В Squid пускать всех, кто прошел аутентификацию
  7. В smb.conf доступ к общей папке для
valid users = "@CORPX\domain users"
  1. поправить настройку NGINX в gitlab
  2. поправить start.sh ansible-pull

В самом начале вебинара кратко обсудить и продемонстрировать, что у нас есть на этом этапе:

  1. MS AD в локальной сети предприятия с базой учетных записей пользователей
  2. Рабочие станции Windows
  3. Групповые политики для Windows клиентов
  4. запустить импорт windows client4
  5. Сервера Linux с сервисами HTTP Proxy, CIFS, SMTP, IMAP (все на gate, klist)
  6. Адресная книга LDAP (с фото:) и web интерфейс к почте
  7. Рабочие станции Linux (подключены к домену двумя способами, показать на client3)
  8. запустить импорт linux client5
  9. GitLab с авторизацией через LDAP (используется как источник ansible-pull для управления рабочими станциями Linux)
  10. Новый linux server2
замена_корпоративных_решений_microsoft.txt · Last modified: 2024/08/28 12:11 by val