Как настроить samba debian

Установка и настройка Samba в Debian

Что такое Samba.

Samba это набор UNIX-приложений, которые умеют работать с протоколом SMB (Server Message Block). Многие операционные системы, включая Windows и OS/2 используют SMB для организации сетевого клиент-серверного взаимодействия. Благодаря поддержке этого протокола, Samba позволяет UNIX-серверам взаимодействовать с тем же сетевым протоколом, что и семейство ОС Microsoft Windows.

Пакет Samba для Debian.

Этот пакет содержит все компоненты необходимые для превращения вашего Debian-сервера в мощный файл- и принт-сервер.

В настоящий момент, пакеты Samba для Debian включают в себя:

  • samba — файл- и принт- сервер для UNIX.
  • samba-common — общие файлы Samba, используемые как сервером, так и клиентом.
  • smbclient — простой клиент для Unix.
  • swat — Samba Web Administration Tool, веб-клиент.
  • samba-doc — документация по Samba.
  • smbfs — команды монтирования и отмонтирования для smbfs (ядра версий 2.2.x и выше)
  • libpam-smbpass — подключаемый модуль авторизации для базы паролей SMB.
  • libsmbclient — разделяемая библиотека, которая позволяет приложением общаться с SMB серверами.
  • libsmbclient-dev — разделяемые библиотеки libsmbclient.
  • winbind — служба для получения информации о пользователях и группах от серверов на Windows NT.
  • python2.3-samba — модуль для python, дающий доступ к различным аспектам Samba.
Читайте также:  Чего не работает беспроводная мышь

Есть возможность устанавливать определенный набор из этих пакетов в зависимости от ваших запросов. На пример, чтобы получить доступ к другим SMB-серверам вам понадобятся только пакеты smbclient и samba-common.

Установка Samba в Debian.

Затем создаем директорию, доступ к которой будем предоставлять с помощью Samba:

Далее создадим системного пользователя, который будет иметь доступ к директории:

Теперь создаем в samba пароль для этого пользователя:

Настройка Samba в Debian.

Правим конфигурационный файл samba с помощью команды:

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

Далее привожу пример рабочей конфигурации. Основной блок:

В основном блоке указываем имя рабочей группы (WORKGROUP) и имя сервера, которое будет видно в системах клиентов, а также комментарий. Чтобы пользователи могли видеть сервер, их системы должны быть настроены на использование той же рабочей группы. socket options — параметры для улучшения производительности, можно поиграться размерами буферов, числа должны быть кратны 1024. local master — позволяет указать, является ли сервер главным в сети. security = share — позволяет включить по умолчанию доступ без пароля.

Далее описываются отдельно все директории, к которым открыт доступ:

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

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

Проверить правильность конфигурационного файла можно командой:

После настройки необходимо перезапустить samba:

Описание всех параметров на русском языке можно найти на smb-conf.ru.

Проверка работоспособности samba-сервера:

Если после тестирования оказалось, что samba работает не на столько хорошо, как хотелось бы, то попробуйте настроить nfs-сервер.

Источник

  • ru
  • Samba

Данное краткое руководство посвящено быстрой базовой настройке Samba.

Samba — пакет программ, которые позволяют обращаться к сетевым дискам и принтерам на различных операционных системах по протоколу SMB/CIFS. Имеет клиентскую и серверную части. Является свободным программным обеспечением, выпущена под лицензией GPL.

Установка

Настройка

Добавляем пользователя в базу самбы:

В большинстве случаев, при домашнем использовании, все должно работать и со стандартным smb.conf.

Решение неполадок

Если при попытке создать общий ресурс через Nautilus или Konqueror Вам сообщается об ошибке :

* ‘net usershare’ returned error 255: net usershare: usershares are currently disabled

в таком случае проделайте следующее : откройте для редактирования файл /etc/samba/smb.conf и отредактируйте секцию [global] следующим образом :

Сохраните файл и закройте текстовый редактор. Далее создайте каталог ‘usershare’ где Samba будет хранить списки общих папок, разрешив чтение и запись

И перезапустите Samba :

Завершите сеанс и войдите в него вновь. Теперь у вас должна появиться возможность настраивать общий доступ samba, используя графический интерфейс. Например, в Dolphin вы можете нажать правую кнопку мыши на любом каталоге и предоставить для него общий доступ в сети.

Неполадки

Находим следующую строку в smb.conf

раскомментируем и изменяем на

в секции [global]

Добавлем в эту же секцию

Если хотим, чтобы мы были видны в локальной сети

