В этой статье мы рассмотрим, как установить и настроить Samba сервер, на RedHat-подобной системе, в моём случае это будет AlmaLinux.
Установка Samba и добавление правил в файрвол (firewall)
Для начала нам необходимо обновить пакеты:
Обратите внимание, что я работаю от обычного пользователя «$:», если вы работаете от root-а «#:», вам не нужно использовать команду sudo.
1 | sudo yum update |
Далее Вам отобразиться [sudo] password for имя_пользователя: , введите пароль (Он не будет отображаться) и нажмите Enter для продолжения.
Соглашаемся на обновление пакетов, жмём «y», а потом Enter:
Соглашаемся на приём данного ключа, жмём «y», а потом Enter:
После того как Вы обновили пакеты, можем приступать к установке Samb-ы:
1 | sudo yum install samba |
Соглашаемся на установку samba и других компонентов, жмём «y», а потом Enter:
После того как Вы установили Samba, необходимо запустить службу и добавить в автозагрузку:
1 | sudo systemctl enable --now {smb,nmb} |
Проверяем, запустилась ли служба, вводим:
1 | sudo systemctl status smb |
Теперь необходимо добавить правила в файрвол по samba:
1 | sudo firewall-cmd --permanent --add-service=samba |
Перезапускаем фаервол:
1 | sudo firewall-cmd --reload |
Создание и настройка пользователя
Теперь необходимо создать пользователя:
1 | sudo adduser -M sambauser -s /sbin/nologin |
Теперь объясню, за что отвечают ключи которые я поставил:
- Ключ -M, означает, что не будет создана пользовательская директория в /home, так как я буду создавать собственную директорию, но об этом чуть дальше в статье, если Вы хотите сохранять файлы в пользовательской директории, не указывайте данный ключ.
- Ключ -s, означает какую оболочку будет использовать данный пользователь, оболочка /sbin/nologin означает, что данный пользователь не сможет войти в консоль, если Вам нужно будет войти в консоль от имени этого пользователя, то можете не указывать данный ключ.
Создадим пароль для пользователя:
1 | sudo smbpasswd -a sambauser |
Создание и настройка директории
Создадим директорию в которой будут храниться данные (пункт не обязателен, если Вы, собираетесь хранить данные в пользовательской директории: /home/имя_пользователя):
1 | sudo mkdir -p /mnt/usershared/ |
Меняем права на директорию /mnt/usershared:
1 | sudo chmod 777 /mnt/usershared/ |
Настройка Samba сервера
Отредактируем файл конфигурации, smb.conf (я буду использовать Vim):
1 | sudo vim /etc/samba/smb.conf |
Вносим конфигурацию:
1 2 3 4 | [linuxconfig] path = /mnt/usershared guest ok = No read only = No |
У вас должно выглядеть аналогично как на изображении:
Для тех, кто хочет хранить данные в пользовательской директории:
1 2 3 4 | [linuxconfig] path = /home/имя_пользователя guest ok = No read only = No |
Пример использования как сетевого диск на Windows 7:
Нажимаем на пункт «Подключить сетевой диск».
Открываеться окно с подключением сетевого диска, в строку «Папка» пишем IP-адрес вашего сервера или имя, я прописал имя сервера, administrator@almalinux — имя нашего samba сервера в локальной сети.
Здесь мы пишем имя пользоватьля и пароль котороые мы создали на samba сервере, чтобы не вводить их каждый раз, поставьте галочку возле «Запомнить учетные данные» и жмём «ОК».
Если у вас не было никаких ошибок, то значит всё сработало и Вы уже на сетевом диске.
Читайте также: Настройка DNS клиента в Linux, файл «resolv.conf».