Главная >> Инструкции >> Настройка 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 сервере для того, чтобы вы могли делиться файлами и папками с другими пользователями.

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 пакета. Явно его можно не указывать.

    Ответить

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