И перезапустите Samba :

Если у вас возникли проблемы при доступе к защищенному паролем общему ресурсу на Windows попробуйте добавить

Источник

Настройка Samba в Debian 10

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

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

Мы будем выполнять установку Samba Debian 10 Buster. Для установки нам потребуется доступ к системе с правами пользователя root. Команды которые начинаются с # — должны выполняться от имени root пользователя, или с применением инструкции sudo. Команды которые начинаются с $ могут выполняться от имени обычного не привилегированного пользователя.

Установка Samba в Debian 10

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

sudo apt install samba

Настройка Samba в Debian

Настройки Samba находятся в файле /etc/samba/smb.conf. Этот файл содержит общие настройки для Samba, а также сведения об общих ресурсах. Обычно в Debian предоставляются неплохие настройки по умолчанию, которые позволяют начать работать немедленно, что в общем не мешает взглянуть на них и внести изменения там, где это необходимо.

1. Базовые настройки

Первое что вам встретится в верхней части группы глобальных настроек — настройка workgroup. Эта опция определяет имя рабочей группы Windows, частью которой станет ваш сервер. Значение по умолчанию — WORKGROUP, так как такое же значение, по умолчанию в задано в Windows. Если вы изменяли настройки рабочей группы в Windows, измените их также и здесь.

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

interfaces = 192.168.1.0/24 eth0

Если такой метод вам не нравится, вы можете добавить параметр hosts allow, чтобы определить, клиентов, которые могут подключаться к общему ресурсу. Укажите IP-адрес или диапазоны адресов.

hosts allow = 127.0.0.1/8 192.168.1.0/24

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

2. Создание общего ресурса

В конфигурационном файле, по умолчанию, уже присутствуют несколько настроек для общих ресурсов. Они дают вам возможность настроить совместное использование домашних папок пользователей системы и принтеров. А доступ к каталогу печати уже открыт. Измените значение параметра browseable на no.

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

Во-первых, дайте имя своему общему ресурсу, и поместите это имя в скобки.

В следующей строке напишите краткий комментарий, описывающий общий ресурс.

comment = My new share

Затем задайте путь, эквивалентный абсолютному пути к общей папке.

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

Хотите ли вы, чтобы пользователи имели права на запись в общий ресурс или могли подключить его только для чтения?

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

Если гости не будут иметь доступ к общей папке, то у кого он будет?

valid users = имя_пользователя

Ну вот и все. Есть еще и другие опции и другие способы выполнить эти базовые шаги, но они дадут вам в итоге приблизительно тот же результат. Если вы точно знаете что вам нужно, этих опций вам будет достаточно. Если соединить все что мы написали выше — у нас получится что-то вроде этого:

[New Share]
comment = A new share
path = /home/newuser/share
browseable = yes
read only = no
guest ok = no
valid users = newuser

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

systemctl restart smbd

3. Создание пользователя

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

smbpasswd -a имя_пользователя

После этого вам будет предложено ввести пароль для этого пользователя. Это пароль, которым будут защищены доступные ему общие ресурсы.

Как подключиться к Samba

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

sudo apt install samba-client cifs-utils

Теперь вы можете открыть файловый менеджер и перейти в раздел Сеть. Там вы увидите свой сервер, а также — общий ресурс, который вы только что настроили.

Выводы

Теперь вы знаете как выполняется установка Samba Debian 10 и готовы начать создавать собственные общие папки, а также настраивать к ним доступ с других компьютеров Linux. Ничего другого делать не нужно, и Samba автоматически запустится при загрузке Debian.

Источник

Записки IT специалиста

Технический блог специалистов ООО»Интерфейс»

  • Главная
  • Настройка файлового сервера Samba на платформе Debian / Ubuntu

Настройка файлового сервера Samba на платформе Debian / Ubuntu

Файловый сервер можно без преувеличения назвать средством первой необходимости, даже в сетях без выделенного сервера вы всегда обнаружите папки с общим доступом, но по мере роста объемов данных появляется потребность в отдельном решении. Вариантов его организации множество, одним из которых является служба Samba на Linux-сервере, это простое, недорогое, но в то же время мощное решение по организации общего доступа к файлам и папкам в Windows сетях. В данной статье мы рассмотрим настройку простого сервера на основе Samba 4 работающего в ОС Debian / Ubuntu.

Несмотря на то, что в данной статье в качестве ОС мы использовали Debain 9, все сказанное будет справедливо для любой ОС на базе Debian или Ubuntu, а с поправкой на работу пакетного менеджера — для любого Linux-дистрибутива. Также мы предполагаем, что читатель имеет базовые навыки работы с Linux-системами на базе Debian.

