Samba для windows ресурсов

Samba для windows ресурсов

Opening Windows to a Wider World. (слоган на www.samba.org)

Samba — реализация сетевых протоколов Server Message Block (SMB) и Common Internet File System (CIFS). Основное предназначение — расшаривание файлов и принтеров между Linux и Windows системами.

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

  • smbd — демон, являющийся SMB-сервером файловых служб и служб печати;
  • nmbd — демон, предоставляющий службы имен NetBIOS;
  • smblient — утилита предоставляет доступ из командной строки к ресурсам SMB. Она также позволяет получить списки общих ресурсов на удаленных серверах и просматривать сетевое окружение;
  • smb.conf — конфигурационный файл, содержащий настройки для всех инструментов Samba;

Список портов, используемых Samba

Порт Протокол Служба Демон Описание
137 UDP netbios-ns nmbd служба имен NetBIOS
138 UDP netbios-dgm nmbd служба датаграмм NetBIOS
139 TCP netbios-ssn smbd NetBIOS over TCP (служба сеансов)
445 TCP microsoft-ds smbd NetBIOS over TCP (служба сеансов)

Вводная статья про основные принципы расшаривания файлов и принтеров.

Установка и настройка сервера

Скопируем файл с настройками smb.conf

По умолчанию создаются ресурсы для домашних каталогов пользователей (раздел homes в smb.conf) и принтеров (раздел printers).

Доступ к ресурсу может быть по паролю или анонимный. Для первого способа есть пара моментов:

  1. пользователь должен существовать в системе (создан с помощью команды adduser username и установлен пароль passwd username );
  2. пользователь должен быть добавлен как пользователь Samba (с помощью команды sudo smbpasswd -a username );

Необходимо что-бы компьютеры принадлежали к одной рабочей группе, в Windows по умолчанию это WORKGROUP, вот её и будем использовать.

Ниже приведен пример простого файла smb.conf с настройками для анонимного доступа к директории /srv/samba/public.

Имена параметров не чувствительны к регистру. Для некоторых распространенных параметров существуют синонимы, а для некоторых – антонимы. Например, writable и writeable – это синонимы, а read only – антоним для них, т.е. опция read only = yes эквивалентна опции writable = no.

Проверим корректность настроек с помощью команды testparm

Опция -v указывает testparm выводить также значения по умолчанию.

Проверим подключению к Samba на порт 139 с помощью telnet

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

  • share — этот режим безопасности эмулирует метод аутентификации, используемый операционными системами Windows 9x/Windows Me. В этом режиме имена пользователей игнорируются, а пароли назначаются общим ресурсам. В этом режиме Samba пытается использовать предоставленный клиентом пароль, которым могут пользоваться разные пользователи.
  • user* — этот режим безопасности установлен по умолчанию и использует для аутентификации имя пользователя и пароль, как это обычно делается в Linux. В большинстве случаев в современных операционных системах пароли хранятся в зашифрованной базе данных, которую использует только Samba.
  • server — этот режим безопасности используется тогда, когда необходимо, чтобы Samba выполняла аутентификацию, обращаясь к другому серверу. Для клиентов этот режим выглядит так же, как аутентификация на уровне пользователя (режим user), но фактически для выполнения аутентификации Samba обращается к серверу, указанному в параметре password server.
  • domain — используя этот режим безопасности, вы можете полностью присоединиться к домену Windows; для клиентов это выглядит так же, как аутентификация на уровне пользователя. В отличие от аутентификации на уровне сервера, доменная аутентификация использует более защищенный обмен паролями на уровне домена. Для полного присоединения к домену требуется выполнить дополнительные команды в системе Samba и, возможно, на контроллере домена.
  • ads — этот режим безопасности похож на метод аутентификации в домене, но требует наличия контроллера домена Active Directory Domain Services.

Полный список параметров Samba есть в manpages.

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

Создадим группу и добавим в нее пользователя

Создадим директорию для пользователя и установим права

Добавим в /etc/samba/smb.conf новый ресурс

Пример настройки ресурса в котором есть симлинк на папку пользователя (/srv/samba/media/video » /home/proft/video)

Просмотр общих ресурсов компьютера

Еще один способ подключения для анонимного пользователя с командной строкой

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

Еще лучше пароли хранить в отдельном файле

Выставим права доступа 0600

Новая строка для монтирования

И пример для /etc/fstab

Открыть ресурс в файловом менеджере Nautilus/Nemo/etc можно по такому пути smb://192.268.24.101.

Если Nemo пишет Nemo cannot handle «smb» locations. значит не хватает пакета gvfs-smb.

Доступ к серверу с Windows и Android клиента

Под Windows узнать рабочую группу с консоли можно с помощью

Открыть ресурсы на удаленной машине можно набрав в строке Explorer (Проводник) или в Run (Start — Run) UNC-адрес: \192.168.24.101.

