241
правка
Dkirienko (обсуждение | вклад) |
Dkirienko (обсуждение | вклад) |
||
| Строка 1: | Строка 1: | ||
<big>'''Это черновик статьи, он может содержать ошибки!'''</big> | |||
При установке на реальное железо нужно проверить, что SELINUX отключён. | |||
== | ==Функционал системы== | ||
Целью является создание школьного сервера со следующим функционалом: | Целью является создание школьного сервера со следующим функционалом: | ||
#Сервер является сервером авторизации для учащихся школы. Каждому учащемуся выдаётся логин и пароль, при помощи которого он может авторизоваться на любом компьютере, включенным в "школьный домен". | #Сервер является сервером авторизации для учащихся школы. Каждому учащемуся выдаётся логин и пароль, при помощи которого он может авторизоваться на любом компьютере, включенным в "школьный домен". | ||
#Домашние каталоги учащихся монтируются по NFS, у каждого учащегося домашний каталог (то есть настройки приложений, файлы) будут идентичны на любом компьютере. | #Домашние каталоги учащихся монтируются по NFS, у каждого учащегося домашний каталог (то есть настройки приложений, файлы) будут идентичны на любом компьютере. | ||
| Строка 19: | Строка 18: | ||
#Kerberos для хранения паролей и авторизации. | #Kerberos для хранения паролей и авторизации. | ||
#SSSD для подключения к LDAP и Kerberos. | #SSSD для подключения к LDAP и Kerberos. | ||
#NFS для доступа к домашним каталогам. | #NFS для доступа к домашним каталогам - /home на клиентах является сетевым разделом, монтируемым с сервера. | ||
Для реализации будет использоваться платформа РОСА 13, как более современная. В настоящий момент для реализации такой конфигурации можно использовать: | Для реализации будет использоваться платформа РОСА 13, как более современная. В настоящий момент для реализации такой конфигурации можно использовать: | ||
| Строка 25: | Строка 24: | ||
#Роса "Фреш" 13, версия Server для сервера. | #Роса "Фреш" 13, версия Server для сервера. | ||
# Роса "Фреш" 13, версия с Plasma 6 или МОС-13 (альфа-версия) для клиентских компьютеров. | # Роса "Фреш" 13, версия с Plasma 6 или МОС-13 (альфа-версия) для клиентских компьютеров. | ||
Скорее всего эти инструкции можно применить для дистрибутивов на базе РОСА-2021.1 (МОС-12) без изменений. | |||
== Установка дистрибутивов и общие идеи конфигурации == | |||
Дистрибутивы Роса "Фреш" 13 можно скачать [https://rosa.ru/rosa-linux-download-links/ по ссылке]. Дистрибутивы Роса "Фреш" доступны для бесплатного использования без каких-либо ограничений (см. лицензионное соглашение при установке). | |||
'''Важно! Поскольку будут настраиваться механизмы авторизации и доступа в домашние каталоги, необходимо при установке как сервера, так и клиентов разрешить вход пользователю root. Это упростит починку системы, если будет что-то сломано в механизмах авторизации или доступа к домашним каталогам /home.''' | |||
На клиентских компьютерах удобно помимо сетевых пользователей завести общий логин типа "user" или "student", функционирование которого не было бы привязано к работе сервера. Это позволит использовать компьютерные классы при проблемах с сетью или сервером. При этом домашний каталог такого пользователя '''НЕ ДОЛЖЕН''' находиться в /home, т.к. при проблемах использование этого каталога будет невозможно. Предлагается разместить домашний каталог такого пользователя в /usr/local/home. Туда же следует перенести и домашний каталог локального администратора системы ''[уточнить, как это сделать]''. | |||
На сервере необходимо вынести /home в отдельный раздел, чтобы при отсутствии свободного места на нём это не повлияло на работу сервера. Рекомендуется использование файловой системы XFS на этом разделе, она считается наиболее быстрой. Наоборот, BTRFS не рекомендуется, т.к. нет смысла создавать снимки на этом разделе. | |||
Желательный размер квоты на одного пользователя - 2-3 гигабайта, поэтому в масштабах одного школьного здания на хранение файлов пользователей следует выделять порядка 1 террабайта дискового пространства. | |||
== Настройка доменных имён == | == Настройка доменных имён == | ||
Для работы Kerberos необходимо, чтобы все компьютеры имели имена (FQDN) и взаимодействовали с использованием FQDN. | Для работы Kerberos необходимо, чтобы все компьютеры имели имена (FQDN) и взаимодействовали друг с другом с использованием FQDN. | ||
Мы предположим, что наша сеть имеет следующий вид. | Мы предположим, что наша сеть имеет следующий вид. | ||
Локальный домен называется sch179.local | Локальный домен называется sch179.local. Далее в инструкциях измените название этого домена на своё. | ||
Сервер имеет IP-адрес 192.168.0.1 и имя server.sch179.local | Сервер имеет IP-адрес 192.168.0.1 и имя server.sch179.local | ||
Клиентский компьютер имеет IP-адрес 192.168.1.1 и имя ws01.sch179.local | Клиентский компьютер в дальнейших инструкциях имеет IP-адрес 192.168.1.1 и имя ws01.sch179.local | ||
Вы можете поднять DNS для разрешения имён | Вы можете поднять DNS для разрешения имён ''[поможет ли в этом Avahi?]''. Но для надёжности и независимости от службы DNS можно создать статические записи для всех компьютеров - на каждом компьютере будут прописаны доменные имена других компьютеров. На клиенте достаточно прописать имя и адрес сервера, на сервере необходимо прописать имена всех подключённых к нему компьютеров в локальной сети. | ||
На сервере запишите в файл /etc/hostname единственную строку<syntaxhighlight lang="ini"> | На сервере запишите в файл /etc/hostname единственную строку<syntaxhighlight lang="ini"> | ||
| Строка 43: | Строка 54: | ||
</syntaxhighlight>На клиенте в аналогичный файл запишите его имя<syntaxhighlight lang="ini"> | </syntaxhighlight>На клиенте в аналогичный файл запишите его имя<syntaxhighlight lang="ini"> | ||
ws01.sch179.local | ws01.sch179.local | ||
</syntaxhighlight>В файл /etc/hosts на сервере добавьте для всех клиентских компьютеров строки вида | </syntaxhighlight>В файл /etc/hosts на сервере добавьте для всех клиентских компьютеров - строки вида<syntaxhighlight lang="ini"> | ||
192.168.1.1 ws01.sch179.local ws01 | |||
</syntaxhighlight>Одна строка соответствует одному компьютеру. Замените в этой строке IP-адрес компьютера, его полное и короткое имя. | |||
На клиентском компьютере запишите в этот файл адрес и имя сервера.<syntaxhighlight lang="ini"> | |||
192.168.0.1 server.sch179.local server | 192.168.0.1 server.sch179.local server | ||
</syntaxhighlight>Если вам нужна графическая оболочка на сервере, установите lxqt - лёгкую и нетребовательную к ресурсам оболочку (команда от root).<syntaxhighlight lang="bash"> | |||
</syntaxhighlight>Если вам нужна графическая оболочка на сервере, установите lxqt | |||
dnf install -y task-lxqt | dnf install -y task-lxqt | ||
</syntaxhighlight>Если вы тестируете установку в VirtualBox, установите гостевые расширения (команда от root).<syntaxhighlight lang="bash"> | </syntaxhighlight>Если вы тестируете установку в VirtualBox, установите гостевые расширения (команда от root).<syntaxhighlight lang="bash"> | ||
| Строка 64: | Строка 68: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==Установка и настройка OpenLDAP== | ==Установка и настройка OpenLDAP на сервере== | ||
=== Установка и запуск LDAP === | === Установка и запуск LDAP === | ||