Подготовка системы

Прежде чем приступать к работе продумайте схему хранения данных и доступа к ним. Существую разные типы данных, которые мы будем характеризовать по интенсивности доступа к ним, скажем «холодные данные» отличаются тем, что обращения к ним происходят крайне редко (а к некоторым вообще никогда), но при этом они могут занимать значительные объемы. Это прежде всего резервные копии, инсталляционные пакеты, образа дисков и т.д. и т.п.

Противоположность им «горячие данные» — это данные которые интенсивно используются и изменяются, для файлового сервера примером таких данных может служить файловая информационная база 1С:Предприятия. Между ними находятся обычные данные, характер доступа к которым не имеет каких-либо особенностей.

Исходя из типа данных следует выбирать диски для хранения, для «горячих данных» это должны быть быстрые диски или SSD, а для «холодных» подойдут экономичные модели с упором на большой объем. Также не забывайте про RAID, для защиты данных от аппаратного выхода дисков из строя.

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

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

Также обратите внимание на имя компьютера, Samba 4 будет использовать его в качестве NetBIOS имени.

После установки ОС следует изменить настройку лимита на количество одновременно открытых файлов, в Linux это 1024, а в Windows 16384. Для этого откройте файл /etc/security/limits.conf и добавьте в конце две строки:

После чего сервер следует перезагрузить.

Установка и базовая настройка Samba 4

Установка Samba предельно проста:

После чего откроем файл /etc/samba/smb.conf и выполним общие настройки. Большинство указанных опций в файле уже есть, многие из них даже не потребуется менять, но их назначение будет полезно знать, поэтому мы прокомментируем наиболее важные из них.

За общие настройки сервера отвечает секция [global], которая, кстати, прекрасно прокомментирована. Обратите внимание на два вида комментариев опций, если для этого используется символ # — то указанное значение применяется по умолчанию, а символ ; обозначает предлагаемый вариант настройки.

Начнем, опции перечисляются в порядке их следования в файле:

Обозначает рабочую группу Windows, по умолчанию WORKGROUP.

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

Или только подсети:

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

Следующая опция указывает расположение логов:

По умолчанию лог выключен, для того чтобы его включить добавьте в файл опцию:

Если вам нужен более подробный лог — установите более высокий уровень, минимальное значение — 1, максимальное — 5.

Также закомментируйте опцию:

В настоящий момент она является не рекомендованной (deprecated).

Обозначает простой файловый сервер, не требующий подключения к домену.

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

На этом общая настройка сервера закончена. Проверим конфигурацию на ошибки:

И перезапустим сервер

Настройка общего ресурса с гостевым доступом

Начнем с самого простого варианта — создадим общий ресурс, доступ к которому может иметь любой пользователь. Для этого добавим в конец файла /etc/samba/smb.conf следующие строки.

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

  • comment — описание ресурса, необязательный параметр;
  • path — путь к директории;
  • read only — режим только чтения, указываем no;
  • guest ok — разрешен ли гостевой доступ, указываем yes;

Теперь создадим саму директорию:

и установим на нее необходимые права, для гостевого ресурса это 777:

Если у вас предполагается только гостевой доступ на этом можно остановиться, в случае наличия ресурсов с требованием аутентификации могут возникнуть проблемы. Дело в том с какими правами будут записаны файлы на общий ресурс, если не указано иного, то по умолчанию Samba использует 0744 для файлов и 0755 для директорий. Т.е. полный доступ остается только у владельца файла, остальные получают права только на чтение. Чтобы исправить это следует явно указать режим для новых файлов и папок, для этого добавим в секцию еще две строки:

В этом случае итоговые права будут рассчитаны с учетом отображения прав доступа DOS в разрешения UNIX, что имеет некоторые особенности, в частности права на файлы будут установлены как 766 или rwx-rw-rw. Это значит, что запустить исполняемый файл сможет только тот, кто является его владельцем. Остальные получат сообщение об отсутствии прав доступа:

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

Это полностью снимет права на выполнение для всех, но оставит полный доступ к исполняемым файлам. Если же требуется разрешить возможность запуска, то вместо create mode следует использовать опцию force create mode, которая будет устанавливать разрешения без учета прав доступа DOS:

Теперь перезапускаем Samba и пробуем получить доступ с любого Windows-клиента.

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

Настройка общего ресурса с парольным доступом

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

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