Под Android подключится к серверу можно с помощью ES File Explorer, на вкладке Network добавляем сервер, просто по IP (без указания схемы, smb). После чего можно открывать расшаренные ресурсы. Для статистики: HDRIP-фильм идет без подтормаживания.

Samba для windows ресурсов

Samba 4.14.2 (4.14.1), 4.13.7 (4.13.6) and 4.12.14 (4.12.13) Security Releases

These are security releases in order to address CVE-2020-27840 (Heap corruption via crafted DN strings) and CVE-2021-20277 (Out of bounds read in AD DC LDAP server).

Please ignore the 4.14.1, 4.13.6 and 4.12.13 releases and only use 4.14.2, 4.13.7 and 4.12.14.

If you are building/using ldb from a system library, you’ll also need the related updated ldb tarball, otherwise you can ignore it.

The uncompressed Samba tarballs have been signed using GnuPG (ID AA99442FB680B620).

The uncompressed ldb tarballs have been signed using GnuPG (ID 4793916113084025).

The Samba 4.14.2 source code can be downloaded here. Incremental patches for Samba are also available: patch from Samba 4.14.0 to 4.14.1 and patch from Samba 4.14.1 to 4.14.2 See the 4.14.2 release notes for more info. The ldb 2.3.0 release for use with Samba 4.14.2 can be downloaded here.

The Samba 4.13.7 source code can be downloaded here. Incremental patches for Samba are also available: patch from Samba 4.13.5 to 4.13.6 and patch from Samba 4.13.6 to 4.13.7 See the 4.13.7 release notes for more info. The ldb 2.2.1 release for use with Samba 4.13.7 can be downloaded here.

The Samba 4.12.14 source code can be downloaded here. Incremental patches for Samba are also available: patch from Samba 4.12.12 to 4.12.13 and patch from Samba 4.12.13 to 4.12.14 See the 4.12.14 release notes for more info. The ldb 2.1.5 release for use with Samba 4.12.14 can be downloaded here.

11 March 2021

Samba 4.12.12 Available for Download

This is the latest stable release of the Samba 4.12 release series.

The uncompressed tarball has been signed using GnuPG (ID AA99442FB680B620). The source code can be downloaded now. A patch against Samba 4.12.11 is also available. See the release notes for more info.

Настройка сервера Samba – создание папок и установка доступа

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

Настройка через терминал

Сама Samba – это программа, которая предназначена для обращения к различным сетевым интерфейсам, в том числе принтерам, с помощью особого протокола «SMB/CIFS». Состоит из серверной (работающей на Linux, MAC и других Unix-подобных OS) и клиентской части, которую можно установить даже на Windows 7, 8, 10.

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

Настройки Windows

Для того, чтобы программа работала корректно, нужно убедиться в том, что все компьютеры сети подключены к одинаковой рабочей группе. Обычно, в поле «Название группы» внесено значение «WORKGROUP». Чтобы определить, в какую группу входит используемый ПК, необходимо использовать командную строку:

  1. Нажать на клавиатуре комбинацию клавиш «WIN+R». В открывшемся окне ввести «cmd».
  2. Далее, в окне консоли ввести «net config workstation».

Следует обратить внимание на пункт «Домен рабочей станции».

  1. Если на ПК с ОС Ubuntu выставлен статический ip-адрес, следует указать его в файле «hosts». Найти его можно в папке «etc», которая, в свою очередь хранится в папке «Windows\system32».
  2. После последнего адреса в списке написать нужный IP-адрес.

Настройка Виндоус окончена.

Настройка серверной части Самба

Теперь можно перейти к настройке операционной системы Samba на Ubuntu. В процессе будет использоваться консоль. Сам процесс настройки Samba Server несложен, но требует внимательности к деталям:

  1. По окончании инсталляции необходимо используя консоль вписать следующую команду, которая установит недостающие модули Самбы:
  2. Вслед за этим нужно сделать бэкап существующего файла конфигурации:
  3. Создать новый файл конфигурации:
  4. В открывшийся документ нужно внести следующую информацию:
  5. Сохранить изменения кликом по кнопке в правом верхнем углу.

Также следует откорректировать файл «limits.conf»:

  1. Открыть его с помощью текстового редактора:
  2. Прокрутить вниз и перед последней строчкой в документе добавить следующее:
  3. Сохранить изменения.

Результат:

Создание общих папок

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

  1. Сперва следует создать обычную директорию, название которой может быть абсолютно любым. Команда для консоли:
  2. Задать права для того чтобы все пользователи смогли проводить операции над вложенными файлами. При этом следует указать точный путь:
  3. Открыть конфигурационный файл, чтобы добавить в него некоторые данные:
  4. После блока «Global» добавить следующее:
  5. Сохранить изменения. В результате должно получиться следующее:
  6. Перезапустить Самбу:

Найти созданную директорию на ПК с Windows можно через «Проводник» — «Сеть».

