- Введение
- Возможности Samba
- Samba как контроллер домена (инструмент astra-sambadc)
- Подготовка компьютера
- Ввод клиента Astra Linux в домен AD
- Проверка успешности присоединения к домену
- Настройка Samba server
- Samba
- Быстрая установка
- Быстрая настройка и запуск
- Настройка анонимного разделяемого каталога
- Тонкая настройка
- Инструменты командной строки для samba
- Настройка клиентов
- Простой доступ к ресурсам
- Монтирование ресурсов
- Автоматическое монтирование ресурсов
Введение
В состав дистрибутивов Astra Linux входит пакет программ Samba, обеспечивающий совместимость со средой Microsoft Active Directory (далее — AD).
Samba позволяет компьютерам с ОС Astra Linux выступать как в роли контроллера домена AD, так и в роли клиента домена AD.
Помимо пакета Samba в состав дистрибутивов Astra Linux входят консольные и графические средства, позволяющие быстро инициализировать Active Directory домен или подключиться к уже существующему домену AD.
Возможности Samba
• Служба аутентификации на базе Kerberos v5;
• LDAP-совместимая служба каталогов с поддержкой репликации;
• Поддержка групповых политик;
• Поддержка доверительных отношений;
• DNS-сервер на базе BIND или собственной реализации.
Samba как контроллер домена (инструмент astra-sambadc)
В состав Astra Linux входят инструменты обеспечивающие сценарии автоматизированной настройки и построения нового контроллера домена или включения в существующий домен в роли контроллера домена.
- Инструмент командной строки:
Установить эти инструменты можно с помощью графического менеджера пакетов или из командной строки:
При установке инструментов автоматически будут установлены необходимые для работы домена AD пакеты samba, winbind и ntp.
Samba как контроллер домена поддерживает два режима работы с DNS:
- с использованием встроенного DNS-сервера Samba;
- с использованием DNS-сервера bind9. Если предполагается, что будет использоваться сервер bind9 следует установить его и установить пакет dnsutils:
Подготовка компьютера
- Рекомендуется назначить компьютеру постоянный IP-адрес. Допускается использовать динамическое назначение адресов, но при этом должно быть настроено автоматическое обновление адресов (настройка работы в таком режиме выходит за рамки данной статьи, см. статьи DHCP-сервер ISC-DHCP).
Если используется получение адреса по DHCP, то отдельно следует обеспечить, чтобы вместе с адресом по DHCP не принимались посторонние имя поискового домена и адрес сервера DNS. Общие инструкции по настройке см. в статье Настройка сетевых подключений в Astra Linux.
# Generated by NetworkManager search sambadomain.ru nameserver 192.168.27.251
При использовании службы автоматической настройки сети NetworkManager этот файл нельзя редактировать напрямую, и следует использовать инструменты NetworkManager. Общие инструкции по настройка см. в статье Настройка сетевых подключений в Astra Linux.
Для создания нового домена с помощью инструмента командной строки используется команда:
Для содания нового домена с использованием DDNS следует дополнительно использовать опцию -b, например:
Данные, необходимые для создания домена и не указанные в аргументах команды при выполнении команды будут запрошены в интерактивном режиме.
Дополнительная информация по использованию команды доступна при выполнении команды astra-sambadc с параметром -h:
Графический инструмент после установки доступен для запуска из командной строки или через систему меню: «Пуск» — «Панель управления» — «Сеть» — «Настройка сервера Active Directory»
Ввод клиента Astra Linux в домен AD
В состав дистрибутивов Astra Linux входит графический инструмент:
реализующие сценарий автоматизированной настройки компьютера Astra Linux для ввода в существующий домен AD.
При написании этой статьи в качестве контроллера домена Active Directory использовался демонстрационный образ Windows Server 2012 R2, доступный на WEB-сайте Microsoft, в качестве клиентов использовались компьютеры под управлением Astra Linux Common Edition и Astra Linux Special Edition.
Перед вводом компьютера в домен необходимо настроить на этом компьютере :
- службу разрешения имён (DNS) так, чтобы в качестве сервера DNS использовался сервер DNS этого домена. Если этого не сделать, то контроллер домена не будет обнаружен;
- службу времени, чтобы обеспечить точные показания часов. При некорректных показаниях часов невозможна доменная аутентификация с использованием Kerberos. Если из-за скачков времени в кеш попадают записи из будущего то даже при синхронизированных часах аутентификация остается невозможной, и при входе пользователя выдается предупреждение вида «Failed to establish your Kerberos Ticket cache due time differences with the domain controller. Please verify the system time.». Для устранения этой ошибки необходимо очистить кеш командой:
Для ввода компьютера в домен используется команда:
Данные, необходимые для ввода в домен и не указанные в аргументах команды, будут запрошены в интерактивном режиме.
Дополнительная информация по использованию команды доступна при выполнении команды astra-winbind с параметром -h:
Графический инструмент для ввода компьютера в существующий домен AD fly-admin-ad-client после установки доступен для запуска из командной строки или через систему меню:
Проверка успешности присоединения к домену
Для проверки успешности присоединения к домену рекомендуется использовать команду:
Дополнительно, можно использовать различные варианты команды wbinfo, например проверка регистрации:
Список пользователей домена:
Настройка Samba server
1. Обновляем информацию о репозиториях и устанавливаем обновления для существующих пакетов в системе:
apt-get update && apt-get upgrade
2.Устанавливаем пакет Samba:
apt-get install -y samba samba-client
3.Создадим директории для файлов, например в каталоге /media:
4.Создаем каталог для всех пользователей:
5.Изменим права доступа к каталогу:
sudo chmod -R 777 /media/samba/public
6.С помощью системных инструментов создадим группу пользователей:
7.Добавляем пользователей Samba:
8.Созданных пользователей добавляем в группу:
usermod -aG smbgrp superuser
9.С помощью инструментов Samba создадим пароль для добавленного пользователя:
10. С помощью текстового редактора, например, nano, редактируем конфигурационный файл samba:
Удаляем все строки из файла. Вставляем следующие:
11. Проверяем настройки с помощью команды:
13. Настроим межсетевой экран. Для этого в правилах откроем TCP-порты 139 и 445, а также UDP-порты 137 и 138, но только для тех подсетей, которым доверяете. Для указания собственного диапазона адресов, замените значение после ключа “-s”:
iptables -A INPUT -p tcp -m tcp --dport 445 -s 192.168.1.0/24 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 139 -s 192.168.1.0/24 -j ACCEPT
iptables -A INPUT -p udp -m udp --dport 137 -s 192.168.1.0/24 -j ACCEPT
iptables -A INPUT -p udp -m udp --dport 138 -s 192.168.1.0/24 -j ACCEPT
14.Для сохранения правил и применения их после перезагрузки сервера следует воспользоваться пакетом iptables-persistent. Установим его:
apt-get install iptables-persistent
Входе установки пакета, программа предложит запомнить существующие правила iptables. Подтверждаем это действие.
15.Для проверки существующих правил используем:
Настройка на АРМ пользователя клиента.
1. Для подключения к общим папкам из среды Linux требуется установка отдельного программного обеспечения — smbclient. Установим:
sudo apt-get install smbclient
2.Для подключения к серверу добавляем новое место в сети:
3. Вносим данные для подключения:
4. Если настроено все по инструкции должно получиться вот так:
Samba
Пакет samba (с поддержкой MIT Kerberos) входит в стандартные дистрибутивы Astra Linux, но по умолчанию не устанавливается.
Дополнительно, в стандартный дистрибутив входит графический инструмент для настройки samba — fly-admin-samba .
Вариант samba с поддержкой Heimdal Kerberos доступен по ссылке.
Быстрая установка
Установку можно сделать из Графический менеджер пакетов synaptic, или из командной строки.
Можно сразу установить графический инструмент администрирования fly-admin- samba , пакет samba при этом установится автоматически:
После установки графического инструмента он станет доступен в меню «Пуск» > «Панель управления» > «Сеть» > «Общие папки (Samba)»
Быстрая настройка и запуск
Для быстрой настройки сервиса запустите графический инструмент:
С помощью графического инструмента возможно выполнение большинства действий по администрированию разделяемых ресурсов сервиса samba :
- Задание имени рабочей группы;
- Запуск/остановка сервиса;
- Определение разделяемых ресурсов;
- Определение списка пользователей;
- Настройка аутентификации пользователей через Kerberos;
Настройка анонимного разделяемого каталога
Приведенные ниже настройки предоставляют полный доступ как на чтение, так и на запись ко всем файловым объектам каталога всем пользователям без аутентификации.
- Убедиться, что в секции [global] присутствует параметр map to guest, имеющий значение Bad User, в случае отсутствия — добавить его в секцию:
Параметр разрешает работу пользователей, не прошедших аутентификацию, в том числе работу с анонимными разделяемым ресурсами;
[share] comment = guest ok = yes force user = nobody force group = nogroup path = /srv/share read only = no
Параметры force user и force group принудительно обеспечивают для всех подключений к ресурсу подключение от имени nobody («никто») и группы nogroup («никакая»), что ограничивает возможность несанкционированных действий, однако применение этих параметров имеет нежелательный побочный эффект: все файловые объекты, создаваемые на ресурсе имеют владельца
Тонкая настройка
Основной файл настройки сервиса samba — /etc/samba/smb.conf — содержит значительное количество комментариев по проведению настройки.
После изменения имени рабочей группы в файле /etc/samba/smb.conf
для того, чтобы изменения немедленно стали доступны другим машинам
нужно перезапустить не только сервис samba (smbd), но и сервис nmbd, обслуживающий запросы имён netbios:
Инструменты командной строки для samba
- Для того, чтобы проверить разделяемые ресурсы samba, доступные в сети, можно использовать команду
Эта команда выводит дерево рабочих групп, и принадлежащих им ресурсов (файлов, принтеров и пр.) всех серверов samba, доступных в сети.
- Список ресурсов конкретного сервера с именем hostname:
Настройка клиентов
Простой доступ к ресурсам
Для доступа к ресурсам следует использовать пункт «Сеть» — «Создать сетевое место» в верхнем меню файлового менеджера, в открывшейся форме ввода указать имя сервиса, и его адрес.
Примеры форматов задания адресов имеются непосредственно в форме ввода.
Монтирование ресурсов
Для монтирования ресурсов на клиентские машины следует установить пакет cifs-utils, который входит в дистрибутивы, но по умолчанию не устанавливается:
Автоматическое монтирование ресурсов
Для того, чтобы сетевой ресурс монтировался при загрузке системы, необходимо в конфигурационный файл /etc/fstab добавить строчку вида:
Комментарий по используемым и возможным опциям:
Имя файла, содержащего логин и пароль samba для автоматического монтирования. Формат файла:
Параметр domain можно не указывать, если доменное имя не используется.
Логин и пароль можно указать непосредственно в файле /etc/fstab (опции username= и password=), однако,
следует помнить, что файл /etc/fstab обычно открыт на чтение для всех пользователей,
так что логин и пароль рекомендуется указывать в отдельном файле, с ограниченным доступом.
Клиент не выполняет проверку прав доступа. Это позволяет предоставить доступ к файловым объектам этой точки монтирования другим локальным пользователям клиентской системы.
Обычно используется, когда сервер поддерживает Unix-расширения CIFS (CIFS Unix Extensions), а идентификаторы пользователей/групп на клиенте и сервере различаются, что не позволяет корректно проверять права доступа.
Этот параметр не влияет на обычную проверку списков контроля доступа (ACL) на целевой машине, выполняемую на сервере (проверка пользовательских ACL на сервере выполняется при монтировании).