Как настроить сервер и клиент Samba на AlmaLinux

Как настроить сервер и клиент Samba на AlmaLinux

 

В этом руководстве мы рассмотрим инструкции по настройке сервера Samba в AlmaLinux . Это отличный способ подготовить файловый сервер после установки AlmaLinux или перехода с CentOS на AlmaLinux . Мы также увидим, как подключиться к файловому серверу с других клиентских компьютеров AlmaLinux.

В этом уроке вы узнаете:

  • Как установить Samba на AlmaLinux
  • Как разрешить Samba через firewalld
  • Как создать пользователя Samba
  • Как настроить Samba для совместного использования каталога
  • Как разрешить Samba через SELinux
  • Как подключиться к серверу Samba из клиента AlmaLinux

 

Шаг 1. Как установить Samba AlmaLinux

Первым шагом является установка Samba на AlmaLinux, если она еще не установлена ​​в системе. Используйте следующую команду для установки необходимых пакетов Samba через диспетчер пакетов dnf.

$ sudo dnf install samba samba-client

После того как пакеты установлены, мы должны начать и включить smbи в nmbдемон при загрузке. Первый — это демон, который выполняет фактические передачи и операции совместного использования, а второй выполняет NetBIOSразрешение имен, позволяя ресурсам появляться при просмотре сети в Windows. Теперь мы можем включить и запустить обе службы systemd всего одной командой:

$ sudo systemctl enable --now {smb,nmb}

Шаг 2. Как разрешить Samba через firewalld

AlmaLinux поставляется с включенным firewalld по умолчанию, и он будет блокировать другие подключения с других компьютеров, которые пытаются получить доступ к нашей службе Samba. Мы можем разрешить правильные порты через firewalld , выполнив следующие команды. Обязательно добавьте --zoneпараметр в свою команду, если это необходимо для вашей конфигурации.

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

Шаг 3. Как создать пользователя Samba

Можно настроить общий ресурс Samba, для подключения к которому не требуются учетные данные, но в большинстве ситуаций это непрактично из-за очевидной проблемы безопасности. Вместо этого лучше создать учетные записи пользователей для людей, которые будут подключаться к общему ресурсу Samba.

Каждому пользователю Samba потребуется обычная учетная запись пользователя в системе AlmaLinux. Это не означает, что вы должны предоставить им домашний каталог, оболочку или что-то в этом роде, но им все равно потребуется учетная запись пользователя. Если у них уже есть учетная запись пользователя в системе, этого будет достаточно. В противном случае нам нужно будет создать новую учетную запись. Используйте следующую команду, чтобы создать новую учетную запись пользователя для нашей общей папки Samba.

$ sudo adduser -M sambauser -s /sbin/nologin

Параметр, -Mпереданный команде, представляет собой краткую форму для --no-create-home, которая не требует пояснений. А -sопция позволяет указать оболочку, в этом случае недопустимого один на цели: /sbin/nologin. Нет необходимости устанавливать пароль для этой учетной записи, только пароль для службы Samba.

Создайте пароль Samba для вновь созданного пользователя с помощью следующей команды:

$ sudo smbpasswd -a sambauser
New SMB password:
Retype new SMB password:
Added user sambauser.

Шаг 4. Как настроить Samba для совместного использования каталога

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

В нашем примере мы сделаем наш общий каталог по адресу /mnt/shared.

$ sudo mkdir -p /mnt/shared
$ sudo chmod 777 /mnt/shared

Теперь давайте отредактируем файл конфигурации Samba, чтобы сообщить службе об этом новом каталоге, которым мы хотели бы поделиться. Используйте nano или ваш любимый текстовый редактор, чтобы открыть следующий файл конфигурации.

$ sudo nano /etc/samba/smb.conf
Дойдите до конца этого файла и вставьте следующие строки.
[linuxconfig]
        path = /mnt/shared
        guest ok = no
		read only = no

Обратите внимание, что в этом примере мы назвали наш общий ресурс linuxconfig, заключив его в скобки. Вам нужно будет знать это имя при монтировании общего ресурса на удаленном сервере.

Сохраните изменения в файле и выйдите из него. Затем перезапустите службу Samba, чтобы новые изменения вступили в силу.

$ sudo systemctl restart {smb,nmb}

Шаг 5. Как разрешить Samba через SELinux

SELinux включен в AlmaLinux по умолчанию. Нам нужно будет назначить соответствующий контекст нашему общему каталогу и файлам с помощью следующей команды. Это позволит Samba функционировать, сохраняя при этом SELinux в рекомендованном принудительном режиме.

$ sudo chcon -R -t samba_share_t /mnt/shared

Шаг 6. Как подключиться к серверу Samba из клиента AlmaLinux

Теперь у нас есть полностью функциональный сервер Samba с выделенным пользователем Samba и общим каталогом. Другие системы должны иметь возможность подключаться к этому каталогу, чтобы загружать или скачивать файлы с сервера Samba. В этом разделе будет показано, как подключиться к серверу Samba из другой (клиентской) системы AlmaLinux.

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

$ sudo mkdir -p /mnt/fileserver

Затем используйте mountкоманду для монтирования удаленного общего ресурса Samba в только что созданную папку. Вы можете использовать либо имя хоста удаленного компьютера, либо IP-адрес.

$ sudo mount -t cifs -o username=sambauser //192.168.1.10/linuxconfig /mnt/fileserver

После ввода пароля общий ресурс Samba будет смонтирован.

Кроме того, вы можете получить доступ к общему ресурсу Samba из файлового менеджера GNOME, введя следующий синтаксис. При необходимости замените IP-адрес.

smb://127.0.0.1/linuxconfig/

После входа в систему общий ресурс Samba будет смонтирован в левой части файлового менеджера GNOME.

Шаг 7. Заключительные мысли

В этом руководстве мы узнали, как установить Samba на AlmaLinux. Мы также увидели, как создать общий ресурс Samba, пользователя Samba и настроить брандмауэр и SELinux для разрешения Samba. Затем мы прошли шаги по подключению к нашему серверу Samba с клиентской машины. Использование этого руководства должно позволить вам создать файловый сервер, на котором могут размещаться соединения из различных операционных систем.