Неизменяемые папки

Если есть нужда в директории, над которой нельзя будет проводить операции редактирования – создается таковая с правами «Для чтения». Процедура идентична, за исключением некоторых параметров:

  1. Создать папку, назвать ее, например, «readonly». В терминале ввести:
  2. Дать папке необходимые права:
  3. Следующей командой открыть конфигурацию:
  4. Вновь добавить фрагмент текста в конец файла:
  5. Сохранить документ.

Папки с закрытым доступом

Для создания папки с аутентификацией и проверкой разрешений нужно:

  1. Создать папку, к примеру «Auth»:
  2. Задать права:
  3. Задать группу пользователей на свой выбор, а затем и пользователя, которому дать права доступа по авторизации.
  4. Добавить пользователя, например, «teacher»:
  5. Задать пароль для авторизации:
  6. Внести изменения в файл конфигурации, добавив фрагмент:

Графический интерфейс System Config Samba

Установка интерфейса

Для удобства управления настройками файлового сервера Samba можно подключить графический интерфейс:

  1. Для установки нужно ввести в консоли следующую команду:
  2. Вместе с этим установить все сопутствующие компоненты Самба:
  3. Перейти к запуску и настройке.

Запуск

Запустить System Config Samba из терминала:

  1. Нажать сочетание клавиш «CTRL+ALT+T».
  2. В окне консоли ввести:
  3. Нажать «Enter».
  4. Ввести системный пароль.

Добавляем пользователей

Перед настройкой папок нужно создать пользователей:

  1. На верхней панели выбрать вкладку «Настройка».
  2. Выбрать пункт «Пользователи Samba».
  3. В следующем окне выбрать пункт «Добавить пользователя».
  4. В выпадающем списке выбрать имя пользователя, которому может быть предоставлен доступ.
  5. Ввести имя пользователя в Windows.
  6. Ввести пароль с подтверждением.
  7. Нажать «ОК».

Настраиваем сервер

Настройка сервера упрощается через графический интерфейс:

  1. Выбрать вкладку «Настройки».
  2. Далее «Параметры сервера».
  3. Вкладка «Основной», ввести название группы в поле «Рабочая группа».
  4. Параметр описания не влияет ни на что, поэтому его значение можно не изменять.
  5. Перейти к вкладке «Безопасность».
  6. Выбрать режим аутентификации — «Пользователь».
  7. Выбрать в пункте «Шифровать пароли» вариант «Да».
  8. Выбрать учетную запись гостя.
  9. Нажать «ОК».

Создаем папки

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

  1. Кликнуть по кнопке в виде плюса. Произойдет переход к окну создания.
  2. Нажать «Обзор» в открывшемся окне.
  3. Указать папку, к которой будет предоставлен общий доступ.
  4. Отметить галочками пункты «Виден» и «Общедоступен».
  5. Перейти к вкладке «Доступ».
  6. На данной вкладке выбрать пользователей, которые получат доступ к папке.
  7. Для создания общедоступной папки выбрать «Предоставить доступ всем».
  8. Нажать на «ОК».

В главном окне отобразится созданная директория.

Файловый менеджер Nautilus

Также эти операции можно провести в популярном файловом менеджере Nautilus.

Установка

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

  1. Открыть «Nautilus» кликом по иконке на панели задач.
  2. Перейти в расположение с директорией для общего доступа. Нажать правой кнопкой мыши и выбрать пункт «Свойства».
  3. Перейти на вкладку «Общедоступная папка локальной сети».
  4. Выбрать пункт «Опубликовать эту папку».
  5. Откроется окно, в котором кликнуть по кнопке «Установить службу» для начала установки Самбы.
  6. Будет открыто окно, в котором можно просмотреть описание устанавливаемых пакетов. Нажать «Установить».
  7. Ввести пароль пользователя для продолжения установки.

Дождаться завершения установки и перейти к настройке.

Основные настройки

Настройка Самба из Наутилуса намного упрощается, в сравнении с предыдущими способами.

Для добавления общедоступности директории нужно:

  1. Перейти на вкладку «Права».
  2. Определить права для всех типов пользователей.
  3. Для ограничения доступа какой-либо группе выбрать из списка «Нет».
  4. Далее перейти в меню «Изменить права на вложенные файлы».
  5. Точно также, как и во втором пункте определить права на взаимодействие с файлами.
  6. Нажать «Изменить», затем перейти к вкладке «Общедоступная папка локальной сети».
  7. Отметить галочкой вариант «Опубликовать эту папку».
  8. Ввести название папки.
  9. Поставить, либо убрать галочки, позволяющие проводить операции и предоставлять общий доступ пользователю без учетной записи.
  10. Нажать «Применить».

Стоит отметить, что без настройки Самбы папки могут не стать общедоступными.

Читайте также:  Run nginx on windows
Оцените статью