Установка необходимых пакетов на сервере SAMBA Настройка серверов IPA и Samba Настройка сетевого каталога на сервере Samba
Окружение
Для установки пакетов samba перейдите в сеанс пользователя root:
su -
и выполните команду:
dnf install ipa-client sssd-common samba samba-client ipa-client-samba
Установите имя хоста samba-сервера:
hostnamectl set-hostname samba.redosipa.ru
Добавьте запись в /etc/hosts, по какому IP обращаться к домену IPA, например:
10.81.186.174 server.redosipa.ru
Отключите службу:
systemctl disable --now systemd-timesyncd
В сетевых настройках укажите поисковый DNS IPA-сервера, например:
Присоедините файловый сервер к домену IPA:
join-to-domain.sh
Выполните автоматическую конфигурацию системных служб на сервере samba для работы в домене IPA:
authselect select sssd with-fingerprint with-gssapi with-mkhomedir with-smartcard --force
Для правильного распределения DNS выполните следующие команды на сервере IPA:
kinit admin ipa dnsrecord-add redosipa.ru --a-rec=samba --a-ip-address=10.81.186.124
Запустите настройку домена для обработки классов и атрибутов объектов, специфичных для Samba:
ipa-adtrust-install --add-sids reboot
На сервере samba выполните ipa-client-samba, который создаст cifs и отредактирует /etc/samba/smb.conf для работы samba с ipa:
ipa-client-samba
Отредактируйте в файле /etc/samba/smb.conf значение netbios name, указав рабочую группу домена, в данном случае smb.conf будет выглядеть следующим образом:
netbios name
... realm = REDOSIPA.RU netbios name = REDOSIPA workgroup = REDOSIPA ...
Далее отредактируйте секции по примеру из smb.conf:
[global] max smbd processes = 1000 dedicated keytab file = FILE:/etc/samba/samba.keytab kerberos method = dedicated keytab log file = /var/log/samba/log.%m log level = 1 server role = member server realm = REDOSIPA.RU netbios name = REDOSIPA workgroup = REDOSIPA idmap config * : range = 0 - 0 idmap config * : backend = tdb idmap config REDOSIPA : range = 14000000 - 14199999 idmap config REDOSIPA : backend = sss security = ads printing = cups printcap name = cups load printers = yes cups options = raw [homes] read only = no comment = Home Directories valid users = %S, %D%w%S browseable = No read only = No inherit acls = Yes [printers] comment = All Printers path = /var/tmp printable = Yes create mask = 0600 browseable = No [print$] comment = Printer Drivers path = /var/lib/samba/drivers write list = @printadmin root force group = @printadmin create mask = 0664 directory mask = 0775
Создайте структуру ролей и привилегий для samba. Действия выполняются на контроллере домена ipa:
ipa permission-add "CIFS server can read user passwords" --attrs={ipaNTHash,ipaNTSecurityIdentifier} --type=user --right={read,search,compare} --bindtype=permission ipa privilege-add "CIFS server privilege" ipa privilege-add-permission "CIFS server privilege" --permission="CIFS server can read user passwords" ipa role-add "CIFS server" ipa role-add-privilege "CIFS server" --privilege="CIFS server privilege" ipa role-add-member "CIFS server" --services=cifs/samba.redosipa.ru
На samba-сервере внесите изменения в /etc/krb5.conf:
sed -i 's;default_ccache_name = KEYRING:persistent:%{uid};default_ccache_name = FILE:/tmp/krb5cc_%{uid};g' /etc/krb5.conf
Получите тикет и создайте keytab:
kinit admin ipa-getkeytab -s server.redosipa.ru -p cifs/samba.redosipa.ru -k /etc/samba/samba.keytab reboot
На samba-сервере создайте каталог:
mkdir -p /share/
Назначьте права на созданный каталог:
chown -R :users /share chmod -R 777 /share setfacl -m default:user:"admin":rwx /share setfacl -R -m default:user:"admin":rwx /share
Затем настройте метки SELinux:
semanage fcontext -a -t samba_share_t /share/ restorecon -R -v /share/
На контроллере домена IPA получите SID:
net getdomainsid
На файловом сервере samba настройте идентификатор безопасности (введите SID, полученный ранее):
net setdomainsid <SID>
На сервере samba выполните:
net -s /dev/null groupmap add sid=S-1-5-32-546 unixgroup=nobody type=builtin
В /etc/samba/smb.conf укажите настройки для каталога:
[share] path = /share writable = yes browsable=yes valid users = admin read list = admin write list = admin guest ok = no inherit acls = Yes create mask = 0660 directory mask = 0770
Добавьте в автозапуск службы samba и winbind, перезагрузите сервер samba:
systemctl enable smb winbind --now reboot
Для проверки доступности сетевого каталога на сервере samba необходимо получить тикет (если он отсутствует) и выполнить команду подключения к сетевому каталогу:
kinit admin smbclient //samba.redosipa.ru/share -N --use-kerberos=required
В случае, если все настроено верно, появится следующее сообщение:
Try "help" to get a list of possible commands. smb: \>
Дата последнего изменения: 07.10.2024
Если вы нашли ошибку, пожалуйста, выделите текст и нажмите Ctrl+Enter.
Нажимая «Отправить запрос», вы соглашаетесь с условиями обработки персональных данных.
Вы будете получать только актуальную информацию по обновлению безопасности
Подписываясь на уведомления, вы соглашаетесь с условиями обработки персональных данных.
На ваш почтовый адрес отправлено письмо с подтверждением подписки.