yandex
Калькулятор ценТарифыАкцииДокументацияО насКарьера в Cloud.ruНовостиЮридические документыКонтактыРешенияРеферальная программаКейсыПартнерство с Cloud.ruБезопасностьEvolutionAdvancedEvolution StackОблако VMwareML SpaceВ чем отличия платформ?БлогОбучение и сертификацияМероприятияИсследования Cloud.ruЛичный кабинетВойтиЗарегистрироватьсяEvolution ComputeEvolution Managed KubernetesEvolution Object StorageEvolution Managed PostgreSQL®Облако для мобильных и веб‑приложенийАналитика данных в облакеEvolution Bare MetalEvolution SSH KeysEvolution ImageСайт в облакеEvolution DNSEvolution VPCEvolution Load BalancerEvolution Magic RouterEvolution DiskХранение данных в облакеEvolution Container AppsEvolution Artifact RegistryEvolution Managed ArenadataDBEvolution Managed TrinoEvolution Managed SparkАналитика данных в облакеEvolution ML InferenceEvolution Distributed TrainEvolution ML FinetuningEvolution NotebooksCurator Anti-DDoSCurator Anti‑DDoS+WAFUserGate: виртуальный NGFWStormWall: Anti-DDoSEvolution TagsEvolution Task HistoryCloud MonitoringCloud LoggingАренда GPUAdvanced Object Storage ServiceAdvanced Elastic Cloud ServerAdvanced Relational Database Service for PostgreSQLРазработка и тестирование в облакеAdvanced Image Management ServiceAdvanced Auto ScalingDirect ConnectCDNCross-platform connectionAdvanced Enterprise RouterAdvanced Cloud Backup and RecoveryAdvanced Data Warehouse ServiceAdvanced Elastic Volume ServiceAdvanced Cloud Container EngineAdvanced FunctionGraphAdvanced Container Guard ServiceAdvanced Software Repository for ContainerAdvanced Document Database Service with MongoDBAdvanced Relational Database Service for MySQLAdvanced Relational Database Service for SQL ServerCloud AdvisorAdvanced Server Migration ServiceAdvanced Data Replication ServiceAdvanced API GatewayAdvanced CodeArtsAdvanced Distributed Message Service for KafkaAdvanced Distributed Message Service for RabbitMQAdvanced DataArts InsightAdvanced CloudTableAdvanced MapReduce ServiceAdvanced Cloud Trace ServiceAdvanced Application Performance ManagementAdvanced Identity and Access ManagementAdvanced Enterprise Project Management ServiceVMware: виртуальный ЦОД с GPUVMware: виртуальный ЦОДУдаленные рабочие столы (VDI)VMware: сервер Bare MetalИнфраструктура для 1С в облакеУдаленные рабочие столыМиграция IT‑инфраструктуры в облако3D-моделирование и рендерингVMware: резервное копирование виртуальных машинVMware: резервный ЦОДVMware: резервное копирование в облакоVMware: миграция виртуальных машин
Поиск
Связаться с нами

Установка и настройка файлового сервера Samba на Ubuntu: полное руководство

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

Инструкции
Иллюстрация для статьи на тему «Установка и настройка файлового сервера Samba на Ubuntu: полное руководство»
Продукты из этой статьи:
Иконка-Evolution Image
Evolution Image
Иконка-Evolution Object Storage
Evolution Object Storage
Иконка-Evolution Compute
Evolution Compute

Что такое сервер Samba и какие возможности он дает

Допустим, в вашем офисе есть устройства с разными ОС: Windows, macOS и Linux. При этом сотрудникам, работающим на Windows нужны доступы к общим файлам, которые хранятся на компьютерах коллег с Linux. А сотрудникам с компьютерами на macOS важно иметь возможность распечатывать документы на принтере, подключенном к устройству на Windows. Что делать? Использовать файловый сервер Samba.

Samba — свободное программное обеспечение (ПО), которое позволяет устройствам на разных ОС иметь совместный доступ к файлам и принтерам в локальных сетях.

Дарим до 20 000 бонусов
Дарим до 20 000 бонусов
4 000 бонусов — физическим лицам, 20 000 бонусов — юридическим

В основе работы Samba лежит протокол SMB/CIFS — именно он дает компьютерам возможность получать доступ к файлам и принтерам на устройствах с другими ОС. Этот протокол поддерживается на Windows, и уже через Samba — на Linux и macOS.

Какие преимущества есть у Samba:

  1. Совместимость с разными ОС: Windows, Linux, macOS. С Samba не нужно привязываться к определенной платформе — с ним пользователи одной организации могут работать на разных ОС, при этом обмениваться файлами и свободно печатать материалы.

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

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

  4. Гибкость и масштатбируемость. Есть возможность добавлять новых пользователей, выделять дополнительные ресурсы с ростом числа устройств.

  5. Поддержка различных версий операционных систем. Можно работать с более старыми ОС, например, Windows 9x, а также с современными версиями Windows и macOS.

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

Общее руководство по установке Samba в Linux (Ubuntu)

У большинства версий Linux, в том числе у Ubuntu, а также у Windows 10, 11 и macOS есть поддержка протокола Samba по умолчанию.

Ubuntu — популярный дистрибутив Linux, то есть набор ПО, который включает в себя ядро Linux и другие нужные для работы компьютера компоненты.

Общий алгоритм установки Samba на Ubuntu:

1. Используйте утилиту apt. Сначала обновите информацию о репозитории (хранилище) пакетов с помощью команды sudo apt update. Далее выполните команду для установки Samba:

Аргумент -y автоматически одобряет любые запросы во время установки.

2. Проверьте установку с помощью команды whereis samba. Она выведет каталог, в котором находится Samba. Также можно проверить версию утилиты через команду samba -V.

3. Убедитесь, что служба Samba запущена. Для этого запустите команду:

Утилита smbd сообщает, что Samba подключена и работает. Для возвращения в терминал нажмите q.

Evolution Image
Evolution Image
Легко управляйте пользовательскими образами и доступами к готовым образам с популярными дистрибутивами операционных систем
Подробнее

Создание общего каталога

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

Каталог создается по следующей схеме:

1. Введите команду mkdir для создания каталога в /home. Например, его имя будет sharing. В этом случае команда выглядит так: 

2. Введите команду ls /home, чтобы проверить результат.

3. Настройте права доступа к каталогу командой:

Она выдает полный доступ к папке. Впрочем, лучше настраивать права доступа конкретным пользователям, как — читайте в разделе «Настройка учетной записи пользователя».

Настройка параметров Samba


Основные параметры Samba можно настроить через файл конфигурации smb.conf, который расположен в /etc/samba/smb.conf

Для настройки действуйте следующим образом:

1. Откройте файл конфигурации с помощью команды:

2. Прокрутите вниз до раздела Global Settings. В этом разделе можно настроить поведение сервера Samba, его имя, роль и сетевые интерфейсы. 

Важный момент: некоторые настройки в файле smb.conf помечены как комментарии. Чтобы включить и настроить эти параметры, их нужно раскомментировать — преобразовать комментарий в текст программы. Далее расскажем, какие параметры нужно раскомментировать и как это сделать.

Просмотр и идентификация

Просмотр нужен для обмена файлами между группой компьютеров по локальной сети и содержит параметр workgroup. А идентификация распознает сервер Samba, ее параметр — server string.

Как раскомментировать параметры workgroup и server string:

1. Откройте файл sudo nano /etc/samba/smb.conf.

2. Удалите символы # или ; перед соответствующими строками. Запись будет выглядеть так:

3. Сохраните изменения и перезапустите Samba командой:

Нетворкинг

Подраздел Networking нужен для настройки сетевых интерфейсов, к которым привязывается Samba. Он содержит два параметра: interfaces и bind interfaces only

Как раскомментировать настройки в этом подразделе:

1. Проверьте доступные интерфейсы с помощью команды ip link, чтобы задать interfaces.

Как привязать Samba к двум интерфейсамПривязка Samba к двум интерфейсам


В примере выходных данных указано, что Samba привязывается к двум интерфейсам: lo (интерфейсу обратной связи) и enp0s3 (сетевому интерфейсу). 

2. Раскомментируйте данные:

Если bind interfaces only установлен в yes, то в параметре interfaces Samba будет использовать только указанные интерфейсы. То есть если у сервера несколько сетевых интерфейсов, например enp0s3, enp0s4, enp0s5, то Samba «послушает» только те, что указаны в параметре Interfaces, а остальные проигнорирует.

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

