Настройка файлового сервера Samba в Ред ОС — руководство

Настройка файлового сервера Samba в Ред ОС: руководство

Для быстрого запуска системы совместного доступа к файлам установите необходимый пакет:

dnf install -y samba

После установки проверьте, активен ли демон:

systemctl status smb

Если он не запущен, активируйте его:

systemctl enable --now smb

Настройка конфигурационного файла /etc/samba/smb.conf требует указания рабочей группы, разрешений и параметров безопасности. Добавьте в конец файла секцию с параметрами доступа:

[Общий_каталог]
path = /mnt/share
read only = no
browsable = yes
valid users = @users

Затем создайте каталог и задайте права:

mkdir -p /mnt/share
chown -R root:users /mnt/share
chmod -R 2775 /mnt/share

Добавьте пользователя в систему и настройте ему пароль для аутентификации:

useradd -m пользователь
passwd пользователь
smbpasswd -a пользователь

Перезапустите службу для применения изменений:

systemctl restart smb

Проверьте доступность ресурса с клиентского устройства, используя команду:

smbclient -L //имя_сервера -U пользователь

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

firewall-cmd --permanent --add-service=samba
firewall-cmd --reload

Дополнительно проверьте SELinux, если он активен:

setsebool -P samba_enable_home_dirs on

В таблице ниже приведены основные порты, используемые для работы службы:

Читайте также:  Как установить Python 3.11 на CentOS 9/8 и Fedora
Протокол Порт Описание
SMB 445 Основной порт для связи
NetBIOS Name Service 137 Разрешение имен
NetBIOS Datagram Service 138 Передача сообщений
NetBIOS Session Service 139 Старый протокол соединения

Этот фрагмент содержит четкие инструкции с командами и пояснениями. Если нужно добавить что-то еще, уточните.

Создание и настройка общих папок с разными уровнями доступа

Для управления доступом создаются каталоги с индивидуальными правами. Конфигурация выполняется в файле /etc/samba/smb.conf. Добавьте секции с различными параметрами доступа.

Пример конфигурации для каталога с доступом только для чтения:

[public]
path = /srv/samba/public
read only = yes
guest ok = yes

Директория создается вручную:

mkdir -p /srv/samba/public
chmod 755 /srv/samba/public
chown -R nobody:nogroup /srv/samba/public

Для каталога с аутентификацией:

[secure]
path = /srv/samba/secure
valid users = @users
read only = no
create mask = 0640
directory mask = 0750

Создание каталога и назначение прав:

Читайте также:  Создание скриншота на компьютере с Ред ОС - пошаговая инструкция

mkdir -p /srv/samba/secure
chmod 770 /srv/samba/secure
chown -R root:users /srv/samba/secure

Добавление пользователей и установка пароля:

useradd -M -s /sbin/nologin user1
smbpasswd -a user1

Перезагрузка службы после внесения изменений:

systemctl restart smb

Разграничение прав можно также реализовать через списки управления доступом (ACL). Пример для группы «staff» с полным доступом и остальных пользователей только на чтение:

setfacl -m g:staff:rwx /srv/samba/secure
setfacl -m o::r /srv/samba/secure

Пример конфигурации и уровни доступа:

Раздел Путь Доступ Группа/Пользователи
[public] /srv/samba/public Чтение Гости
[secure] /srv/samba/secure Чтение/Запись Группа users

После внесения изменений рекомендуется проверить доступ с клиентской машины:

smbclient -L //server_ip -U user1

Раздел содержит конкретные команды для управления пользователями и их правами, а также таблицу с основными директивами.

Решение распространённых проблем при настройке Samba

Ошибка: «NT_STATUS_ACCESS_DENIED» при подключении

Проблема может быть связана с некорректными разрешениями на каталог. Проверьте владельца и права:

ls -ld /путь/к/каталогу

При необходимости исправьте:

chown -R пользователь:группа /путь/к/каталогу
chmod -R 0770 /путь/к/каталогу

Ошибка: Клиент не видит общий ресурс

Читайте также:  Командная строка Linux

Проверьте, запущена ли служба:

systemctl status smb

Если не работает, запустите:

systemctl start smb

Убедитесь, что порты 137-139 и 445 открыты:

firewall-cmd --list-ports

При необходимости откройте:

firewall-cmd --add-service=samba --permanent
firewall-cmd --reload

Ошибка: «Failed to restart smb.service: Unit smb.service not found»

В системе может отсутствовать нужный пакет. Проверьте:

rpm -q samba

Если не установлен, добавьте:

dnf install samba

Ошибка: «NT_STATUS_BAD_NETWORK_NAME»

Проверьте, существует ли объявленный ресурс:

testparm -s

Если ресурс отсутствует, добавьте его в конфигурацию.

Ошибка: «The specified network password is not correct»

Добавьте пользователя в базу:

smbpasswd -a имя_пользователя

Убедитесь, что он есть в системе:

getent passwd имя_пользователя

Ошибка: Проблемы с кодировкой

Если русские символы отображаются некорректно, проверьте параметры:

[global]
unix charset = UTF-8
dos charset = CP866

Ошибка: «Unable to mount location – Failed to retrieve share list from server»

Проверьте, отвечает ли служба:

nmblookup -S имя_хоста

Если нет ответа, проверьте настройки NetBIOS.

Таблица часто используемых команд

Команда Описание
testparm Проверка конфигурации
smbpasswd -a пользователь Добавление пользователя
systemctl restart smb Перезапуск службы
firewall-cmd —add-service=samba Разрешение доступа

Видео по теме статьи [Настройка файлового сервера Samba в Ред ОС]

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *