Одним из наиболее распространенных способов взаимодействия между компьютерами на базе linux и windows является Samba. Samba - это пакет программ, которые позволяют создавать и обращаться к сетевым дискам и общим папкам на одинаковых или разных операционных системах. Наиболее частым из способов применения Samba является ее настройка в качестве файлового сервера.
В сегодняшней нашей инструкции вы узнаете как выполняется установка и настройка Samba CentOS 8 для обмена файлами между Linux и Windows системами. Доступ к общим папкам сервера будет настроен для в первой части для любого пользователя без запроса пароля, а во второй - с запросом пароля доступа к защищенной общей папке.
Содержание статьи
Установка samba в CentOS 8
Сперва авторизуйтесь на вашем сервере от имени пользователя root. Затем используйте команду приведенную ниже для установки необходимых пакетов:
dnf install samba samba-common samba-client -y


По умолчанию во всех windows компьютерах используется рабочая группа WORKGROUP. Вы можете проверить принадлежность вашего Windows компьютера к этой рабочей группе выполнив следующую команду:
net config workstation

Настройка samba в CentOS 8
Сперва перед началом настройки переименуйте конфигурационный файл Samba для сохранения его резервной копии. Выполняется это действие следующей командой:
mv /etc/samba/smb.conf /etc/samba/smb.conf.default

1. Общий ресурс с анонимным доступом
Теперь создайте на сервере общий ресурс в котором будут хранится файлы и папки с предоставленным к ним анонимным доступом. Для этого вам необходимо создать папку к которой будет предоставлен анонимный доступ:
mkdir -p /srv/samba/anonymous

Затем настройте права и разрешения selinux на доступ к этой папке при помощи следующих команд:
chmod -R 0755 /srv/samba/anonymous
chown -R nobody:nobody /srv/samba/anonymous
chcon -t samba_share_t /srv/samba/anonymous

Теперь создадим новый файл конфигурации Samba следующей командой:
nano /etc/samba/smb.conf

Добавьте в созданный файл следующие строки:

Проверьте настройки Samba запустив следующую команду:
testparm

Теперь вам необходимо добавить службу Samba в брандмауэр и запустить её. Для этого выполните следующие команды:
firewall-cmd --permanent --add-service=samba
firewall-cmd --reload

Запустите и добавьте в автозагрузку сервис Samba:

Теперь на вашей windows машине откройте строку Выполнить находящуюся в меню Пуск или при помощи сочетания клавиш Win+R. В открывшейся строке наберите следующую команду и нажмите ОК либо Enter:
\\centos8

У вас откроется сетевая папка расположенная на вашем CentOS 8 сервере настроенная для анонимного доступа.

Теперь вы можете добавлять требуемые файлы и папки в эту папку предоставляя другим пользователям доступ к ним.

Настройка Samba CentOS 8 для анонимного доступа к данным завершена.
2. Общий ресурс с приватным доступом
Для предоставления доступа к файлам и папкам определенным пользователям создайте защищенную папку Samba. Сперва создайте защищенную группу с пользователями. Для этого выполните следующую команду:
groupadd securedgroup

Теперь добавьте пользователя в группу securedgroup от имени которого будет осуществляться вход в защищенную папку:
useradd demo -G securedgroup

Теперь создайте защищенную общую папку Samba и добавьте к ней необходимые разрешения выполнив следующие команды:
mkdir -p /srv/samba/secured
chmod -R 0770 /srv/samba/secured
chcon -t samba_share_t /srv/samba/secured
chown -R root:securedgroup /srv/samba/secured/

Теперь добавьте пользователя в базу данных и установите для него пароль:
smbpasswd -a demo

Добавьте в файл конфигурации Samba следующие строки:
nano /etc/samba/smb.conf

Затем перезапустите Samba следующей командой:
systemctl restart smb.service

Теперь для того, чтобы получить доступ к защищенной папке вашего CentOS 8 сервера из вашей windows машины откройте строку Выполнить из пункта меню Пуск или при помощи комбинации клавиш Win+R и наберите:
\\centos8

Затем нажмите ОК или клавишу Enter.
При попытке входа в защищенную папку у вас появится окно с требованием ввести имя пользователя и пароль для получения доступа к файлам находящимся в защищенной папке.

После ввода имени пользователя и пароля вы сможете получить доступ к защищенной папке. Теперь вы можете добавлять в нее файлы и папки для того, чтобы поделиться ими только с определенными пользователями.
Выводы
В сегодняшней инструкции мы рассказали вам как выполняется установка samba centos 8, а также как установить и настроить общие папки расположенные на вашем CentOS 8 сервере для того, чтобы вы могли делиться файлами и папками с другими пользователями.
Anubis – это максимально легкое open-source решение, созданное специально для защиты небольших веб-ресурсов от бесконечного потока запросов от ботов и AI парсеров. Этот инструмент можно считать "ядерным вариантом", потому что он заставляет ботов выполнять вычисления похожие на майнинг криптовалюты. Но это неплохая альтернатива для тех, кто не может или не хочет использовать Cloudflare. Посмотреть детали






Большое спасибо за статью!!!
А как связать его с виндовс актив директорией? Дайте инструкцию пожалуйста.
напишите пожалуйста статью как поднять домен AD на самбе в актуальных дистрибутивах
Привет! Всё заработало, но почему когда я пытаюсь повторить то же самое, но с папкой "/home/user/share", папка расшаривается, но доступа из винды нет.
Спасибо за статью она довольно хорошее изложение но не понятно зачем вы вставили столько скринов?
Они только мешают и путают. Приходится лишь листать без конца.
Также в тексе у вас имя сервера rhel8 а на скрине centos8 после чего вы обращаетесь к серверу по netbios имени centos8. Это путает.
Есть ещё вопрос: Зачем вы устанавливаете пакет samba-client?
Большинство инструкций ставят этот пакет но зачем я так и не понял.
Да и samba-common устанавливается как зависимость samba пакета. Явно его можно не указывать.