Отладка

Отладка — это поиск и исправление ошибок в исходном коде ПО. У отладки четыре параметра:

  1. log file = /var/log/samba/log.%m — сохраняет журналы в файле, который назван по имени подключающегося устройства (%m) в указанном каталоге. Эта настройка упрощает отладку.

  2. max log size = 1000 — ограничивает размер файлов журнала до 1 000 КБ перед перемещением, тем самым предотвращает быстрое заполнение дискового пространства.

  3. logging = file — настраивает Samba для регистрации событий (логов) в файлах, чтобы отслеживать, кто их открывал и что в них делал. 

  4. panic action = /usr/share/samba/panic-action %d — выполняет заданный сценарий, если возникла ошибка (%d передает сведения об ошибке). Это позволяет немедленно устранять неполадки и возобновлять процессы. 

Настроить отладку можно с помощью набора команд:

Аутентификация и домен

Наиболее значимым параметром аутентификации выступает server role, он определяет тип сервера для Samba. Если этого параметра нет, добавьте следующую строку: server role = standalone server, чтобы настроить Samba как автономный сервер.

Другие настройки аутентификации включают в себя команды:

  • obey pam restrictions = yes — гарантирует, что Samba придерживается политик аутентификации PAM для поддержания централизованного контроля доступа. Это упрощает процесс верификации пользователей.

  • unix password sync = yes — синхронизирует пароли Samba с паролями Ubuntu, чтобы обеспечить однотипность учетных данных во всех службах.

  • passwd program = /usr/bin/passwd — говорит системе, что для изменения паролей пользователей необходимо использовать программу, которая находится по адресу /usr/bin/passwd.

  • passwd chat = Enter\snew\s\spassword: %n\n Retype\snew\s\spassword: %n\n password\supdated\ssuccessfully.** — автоматически меняет пароли пользователей по заданному алгоритму.

  • pam password change = yes — не меняет пароли, но облегчает синхронизацию локальных устройств, также придерживается политики РАМ.

  • map to guest = bad user — сопоставляет неопознанных пользователей с гостевой учетной записью, чтобы не пропустить неавторизованных пользователей.

Не стоит менять настройки в подразделе Домен. Прокрутите вниз до раздела Разное и задайте команду: usershare allow guests = yes. Эта команда нужна, чтобы любой пользователь мог получить доступ к общим ресурсам без указания учетных данных. Оставьте все остальные глобальные настройки без изменений.

Гостевой доступ в SambaНастройка разрешает гостевой доступ к созданным пользователем общим ресурсам Samba

Далее сохраните файл и выйдите из него, запустите testparm для проверки синтаксических ошибок. Если система показывает сообщение «Loaded services file OK», это означает, что ошибок нет, и сервер Samba готов к использованию.

Проверка синтаксических ошибок в SambaПроверка синтаксических ошибок

Настройка учетной записи пользователя

Чтобы гарантировать, что только верифицированные пользователи получат доступ к конфиденциальным файлам или каталогам, нужно настроить учетные записи.

Как настроить учетные записи:

1. Задайте имя и пароль с помощью команды:

Причем имя должно принадлежать системному пользователю. Например, системная учетная запись в системе создана под именем bosko. Следовательно, нужно задать команду:

Как сделать учетную запись основного пользователя в SambaСоздание учетной записи основного пользователя

2. Чтобы добавить нового пользователя в Samba и систему, используйте команду:

Вместо [username] можно добавить в систему, например, new_user с помощью sudo adduser new_user.

3. Придумайте и подтвердите системный пароль для нового пользователя, для чего используйте:

Как добавить новых пользователей в SambaДобавление новых пользователей

4. У добавленных пользователей должен быть доступ на чтение, запись и выполнение для общего каталога. Чтобы дать новому пользователю эти права, выполните команду:

В этой команде: 

  • утилита setfacl — управляет списками доступов;

  • аргумент -R — параметр для рекурсивного применения прав ко всем файлам/каталогам в указанном каталоге;

  • аргумент -m — модифицирует уже существующие права;

  • аргумент u:new_user:rwx — выдает указанному пользователю права на чтение (r), запись (w) и выполнение (x).

Настройка параметров общего каталога Samba

