Главная >> Инструкции >> Настройка Samba в CentOS 8

Настройка Samba в CentOS 8

Одним из наиболее распространенных способов взаимодействия между компьютерами на базе 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

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

[global]
workgroup = WORKGROUP
server string = Samba Server %v
netbios name = rhel8
security = user
map to guest = bad user
dns proxy = no

[Anonymous]
path = /srv/samba/anonymous
browsable =yes
writable = yes
guest ok = yes
read only = no

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

testparm

Теперь вам необходимо добавить службу Samba в брандмауэр и запустить её. Для этого выполните следующие команды:

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

firewall-cmd --reload

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

systemctl start smb.service
systemctl enable smb.service
systemctl start nmb.service
systemctl enable nmb.service

Теперь на вашей 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

 

[secured]
path = /srv/samba/secured
valid users = @securedgroup
guest ok = no
writable = yes
browsable = yes

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

systemctl restart smb.service

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

\\centos8


Затем нажмите ОК или клавишу Enter.

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

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

Выводы

В сегодняшней инструкции мы рассказали вам как выполняется установка samba centos 8, а также как установить и настроить общие папки расположенные на вашем CentOS 8 сервере для того, чтобы вы могли делиться файлами и папками с другими пользователями.

Pеклама
Посмотреть детали

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

Creative Commons License
Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна .

5 комментариев к “Настройка Samba в CentOS 8”

  1. Привет! Всё заработало, но почему когда я пытаюсь повторить то же самое, но с папкой "/home/user/share", папка расшаривается, но доступа из винды нет.

    Ответить
  2. Спасибо за статью она довольно хорошее изложение но не понятно зачем вы вставили столько скринов?
    Они только мешают и путают. Приходится лишь листать без конца.
    Также в тексе у вас имя сервера rhel8 а на скрине centos8 после чего вы обращаетесь к серверу по netbios имени centos8. Это путает.

    Есть ещё вопрос: Зачем вы устанавливаете пакет samba-client?
    Большинство инструкций ставят этот пакет но зачем я так и не понял.
    Да и samba-common устанавливается как зависимость samba пакета. Явно его можно не указывать.

    Ответить

Оставьте комментарий