- Установка и настройка Samba в Ubuntu
- Введение
- Установка Samba
- Настройка Samba
- Добавление пользователя сетевого диска
- Подключение к сетевому диску
- Видео
- Как установить и настроить Samba в Ubuntu 18.04
- Подготовка
- Установка Samba в Ubuntu
- Настройка межсетевого экрана
- Настройка глобальных параметров Samba
- Создание пользователей Samba и структуры каталогов
- Создание пользователей Samba
- Настройка общих ресурсов Samba
- Подключение к общему ресурсу Samba из Linux
- Использование клиента smbclient
- Монтирование общего ресурса Samba
- Использование графического интерфейса
- Подключение к общему ресурсу Samba из macOS
- Подключение к общему ресурсу Samba из Windows
- Выводы
Установка и настройка Samba в Ubuntu
Файловый сервер Samba позволяет передавать файлы между серверами и компьютерами по сети. С его помощью, к примеру, вы можете получить доступ к файлам на сервере со своего рабочего компьютера или ноутбука. Ниже я расскажу, как установить и настроить файловый сервер Samba на Ubuntu.
Если вы только планируете устанавливать ubuntu, то можете воспользоваться моей подробной статьей на этот счет — установка ubuntu server. Так же вам может быть интересен мой обзор и сравнение сервера убунту с другими linux системами — Ubuntu Server — обзор для начинающих, сравнение, отзывы.
Введение
Из статьи вы узнаете:
- Как настроить файловый сервер Samba
- Как передавать файлы по локальной сети
- Ubuntu Server
- Локальная сеть для передачи файлов
Если у вас все готово, то приступаем к настройке.
Установка Samba
Для установки Samba, выполняем в консоли:
После того, как установка будет завершена, проверьте, куда установлена samba:
Вы должны увидеть примерно следующее:
Настройка Samba
Когда Samba установлена, можно приступить к настройке. Нам необходимо создать директорию для сетевой папки.
Команда выше создаст пустую папку, которую мы сделаем сетевой. Для этого настраиваем конфиг Самбы. Он живет по адресу /etc/samba/smb.conf . Отредактируем его и добавим новую сетевую директорию.
Добавляем туда следующие строки:
Нажмите Ctrl-O, чтобы сохранить и Ctrl-X, чтобы выйти из редактора nano.
Что мы настроили:
- path — директория для нашей сетевой папки samba
- read only — указали, что файлы в сетевой папке не только для чтения, а значит могут быть изменены
- browsable — сделали возможным просмотр сетевой папки в сетевом окружении обозревателя файлов в операционных системах
Сетевую папку мы настроили, теперь нужно перезагрузить Samba:
Разрешим работу Samba в фаерволе, если он у вас включен:
Все, на этом настройка Samba закончена. Переходим к проверке работы.
Добавление пользователя сетевого диска
Для того, чтобы получить доступ к сетевой папке Samba, необходимо задать пароль пользователя шары. Он уже должен существовать в системе.
shareuser — системный пользователь, у которого будет доступ к сетевой папке. Если получите ошибку:
Failed to add entry for user shareuser.
Значит у вас нет системного пользователя. Добавьте его следующим образом:
Подключение к сетевому диску
Теперь попробуем зайти на сетевой диск Samba. Для этого в обозревателе файлов перейдите по адресу \\10.20.1.16 , где 10.20.1.16 это ip адрес сервера, на котором мы выполняли настройку samba.
Появится запрос на авторизацию. Укажите имя пользователя и пароль, которые мы задали этапом раньше. Вы окажетесь в сетевой директории. Попробуйте туда скопировать несколько файлов.
Если получите ошибку — Нет доступа к целевой папке, Вам необходимо разрешение на выполнение целевой операции, значит у пользователя shareuser нет unix прав на запись в директорию /mnt/share . Исправляем это:
Попробуйте скопировать еще раз. Теперь должно быть все в порядке.
Все, на этом настройка Samba закончена. Удачной работы и хорошего аптайма!
Видео
Как установить и настроить Samba в Ubuntu 18.04
Samba — это бесплатная и открытая повторная реализация сетевого протокола обмена файлами SMB / CIFS, которая позволяет конечным пользователям получать доступ к файлам, принтерам и другим общим ресурсам.
В этом руководстве объясняется, как установить Samba в Ubuntu 18.04 и настроить его как автономный сервер для обеспечения обмена файлами между различными операционными системами по сети.
Мы создадим следующие общие ресурсы и пользователей Samba.
- sadmin — административный пользователь с правами чтения и записи для всех общих ресурсов.
- josh — Обычный пользователь со своим личным файловым хранилищем .
- users — этот общий ресурс будет доступен всем пользователям с разрешениями на чтение и запись.
- josh — этот общий ресурс будет доступен с разрешениями на чтение и запись только пользователям josh и sadmin.
Общие файловые ресурсы будут доступны со всех устройств в вашей сети. Позже в этом руководстве мы также предоставим подробные инструкции о том, как подключиться к серверу Samba из клиентов Linux, Windows и macOS.
Подготовка
Прежде чем продолжить, убедитесь, что вы вошли в систему Ubuntu 18.04 как пользователь с правами sudo .
Установка Samba в Ubuntu
Samba доступна в официальных репозиториях Ubuntu. Чтобы установить его в вашей системе Ubuntu, выполните следующие действия:
Начните с обновления индекса пакетов apt:
Установите пакет Samba с помощью следующей команды:
После завершения установки служба Samba запустится автоматически. Чтобы проверить, запущен ли сервер Samba, введите:
Результат должен выглядеть примерно так, как показано ниже, показывая, что служба Samba активна и работает:
На этом этапе Samba установлена и готова к настройке.
Настройка межсетевого экрана
Если в вашей системе Ubuntu запущен брандмауэр, вам необходимо разрешить входящие UDP-соединения на портах 137 и 138 и TCP-соединения на портах 139 и 445 .
Предполагая, что вы используете UFW для управления своим брандмауэром, вы можете открыть порты, включив профиль Samba:
Настройка глобальных параметров Samba
Прежде чем вносить изменения в файл конфигурации Samba, создайте резервную копию для использования в будущем:
Файл конфигурации по умолчанию, который поставляется с пакетом Samba, настроен для автономного сервера Samba. Откройте файл и убедитесь, что server role установлена на standalone server
По умолчанию Samba прослушивает все интерфейсы. Если вы хотите ограничить доступ к серверу Samba только из своей внутренней сети, раскомментируйте следующие две строки и укажите интерфейсы для привязки:
После этого запустите утилиту testparm чтобы проверить файл конфигурации Samba на наличие ошибок. Если нет синтаксических ошибок, вы увидите Loaded services file OK.
Наконец, перезапустите службы Samba с помощью:
Создание пользователей Samba и структуры каталогов
Для упрощения сопровождения и гибкости вместо использования стандартных домашних каталогов ( /home/user ) все каталоги и данные Samba будут расположены в каталоге /samba .
Чтобы создать каталог /samba введите:
Установите групповое владение sambashare . Эта группа создается во время установки Samba, позже мы добавим в эту группу всех пользователей Samba.
Samba использует систему разрешений пользователей и групп Linux, но имеет собственный механизм аутентификации, отличный от стандартной аутентификации Linux. Мы создадим пользователей, используя стандартный инструмент Linux useradd , а затем установим пароль пользователя с помощью утилиты smbpasswd .
Как мы упоминали во введении, мы создадим обычного пользователя, который будет иметь доступ к его личному файловому ресурсу, и одну административную учетную запись с доступом для чтения и записи ко всем общим папкам на сервере Samba.
Создание пользователей Samba
Чтобы создать нового пользователя с именем josh используйте следующую команду:
Параметры useradd имеют следующие значения:
- -M -не создавать домашний каталог пользователя. Мы создадим этот каталог вручную.
- -d /samba/josh — установить домашний каталог пользователя в /samba/josh .
- -s /usr/sbin/nologin — отключить доступ к оболочке для этого пользователя.
- -G sambashare — добавить пользователя в группу sambashare .
Создайте домашний каталог пользователя и установите владельца каталога на пользователя josh и группу sambashare :
Следующая команда добавит бит setgid в каталог /samba/josh чтобы вновь созданные файлы в этом каталоге унаследовали группу родительского каталога. Таким образом, независимо от того, какой пользователь создает новый файл, у файла будет владелец группы sambashare . Например, если вы не установите права доступа к каталогу на 2770 и пользователь sadmin создаст новый файл, пользователь josh не сможет читать / писать в этот файл.
Добавьте josh запись пользователя josh в базу данных Samba, установив пароль пользователя:
Вам будет предложено ввести и подтвердить пароль пользователя.
После того, как пароль установлен для запуска учетной записи Samba:
Чтобы создать другого пользователя, повторите тот же процесс, что и при создании пользователя josh .
Далее давайте создадим пользователя и группу sadmin . Все члены этой группы будут иметь права администратора. Позже, если вы захотите предоставить административные права другому пользователю, просто добавьте этого пользователя в группу sadmin .
Создайте пользователя с правами администратора, набрав:
Приведенная выше команда также создаст группу sadmin и добавит пользователя в группы sadmin и sambashare .
Установите пароль и включите пользователя:
Затем создайте общий каталог Users :
Установите владельца каталога на пользователя sadmin и группу sambashare :
Этот каталог будет доступен всем авторизованным пользователям. Следующая команда chmod предоставляет доступ для записи / чтения членам группы sambashare в sambashare /samba/users :
Настройка общих ресурсов Samba
Откройте файл конфигурации Samba и добавьте разделы:
Параметры имеют следующие значения:
- [users] и [josh] — имена [josh] ресурсов, которые вы будете использовать при входе в систему.
- path — Путь к общему ресурсу.
- browseable — должен ли общий ресурс отображаться в списке доступных общих ресурсов. Если установить значение « no другие пользователи не смогут видеть общий ресурс.
- read only — могут ли пользователи, указанные в списке valid users , писать в этот общий ресурс.
- force create mode — устанавливает разрешения для вновь созданных файлов в этом общем ресурсе.
- force directory mode — устанавливает разрешения для вновь созданных каталогов в этом общем ресурсе.
- valid users — список пользователей и групп, которым разрешен доступ к общему ресурсу. Группы имеют префикс @ .
Дополнительные сведения о доступных параметрах см. На странице документации файла конфигурации Samba .
После этого перезапустите службы Samba с помощью:
В следующих разделах мы покажем вам, как подключиться к общему ресурсу Samba из клиентов Linux, macOS и Windows.
Подключение к общему ресурсу Samba из Linux
Пользователи Linux могут получить доступ к общему ресурсу samba из командной строки, используя файловый менеджер или смонтировать общий ресурс Samba.
Использование клиента smbclient
smbclient — это инструмент, который позволяет вам получить доступ к Samba из командной строки. Пакет smbclient не установлен предварительно в большинстве дистрибутивов Linux, поэтому вам нужно будет установить его с помощью диспетчера пакетов распространения.
Чтобы установить smbclient в Ubuntu и Debian, запустите:
Чтобы установить smbclient в CentOS и Fedora, запустите:
Синтаксис для доступа к общему ресурсу Samba следующий:
Например, чтобы подключиться к josh ресурсу с именем josh на сервере Samba с IP-адресом 192.168.121.118 от имени пользователя josh вы должны запустить:
Вам будет предложено ввести пароль пользователя.
После ввода пароля вы войдете в интерфейс командной строки Samba.
Монтирование общего ресурса Samba
Чтобы смонтировать общий ресурс Samba в Linux, вам сначала нужно установить пакет cifs-utils .
В Ubuntu и Debian запустите:
В CentOS и Fedora запустите:
Затем создайте точку монтирования:
Подключите общий ресурс с помощью следующей команды:
Например, чтобы смонтировать общий ресурс с именем josh на сервере Samba с IP-адресом 192.168.121.118 от имени пользователя josh в точку монтирования /mnt/smbmount вы должны запустить:
Вам будет предложено ввести пароль пользователя.
Использование графического интерфейса
Files, файловый менеджер по умолчанию в Gnome имеет встроенную возможность доступа к общим ресурсам Samba.
- Откройте файлы и нажмите «Другие места» на боковой панели.
- В поле «Подключиться к серверу» введите адрес smb://samba_hostname_or_server_ip/sharename Samba в следующем формате smb://samba_hostname_or_server_ip/sharename .
- Нажмите «Подключиться», и появится следующий экран:
- Выберите «Зарегистрированный пользователь», введите имя пользователя и пароль Samba и нажмите «Подключиться».
- Будут показаны файлы на сервере Samba.
Подключение к общему ресурсу Samba из macOS
В macOS вы можете получить доступ к общим ресурсам Samba либо из командной строки, либо с помощью стандартного файлового менеджера macOS Finder. Следующие шаги показывают, как получить доступ к общему ресурсу с помощью Finder.
- Откройте «Finder», выберите «Перейти» и нажмите «Подключиться к».
- В поле «Подключиться к» введите адрес smb://samba_hostname_or_server_ip/sharename Samba в следующем формате smb://samba_hostname_or_server_ip/sharename .
- Нажмите «Подключиться», и появится следующий экран:
- Выберите «Зарегистрированный пользователь», введите имя пользователя и пароль Samba и нажмите «Подключиться».
- Будут показаны файлы на сервере Samba.
Подключение к общему ресурсу Samba из Windows
Пользователи Windows также могут подключиться к общему ресурсу Samba как из командной строки, так и из графического интерфейса. Следующие шаги показывают, как получить доступ к общему ресурсу с помощью проводника Windows.
- Откройте проводник и на левой панели щелкните правой кнопкой мыши «Этот компьютер».
- Выберите «Выбрать другое сетевое расположение» и нажмите «Далее».
- В поле «Интернет или сетевой адрес» введите адрес \samba_hostname_or_server_ipsharename Samba в следующем формате \samba_hostname_or_server_ipsharename .
- Нажмите «Далее», и вам будет предложено ввести учетные данные для входа, как показано ниже:
- В следующем окне вы можете ввести собственное имя для сетевого расположения. По умолчанию будет выбран сервер Samba.
- Нажмите «Далее», чтобы перейти к последнему экрану мастера настройки подключения.
- Нажмите «Готово», и будут показаны файлы на сервере Samba.
Выводы
В этом руководстве вы узнали, как установить сервер Samba в Ubuntu 18.04 и создать различные типы общих и пользователей. Мы также показали вам, как подключиться к серверу Samba с устройств Linux, macOS и Windows.