Каталог общего доступа Samba — это каталог в Linux, который настроен на доступ к другим устройствам в локальной сети через протокол SMB/CIFS. Для настройки параметров каталога выполните следующие действия. 

Откройте файл конфигурации еще раз

Перейдите в конец файла и добавьте следующие строки:

Каждая строка предоставляет определенные разрешения на доступ к каталогу:

  • [sharing] — показывает имя каталога, которое видят пользователи.

  • comment — описывает общий каталог.

  • path — указывает путь к общему каталогу. В примере используется каталог /home, но пользователи также могут размещать общие файлы в /samba.

  • read only — позволяет пользователям изменять каталог и добавлять или изменять файлы, если установлено значение no.

  • writeable — предоставляет доступ на чтение и запись, если установлено значение yes.

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

  • guest ok — если установлено значение no, параметр отключает гостевой доступ. Чтобы гостю попасть в общий каталог, придется ввести имя пользователя и пароль.

Сохраните изменения и выйдите из файла.

Перепроверьте синтаксис через testparm. Система должна подтвердить, что Samba настроена верно. Для более подробного вывода всех настроек нажмите Enter.

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

Завершение настроек

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

1. Перезапустите службу Samba, чтобы убедиться, что все изменения конфигурации вступили в силу: 

2. Откройте файловый менеджер по умолчанию и выберите опцию Other Locations — это нужно, чтобы подключиться к общему каталогу через графический интерфейс. Для этого введите в поле адрес сервера smb://ip-address/sharing и нажмите Connect.

Как подключиться к общему каталогу в SambaПодключение к общему каталогу

3. Система запросит имя пользователя и пароль. Укажите запрашиваемую информацию и нажмите Connect еще раз. Это добавит каталог общего доступа в папку общих ресурсов Windows.

Как добавить каталога для общего доступа в SambaДобавление каталога для общего доступа

Как удалить Samba в Ubuntu

При необходимости можно удалить все файлы из системы, которые связаны с Samba. 

Чтобы это сделать, следуйте инструкции:

1. Остановите все службы Samba для обеспечения процесса. Используйте команду: 

2. Подтвердите остановку службы с помощью команды:

Система должна показать, что она неактивна.

Как удалить Samba в UbuntuДеактивация Samba

3. Удалите программные пакеты Samba. Для этого используйте apt менеджер и введите команду: 

Опция --purge также обеспечивает удаление файлов конфигурации.

4. Очистите остаточные файлы конфигурации и зависимости: 

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

5. Удалите пользовательские файлы. Несмотря на то, что флаг --purge вычищает файлы конфигурации из системы, некоторые пользовательские файлы могут остаться. Чтобы удалить их вручную, используйте команду:

6. Очистите файлы журналов, созданные Samba при помощи ввода команды: 

7. Восстановите права доступа к файлам. Если Samba использовалась для управления разрешениями на файлы в общих каталогах, сбросьте их. Откатите изменения ACL (список доступных прав) для общих каталогов через команду: 

8. Удалите правила брандмауэра, которые связаны с Samba, чтобы защитить свою систему. Для этого используйте команду: 

Затем перезагрузите брандмауэр с помощью: 

9. Проверьте полное удаление службы и конфигураций Samba. Сначала посмотрите статус службы через команду: 

Запрос должен показать, что она не найдена. Далее проверьте, не осталось ли пакетов с Samba, для этого введите: 

Команда не должна вывести никаких результатов. Это значит, что утилита полностью удалена из системы вместе с файлами, которые с ней были связаны.

Коротко об установке Samba на Ubuntu

  • Samba — это бесплатное ПО, которое позволяет компьютерам с разными ОС (Windows, Linux, macOS) легко и безопасно обмениваться файлами, использовать общие принтеры в локальной сети.

  • Samba использует протокол SMB/CIFS, «обучая» Linux и macOS общаться с Windows на одном языке.

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

  • Общий алгоритм установки Samba на Ubuntu: используйте утилиту apt, чтобы обновить информацию о репозитории и установить Samba. Далее проверьте установку командой whereis samba и убедитесь, что служба Samba запущена.

Продукты из этой статьи:
Иконка-Evolution Image
Evolution Image
Иконка-Evolution Object Storage
Evolution Object Storage
Иконка-Evolution Compute
Evolution Compute
23 июля 2025

Вам может понравиться