Они предельно просты и отличаются запретом гостевого доступа — guest ok = no. Для того, чтобы разделить доступ к ресурсам будем использовать группы пользователей, создадим две новые группы для наших подразделений:

Теперь создадим каталоги:

и изменим группу владельца:

Затем установим права:

Значение 2770 обозначает что мы предоставляем полные права владельцу и группе, для остальных доступ запрещен. А первая двойка устанавливает SGID для каталога, что обеспечивает присвоение группы каталога каждому создаваемому в нем файлу.

В некоторых случаях определенный интерес представляет выставление для каталога sticky bit, который означает, что удалить или переименовать файл может только его владелец, но работать с ним, в том числе изменять, может любой пользователь, имеющий права записи в каталог. Для этого вместо набора прав 2770 используйте права 3770.

Не забываем указать права для вновь создаваемых файлов и директорий, здесь справедливо остается все то, о чем мы говорили выше. Например, можно использовать такой набор опций (с правом запуска исполняемых файлов):

Обратите внимание, что мы устанавливаем SGID только для каталогов, для файлов в данной схеме выставлять его не имеет смысла. А вот если вы установили sticky bit, то его нужно указать в обоих случаях:

Не забываем, что данные опции следует добавить в каждую секцию.

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

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

Затем добавим его в базу Samba:

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

Проверяем, после ввода пароля мы должны получить доступ к созданным нам ресурсам. Также обратите внимание, после аутентификации в списке общих ресурсов появилась папка с именем пользователя, подключенная только на чтение.

С настройками по умолчанию Samba предоставляет каждому существующему пользователю доступ только на чтение к его домашнему каталогу. На наш взгляд это довольно удобно и безопасно. Если вас не устраивает такое поведение — удалите из конфигурационного файла секцию [homes].

Теперь о других пользователях. Скажем у нас есть бухгалтер Иванова и админ Петров, каждый из которых должен иметь доступ к своему ресурсу. В то же время иметь доступ к самому Samba-серверу им необязательно, поэтому создадим новых пользователей следующей командой:

Ключ -M заводит пользователя без создания домашнего каталога, а -s /sbin/nologin исключает возможность входа такого пользователя в систему.

Поместим каждого в свою группу:

Затем добавим их в базу Samba, при этом потребуется установить им пароли:

И включим эти учетные записи

Если все сделано правильно, то пользователь будет иметь доступ к своим ресурсам и не иметь к чужим.

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

Настройка общего ресурса со смешанным доступом

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

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

Здесь все понятно, стандартное описание ресурса. Теперь создадим директорию и изменим группового владельца:

Теперь подумаем о правах, владелец и группа adm должны иметь полный доступ — rwx (7) плюс установленный SGID для директорий, а остальные должны иметь право чтения и выполнения, т.е. r-x (5), для файлов следует использовать force create mode, иначе вместо желаемых 0775 вы получите 0764, все тоже самое, только без права выполнения для группы и остальных.

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

Настройка скрытого общего ресурса

Еще одна часто встречающаяся задача — скрыть общий ресурс из отображаемого списка. Например, служебные ресурсы, используемые в административных целях. Нет ничего проще, достаточно добавить в секцию ресурса еще одну опцию:

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

Во всем остальном такие ресурсы ничем не отличаются от обычных и к ним применимо все вышесказанное.

Настройка корзины для общего ресурса

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

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

Первая опция добавит в общий ресурс новый объект — корзину, вторая укажет ее расположение — скрытая папка в корне. Две следующих включают сохранение структуры папок при удалении и сохранение нескольких версий файла с одним и тем же именем. Это позволяет максимально обезопасить себя от ситуаций, когда в разных папках лежали одноименные файлы с разным содержимым или на место удаленного файла скопировали еще один такой же и тоже удалили.

Выше мы везде говорили о правах, корзина не исключение, если у вас включено сохранение структуры папок, то по умолчанию она будет создана с правами 0700, т.е. восстановить файл сможет только тот, кто его удалил. Рекомендуется изменить это поведение и установить права аналогичные указанным в directory mode, для этого добавим еще одну опцию (права указаны для директории buch):

Перезапустим Samba и попробуем что-нибудь удалить.

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

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

Также рекомендуем ознакомиться со статьей Linux — начинающим. Часть 4. Работаем с файловой системой. Теория для более подробного ознакомления с системой прав файловой системы Linux.

Помогла статья? Поддержи автора и новые статьи будут выходить чаще:

Или подпишись на наш Телеграм-канал:

Источник

Оцените статью