Cómo instalar y configurar Samba en CentOS 7 [Parte 1]
Оглавление:
- Предпосылки
- Установка Samba на CentOS
- Настройка брандмауэра
- Создание пользователей Samba и структуры каталогов
- Создание пользователей Samba
- Конфигурирование акций Samba
- Подключение к Samba Share из Linux
- Использование клиента smbclient
- Монтирование общего ресурса Samba
- Использование GUI
- Вывод
Samba - это бесплатная и открытая реализация протокола сетевого обмена файлами SMB / CIFS, который позволяет конечным пользователям получать доступ к файлам, принтерам и другим общим ресурсам.
В этом руководстве мы покажем, как установить Samba в CentOS 7 и настроить его в качестве автономного сервера для совместного использования файлов в разных операционных системах по сети.
Мы создадим следующие общие ресурсы и пользователей Samba.
Пользователи:
- sadmin - Администратор с правами чтения и записи для всех общих ресурсов. josh - обычный пользователь со своей личной папкой.
Акции:
- пользователи - эта папка будет доступна всем пользователям с правами на чтение / запись. josh - этот ресурс будет доступен с правами на чтение / запись только пользователям josh и sadmin.
Файловые ресурсы будут доступны со всех устройств в вашей сети. Далее в этом руководстве мы также предоставим подробные инструкции о том, как подключиться к серверу Samba из клиентов Linux, Windows и macOS.
Предпосылки
Прежде чем начать, убедитесь, что вы вошли в систему CentOS 7 как пользователь с привилегиями sudo.
Установка Samba на CentOS
Samba доступна из стандартных репозиториев CentOS. Чтобы установить его в вашей системе CentOS, выполните следующую команду:
sudo yum install samba samba-client
После завершения установки запустите службы Samba и включите их автоматический запуск при загрузке системы:
sudo systemctl start smb.service
sudo systemctl start nmb.service
sudo systemctl enable smb.service
sudo systemctl enable nmb.service
Служба
smbd
предоставляет службы совместного использования файлов и печати и прослушивает TCP-порты 139 и 445. Служба
nmbd
предоставляет клиентам услуги именования NetBIOS через IP и прослушивает UDP-порт 137.
Настройка брандмауэра
Теперь, когда Samba установлена и работает на вашем компьютере с CentOS, вам нужно настроить брандмауэр и открыть необходимые порты. Для этого выполните следующие команды:
firewall-cmd --permanent --zone=public --add-service=samba
firewall-cmd --zone=public --add-service=samba
Создание пользователей Samba и структуры каталогов
Для удобства обслуживания и гибкости вместо использования стандартных домашних каталогов (
/home/user
) все каталоги и данные Samba будут находиться в каталоге
/samba
.
Начните с создания каталога
/samba
:
sudo mkdir /samba
Создайте новую группу с именем
sambashare
. Позже мы добавим всех пользователей Samba в эту группу.
sudo groupadd sambashare
Установите в качестве владельца группы каталогов
/samba
значение
sambashare
:
sudo chgrp sambashare /samba
Samba использует пользователей Linux и систему разрешений групп, но имеет собственный механизм аутентификации, отличный от стандартной аутентификации Linux. Мы создадим пользователей с помощью стандартного инструмента Linux
useradd
, а затем установим пароль пользователя с помощью утилиты
smbpasswd
.
Как мы упоминали во введении, мы создадим обычного пользователя, который будет иметь доступ к своему личному общему файлу и одну административную учетную запись с правами чтения и записи для всех общих ресурсов на сервере Samba.
Создание пользователей Samba
Чтобы создать нового пользователя с именем
josh
, используйте следующую команду:
sudo useradd -M -d /samba/josh -s /usr/sbin/nologin -G sambashare josh
Параметры
useradd
имеют следующие значения:
-
-M-не создавать домашний каталог пользователя. Мы вручную создадим этот каталог.-d /samba/josh- установить домашний каталог пользователя в/samba/josh.-s /usr/sbin/nologin- отключить доступ к оболочке для этого пользователя.-G sambashare- добавить пользователя в группуsambashare.
Создайте домашний каталог пользователя и установите в качестве владельца каталога пользователя
josh
и группу
sambashare
:
sudo mkdir /samba/josh
sudo chown josh:sambashare /samba/josh
Следующая команда добавит бит setgid в каталог
/samba/josh
чтобы вновь созданные файлы в этом каталоге наследовали группу родительского каталога. Таким образом, независимо от того, какой пользователь создаст новый файл, у него будет группа-владелец
sambashare
. Например, если вы не установите права доступа к
sadmin
2770
а пользователь
sadmin
создает новый файл, пользователь
josh
не сможет читать / записывать в этот файл.
sudo chmod 2770 /samba/josh
Добавьте
josh
запись пользователя
josh
в базу данных Samba, установив пароль пользователя:
sudo smbpasswd -a josh
Вам будет предложено ввести и подтвердить пароль пользователя.
New SMB password: Retype new SMB password: Added user josh.
После того, как пароль установлен, включите учетную запись Samba, введя:
sudo smbpasswd -e josh
Enabled user josh.
Для создания другого пользователя повторите тот же процесс, что и при создании пользователя
josh
.
Далее давайте создадим пользователя и группу
sadmin
. Все члены этой группы будут иметь административные разрешения. Позже, если вы хотите предоставить права администратора другому пользователю, просто добавьте этого пользователя в группу
sadmin
.
Создайте административного пользователя, набрав:
sudo useradd -M -d /samba/users -s /usr/sbin/nologin -G sambashare sadmin
Приведенная выше команда также создаст группу
sadmin
и добавит пользователя в группы
sadmin
и
sambashare
.
Установите пароль и включите пользователя:
sudo smbpasswd -a sadmin
sudo smbpasswd -e sadmin
Затем создайте каталог
Users
доступа
Users
:
sudo mkdir /samba/users
Установите право собственности на каталог для пользователя
sadmin
и группы
sambashare
:
sudo chown sadmin:sambashare /samba/users
Этот каталог будет доступен всем аутентифицированным пользователям. Следующая команда настраивает доступ на запись / чтение для членов группы
sambashare
в
sambashare
/samba/users
:
Конфигурирование акций Samba
Откройте файл конфигурации Samba и добавьте разделы:
sudo nano /etc/samba/smb.conf
/etc/samba/smb.conf
path = /samba/users browseable = yes read only = no force create mode = 0660 force directory mode = 2770 valid users = @sambashare @sadmin path = /samba/josh browseable = no read only = no force create mode = 0660 force directory mode = 2770 valid users = josh @sadmin
Опции имеют следующие значения:
-
и- Имена общих ресурсов, которые вы будете использовать при входе в систему.path- Путь к общей папке.browseable- должен ли общий ресурс быть указан в списке доступных акций. При настройкеnoдругой пользователь не сможет видеть общий ресурс.read only- могут ли пользователи, указанные вvalid usersспискеvalid users, писать в этот общий ресурс.force create mode- устанавливает разрешения для вновь создаваемых файлов в этой общей папке.force directory mode- Устанавливает разрешения для вновь созданных каталогов в этом общем ресурсе.valid users- список пользователей и групп, которым разрешен доступ к общему ресурсу. Группы начинаются с символа@.
Для получения дополнительной информации о доступных параметрах см. Страницу документации файла конфигурации Samba.
После этого перезапустите сервисы Samba:
sudo systemctl restart smb.service
sudo systemctl restart nmb.service
В следующих разделах мы покажем вам, как подключиться к общему ресурсу Samba из клиентов Linux, macOS и Windows.
Подключение к Samba Share из Linux
Пользователи Linux могут получить доступ к общему ресурсу samba из командной строки с помощью файлового менеджера или смонтировать общий ресурс Samba.
Использование клиента smbclient
smbclient
- это инструмент, который позволяет вам получить доступ к Samba из командной строки. Пакет
smbclient
предварительно не установлен в большинстве дистрибутивов Linux, поэтому вам нужно будет установить его вместе с менеджером пакетов распространения.
Чтобы установить
smbclient
в Ubuntu и Debian, выполните:
sudo apt install smbclient
Чтобы установить
smbclient
на CentOS и Fedora, выполните:
sudo yum install samba-client
Синтаксис для доступа к общему ресурсу Samba выглядит следующим образом:
mbclient //samba_hostname_or_server_ip/share_name -U username
Например, чтобы подключиться к
josh
ресурсу с именем
josh
на сервере Samba с IP-адресом
192.168.121.118
качестве пользователя
josh
вы должны выполнить:
smbclient //192.168.121.118/josh -U josh
Вам будет предложено ввести пароль пользователя.
Enter WORKGROUP\josh's password:
После того, как вы введете пароль, вы войдете в интерфейс командной строки Samba.
Try "help" to get a list of possible commands. smb: \>
Монтирование общего ресурса Samba
Для того, чтобы сначала смонтировать общий ресурс Samba в Linux, вам необходимо установить пакет
cifs-utils
.
На Ubuntu и Debian запустите:
sudo apt install cifs-utils
На CentOS и Fedora работают:
sudo yum install cifs-utils
Далее создайте точку монтирования:
sudo mkdir /mnt/smbmount
Смонтируйте общий ресурс с помощью следующей команды:
sudo mount -t cifs -o username=username //samba_hostname_or_server_ip/sharename /mnt/smbmount
Например, чтобы смонтировать ресурс с именем
josh
на сервере Samba с IP-адресом
192.168.121.118
качестве пользователя
josh
в точку монтирования
/mnt/smbmount
вы запустите:
sudo mount -t cifs -o username=josh //192.168.121.118/josh /mnt/smbmount
Вам будет предложено ввести пароль пользователя.
Password for josh@//192.168.121.118/josh: ********
Использование GUI
Файлы, файловый менеджер по умолчанию в Gnome имеет встроенную опцию для доступа к общим ресурсам Samba.
- Откройте «Файлы» и нажмите «Другие местоположения» на боковой панели. В «Подключиться к серверу» введите адрес общей
smb://samba_hostname_or_server_ip/sharenameSamba в следующем форматеsmb://samba_hostname_or_server_ip/sharenamesharename. Нажмите «Подключиться», и появится следующий экран:








Вывод
Из этого руководства вы узнали, как установить сервер Samba в CentOS 7 и создать различные типы общих пользователей и пользователей. Мы также показали, как подключиться к серверу Samba с устройств Linux, macOS и Windows.
самба чентосКак установить и настроить сервер NFS на Centos 8
В этом руководстве вы пройдете шаги, необходимые для настройки сервера NFSv4 в CentOS 8. Мы также покажем вам, как смонтировать файловую систему NFS на клиенте.
Как установить и настроить Redis на Centos 7
Redis - это хранилище структуры данных с открытым исходным кодом в памяти. Он может использоваться в качестве базы данных, кэша и брокера сообщений и поддерживает различные структуры данных, такие как строки, хэши, списки, наборы и т. Д.
Как установить и настроить Samba на Ubuntu 18.04
В этом руководстве объясняется, как установить Samba в Ubuntu 18.04 и настроить его в качестве автономного сервера для совместного использования файлов в разных операционных системах по сети. Мы также предоставим подробные инструкции о том, как подключиться к серверу Samba из клиентов Linux, Windows и macOS.
















