Как настроить samba сервер на windows 10

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

Что такое Samba?

Samba – серверное приложение, реализующее доступ клиентских терминалов к папкам, принтерам и дискам про протоколу SMB/CIFS.

Описание структуры Samba

Настройка общих папок в Linux

Установка и настройка Samba-сервер для Ubuntu выполняется следующими этапами.

Обновляем информацию о репозиториях и устанавливаем обновления для существующих пакетов в системе:

apt-get update && apt-get upgrade

Устанавливаем пакет Samba:

apt-get install -y samba samba-client

Создадим резервную копию файла конфигурации:

cp /etc/samba/smb.conf /etc/samba/smb.conf_sample

Создадим директории для файлов, например в каталоге /media:

mkdir /media/samba

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

Создаем каталог для всех пользователей:

mkdir /media/samba/public

Изменим права доступа к каталогу:

chmod -R 0755 /media/samba/public

Также следует воспользоваться командой chown для смены владельца и/или группы.

Создаем директорию для ограниченного круга лиц:

mkdir /media/samba/private

С помощью системных инструментов создадим группу пользователей:

groupadd smbgrp

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

useradd user1

Созданных пользователей добавляем в группу:

usermod -aG smbgrp user1

Изменим группу, которой принадлежит приватная директория:

chgrp smbgrp /media/samba/private

С помощью инструментов Samba создадим пароль для добавленного пользователя:

smbpasswd -a user1

С помощью текстового редактора, например, nano, редактируем конфигурационный файл samba:

nano /etc/samba/smb.conf

Удаляем все строки из файла. Вставляем следующие:

[global]
workgroup = WORKGROUP
security = user
map to guest = bad user
wins support = no
dns proxy = no
[public]
path = /media/samba/public
guest ok = yes
force user = nobody
browsable = yes
writable = yes
[private]
path = /media/samba/private
valid users = @smbgrp
guest ok = no
browsable = yes
writable = yes

Сохраняем используя сочетание Ctrl + X, затем нажимаем Y и Enter.

Объясним значения строк. конфигурационный файл состоит из трех секций:

global – данная секция отвечает за общие настройки Samba-сервера;

public и private – секции описания настроек директорий общего доступа.

В секции global присутствуют пять параметров:

  • workgroup – рабочая группа. Для упрощения работы пользователей WORKGROUP указывается, как группа по умолчанию. Если в вашей сети имя рабочей группы изменено, то следует изменить это значение и для Samba;
  • security – уровень безопасности сервера. Значение user означает авторизацию по паре логин/пароль;
  • map to guest – параметр определяет способ обработки запросов. Значение bad user означает, что запросы с неправильным паролем будут отклонены, даже если такое имя пользователя существует;
  • wins support – включить или выключить поддержку WINS;
  • dns proxy – возможность проксирования запросов к DNS.

Настройки директорий выполняются в соответствующих секциях:

path – полный путь до директории на жестком диске;

guest ok – возможность доступа к каталогу без пароля (гостевой);

browsable – показывать ли каталог (“шару”) на сервере среди прочих. Если параметр установлен как “no”, то доступ будет возможен по полному пути, например ip-addresshidden_directory;

force user – пользователь от которого ведется работа с каталогом. Для повышения безопасности сервера, обычно используют nobody. Главное, не использовать пользователя root – это небезопасно.

writable – установка значения как “yes” позволяет пользователю выполнять действия над файлами внутри каталога – переименование, добавление, удаление, перемещение в подкаталог и копирование;

valid users – список пользователей у которых есть доступ к каталогу. Если пользователей несколько, их имена указываются через запятую. Если необходим доступ для пользователей принадлежащих группе, перед именем группы устанавливается символ ”at” @ (“собака”).

Важно! Имя директории общего доступа, отображаемое пользователям, равно имени секции в которой оно описано.

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

testparm -s

Перезапускаем сервер:

service smbd restart

service nmbd restart

Настроим межсетевой экран. Для этого в правилах откроем TCP-порты 139 и 445, а также UDP-порты 137 и 138, но только для тех подсетей, которым доверяете. Для указания собственного диапазона адресов, замените значение после ключа “-s”:

iptables -A INPUT -p tcp -m tcp --dport 445 -s 10.0.0.0/24 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 139 -s 10.0.0.0/24 -j ACCEPT

iptables -A INPUT -p udp -m udp --dport 137 -s 10.0.0.0/24 -j ACCEPT

iptables -A INPUT -p udp -m udp --dport 138 -s 10.0.0.0/24 -j ACCEPT

Для сохранения правил и применения их после перезагрузки сервера следует воспользоваться пакетом iptables-persistent. Установим его:

apt-get install iptables-persistent

Входе установки пакета, программа предложит запомнить существующие правила iptables. Подтверждаем это действие.

Для проверки существующих правил используем:

iptables -L

Настройка общих папок в Windows

По аналогии с Linux, настроим общий доступ к папкам public и private, но в ОС Windows.

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

Панель управления → Сеть → Центр управления сетями и общим доступом → Расширенные настройки общего доступа.

В обновленном окне открываем раздел “Все сети” и ищем секцию “Общий доступ с парольной защитой”. Устанавливаем параметр в положение “Отключить общий доступ с парольной защитой”. Для сохранения значений параметра кликаем по кнопке “Сохранить изменения”.

Отключаем общий доступ с парольной защитой

Теперь откроем доступ к самому каталогу. Кликаем по папке правой кнопкой мыши, в контекстном меню выбираем “Свойства”. Открываем вкладку “Доступ” и кликаем по “Расширенная настройка”.

Выбираем расширенную настройку

В открывшемся окне расширенных настроек общего доступа отмечаем галочкой “Открыть общий доступ к этой папке”, в поле “Имя общего ресурса” указываем название, которое будет отображено пользователям. Кликаем по кнопке “Разрешения”.

В открывшемся окне, в группах пользователей выбираем “Все”, а в разрешениях для группы, устанавливаем галку “Полный доступ”. Нажимаем “OK” в этом и остальных окнах.

Выбираем саму группу и разрешения для группы

В окне свойств папки public кликаем по кнопке “Общий доступ”.

Общий доступ к файлам в Samba | Serverspace

В открывшемся окне добавляем пользователя “Все”, а также делегируем права на “Чтение и запись”. Кликаем по кнопке “Поделиться”.

Выбираем права и делимся ими с пользователями

В обновленном окне нажимаем “Готово”.

Нажимаем готово

Настроим папку общего доступа, но для ограниченного круга лиц.

Кликаем правой кнопкой мыши по папке, выбираем “Свойства”.

В открывшемся окне переходим на вкладку “Доступ”. Кликаем по кнопке “Расширенные настройки”.

В новом открывшемся окне, устанавливаем галку “Открыть общий доступ к этой папке”. Затем кликаем по кнопке “Разрешения”.

Открываем общий доступ к этой папке

В открывшемся окне, в поле “Группы или пользователи” выбираем “Все” и нажимаем кнопку “Удалить”.

Удаляем пользователя

Таким образом установлен запрет на анонимный доступ к папке.

Окно обновится. Кликаем по кнопке “Добавить”.

В открывшемся окне кликаем по кнопке “Дополнительно”.

Выбираем дополнительные параметры

Окно изменится в размере. Кликаем по кнопке “Поиск”. Двойным кликом выбираем пользователя, которому необходим доступ к этому каталогу, например, buhgalter.

Добавляем пользователя которому нужен доступ к этому каталогу

В открывшемся окне, при желании, можем добавить еще одного пользователя через “Дополнительно” – “Поиск”. Аналогичным образом можно добавить группу пользователей, например, “Администраторы”, при этом следует понимать, что доступ будет предоставлен всем пользователям из этой группы.

При желании добавляем еще одного пользователя

Установим права доступа для пользователя “buhgalter”. Если требуется полный доступ к директории, устанавливаем галку в соответствующем месте.

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

Нажимая кнопки “OK” возвращаемся к окну свойств папки, в котором кликаем по кнопке “Общий доступ”.

Возвращаемся обратно и выбираем общий доступ

В данном окне необходимо найти и добавить пользователя “бухгалтер”.

Ищем нашего пользователя и добавляем его

В окне выбора пользователей и групп кликаем по кнопке “Дополнительно”.

Выбираем дополнительные параметры

Окно снова изменит свои размеры. Кликаем по кнопке “Поиск”. В найденном ниже списке пользователей и групп выбираем искомого пользователя. Выбираем его двойным кликом.

Выбираем пользователей

В оставшемся окне проверяем правильно ли указан пользователи и нажимаем кнопку “OK”.

Проверяем выбранного пользователя

Устанавливаем требуемый уровень разрешений для пользователя и кликаем по кнопке “Поделиться”.

Добавляем права и делимся ими

Кликаем по кнопке “Готово”.

Теперь папка общего доступа доступна

Подключение к общим папкам из Linux

Для подключения к общим папкам из среды Linux требуется установка отдельного программного обеспечения – smbclient. Установим:

sudo apt-get install smbclient

Для подключения к серверу используется следующий формат команды:

smbclient -U <Имя_пользователя> <IP-адрес><Имя_каталога_на_сервере>

Пример:

smbclient -U buhgalter 10.0.0.1public

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

sudo apt-get install cifs-utils

Монтирование выполняется по следующему шаблону:

mount -t cifs -o username=<Имя_пользователя>,password= //<IP-адрес>/<Общий каталог> <Точка монтирования>

Пример:

mount -t cifs -o username=Everyone,password= //10.0.0.1/public /media

Важно! Если требуется подключение к общим папкам расположенным на Windows-сервере, то в для не защищенных паролем директорий, в качестве имени пользователя, следует использовать “Everyone”. Для подключения к Linux-серверу рекомендуем использовать в качестве имени пользователя “nobody”. В случае доступа к защищенным директориям следует использовать те учетные данные, которые вы указали.

Подключение к общим папкам из Windows

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

<IP-адрес><имя_папки>

Указав просто IP-адрес сервера вы получите список общих папок.

Список общих папок

При подключении к Windows-серверу, система безопасности может потребовать ввод учетных данных. Для подключения к общей открытой папке используем Everyone, а поле пароля оставляем пустым.

Для подключения к общей папке выбираем Everyone и пустое поле для пароля

При подключении к Linux-серверу из ОС Windows, следует использовать указанный ранее шаблон:

<IP-адрес><имя_папки>

или просто адрес сервера:

<IP-адрес>

Как создать общий сетевой ресурс в Samba

Создайте директорию, которую в хотите сделать общей:

mkdir /home//

Создайте бэкап, если что-то пойдет не так:

sudo cp /etc/samba/smb.conf ~

Отредактируйте файл “/etc/samba/smb.conf”:

sudo nano /etc/samba/smb.conf

Добавьте следующее содержимое в файл:

[]
path = /home//
valid users =
read only = no

Заполните файл своими данными, сохраните его и затем закройте

Перезапустим Samba:

sudo service smbd restart

Использую данную команду проверьте вашу директорию smb.conf на ошибки:

testparm

Чтобы получить доступ к вашему общему сетевому ресурсу:

sudo apt-get install smbclient
# Просмотр всех общих ресурсов:
smbclient -L /// -U
# Подключение:
smbclient /// -U

Note 1: Чтобы подключиться к вашему общему сетевому ресурсу используйте имя вашего пользователя () и пароль, который находится “smb:////”
Учтите, что “” значение передается в “[]”,
другими словами, имя общего ресурса, которое вы ввели в “/etc/samba/smb.conf”.
Note 2: Группа пользователей samba по умолчанию это – “WORKGROUP”.

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

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

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

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

Настройки Windows

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

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

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

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

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

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

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

  1. По окончании инсталляции необходимо используя консоль вписать следующую команду, которая установит недостающие модули Самбы:
    sudo apt-get install -y samba python-glade2
  2. Вслед за этим нужно сделать бэкап существующего файла конфигурации:
    sudo mv /etc/samba/smb.conf /etc/samba/smb.conf.bak
  3. Создать новый файл конфигурации:
    sudo gedit /etc/samba/smb.conf
  4. В открывшийся документ нужно внести следующую информацию:
    [global]
    workgroup = WORKGROUPE
    netbios name = gate
    server string = %h server (Samba, Ubuntu)
    dns proxy = yes
    log file = /var/log/samba/log.%m
    max log size = 1000
    map to guest = bad user
    usershare allow guests = yes
  5. Сохранить изменения кликом по кнопке в правом верхнем углу.Сохранить изменения

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

  1. Открыть его с помощью текстового редактора:
    sudo gedit /etc/security/limits.conf
  2. Прокрутить вниз и перед последней строчкой в документе добавить следующее:
    * - nofile 16384
    root - nofile 16384
  3. Сохранить изменения.

Результат:Результат использования

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

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

  1. Сперва следует создать обычную директорию, название которой может быть абсолютно любым. Команда для консоли:
    sudo mkdir -p /*выбранный путь*/share
  2. Задать права для того чтобы все пользователи смогли проводить операции над вложенными файлами. При этом следует указать точный путь:
    sudo chmod 777 -R /*…*/share
  3. Открыть конфигурационный файл, чтобы добавить в него некоторые данные:
    sudo gedit /etc/samba/smb.conf
  4. После блока «Global» добавить следующее:
    [Share]
    comment = Full Share
    path = *…*/share
    guest ok = yes
    browsable = yes
    writable = yes
    read only = no
    force user = user
    force group = users
  5. Сохранить изменения. В результате должно получиться следующее:Результат сохранения
  6. Перезапустить Самбу:
    sudo service smbd restart

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

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

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

  1. Создать папку, назвать ее, например, «readonly». В терминале ввести:
    sudo mkdir -p /readonly
  2. Дать папке необходимые права:
    sudo chmod 777 -R readonly
  3. Следующей командой открыть конфигурацию:
    sudo gedit /etc/samba/smb.conf
  4. Вновь добавить фрагмент текста в конец файла:
    [Read]
    comment = Only Read
    path = /readonly
    guest ok = yes
    browsable = yes
    writable = no
    read only = yes
    force user = user
    force group = users
  5. Сохранить документ.

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

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

  1. Создать папку, к примеру «Auth»:
    sudo mkdir -p /Auth
  2. Задать права:
    sudo chmod 777 -R /Auth
  3. Задать группу пользователей на свой выбор, а затем и пользователя, которому дать права доступа по авторизации.
  4. Добавить пользователя, например, «teacher»:
    sudo useradd -g smbuser teacher
  5. Задать пароль для авторизации:
    sudo smbpasswd -a teacher
  6. Внести изменения в файл конфигурации, добавив фрагмент:
    [Pasw]
    comment = Only password
    path = /auth
    valid users = teacher
    read only = no

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

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

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

  1. Для установки нужно ввести в консоли следующую команду:
    sudo apt install system-config-samba
  2. Вместе с этим установить все сопутствующие компоненты Самба:
    sudo apt-get install -y samba samba-common python-glade2 system-config-samba
  3. Перейти к запуску и настройке.

Запуск

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Установка

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

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

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

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

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

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

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

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

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

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

После установки SAMBA сервера необходимо настроить его для работы в вашей сети. Для этого откройте файл настроек SAMBA в текстовом редакторе. Обычно этот файл располагается по пути C:\Program Files\Samba\etc\smb.conf. В файле определены основные настройки сервера, такие как название группы или домена, название сервера, пользователи и разрешения доступа к файлам и папкам.

После открытия файла smb.conf необходимо указать название вашего домена или группы в параметре workgroup. Также вы можете настроить доступ к папкам и файлам, добавив соответствующие настройки в раздел [share]. Сохраните изменения и закройте файл.

Последним шагом является запуск SAMBA сервера. Для этого воспользуйтесь командной строкой и выполните команду «smbd». Теперь ваш SAMBA сервер готов к работе и вы сможете обмениваться файлами и пользоваться другими ресурсами с другими компьютерами в сети.

Установка необходимых компонентов для работы SAMBA на Windows 10

Для настройки SAMBA сервера на операционной системе Windows 10 необходимо установить следующие компоненты:

1. Проверьте наличие SMBv1

Убедитесь, что SMBv1 включен на вашем компьютере:

а) Откройте «Панель управления».

б) В разделе «Сеть и Интернет» выберите «Параметры Windows Defender».

в) В разделе «Защита от вредоносного ПО и угроз» нажмите на ссылку «Дополнительные параметры».

г) Проверьте, что переключатель «Использовать обязательное контроль соответствия подписи отказа» установлен в положении «Вкл».

д) Проверьте, что переключатель «Использовать SMBv1» установлен в положении «Вкл» (если это возможно).

2. Установите ПО протокола SMBv1

Если SMBv1 не был обнаружен, выполните следующие действия:

а) Откройте «Панель управления».

б) В разделе «Программы» выберите «Включение или отключение компонентов Windows».

в) В окне, которое появится, убедитесь, что переключатель «Сервис SMB 1.0/CIFS клиент» установлен.

г) Нажмите «OK» и подождите завершения процесса установки компонента.

3. Установите SAMBA сервер

Для установки SAMBA сервера на Windows 10 необходимо выполнить следующие действия:

а) Откройте «Системные настройки».

б) В разделе «Приложения» выберите «Приложения и компоненты».

в) Нажмите на ссылку «Включение или отключение компонентов Windows».

г) В окне, которое появится, убедитесь, что переключатель «Сервис файлов SAMBA клиент» установлен.

д) Нажмите «OK» и подождите завершения процесса установки компонента.

После установки всех необходимых компонентов вы можете приступить к настройке SAMBA сервера на Windows 10.

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

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

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

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

Содержание

  1. Получение и установка Samba сервера
  2. Настройка файловой системы для Samba сервера
  3. Создание и настройка пользователей Samba
  4. Настройка доступа к Samba серверу из Windows 10
  5. Отладка и устранение проблем на Samba сервере
  6. Проблема 1: Не удается установить соединение с Samba сервером
  7. Проблема 2: Низкая скорость передачи данных
  8. Проблема 3: Ошибка доступа или отказ в доступе

Получение и установка Samba сервера

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

1. Перейдите на официальный сайт Samba по адресу www.samba.org.

2. На главной странице найдите раздел «Downloads» (Загрузки) и перейдите в него.

3. В разделе «Stable Releases» (Стабильные версии) найдите последнюю доступную версию Samba сервера и нажмите на ссылку для скачивания.

4. В появившемся окне выберите вариант загрузки, который соответствует вашей операционной системе (например, Windows).

5. После завершения загрузки запустите установочный файл и следуйте инструкциям мастера установки.

6. По умолчанию, Samba сервер будет установлен в директорию «C:\Program Files\Samba». Если вы хотите изменить путь установки, выберите соответствующую опцию во время установки.

7. После завершения установки Samba сервер будет готов к настройке.

Теперь у вас установлен Samba сервер на вашем компьютере, и вы можете приступить к настройке его работы с Windows 10.

Ссылки:
www.samba.org

Настройка файловой системы для Samba сервера

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

Для начала, создайте директорию, которую вы хотите использовать для обмена файлами с Windows 10. Например, вы можете создать директорию с именем «samba_share» в корневом каталоге системы:

sudo mkdir /samba_share

Затем измените владельца и группу этой директории на пользователя и группу Samba:

sudo chown -R nobody:nogroup /samba_share

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

sudo chmod -R 777 /samba_share

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

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

sudo smbpasswd -a <имя-пользователя>

Замените <имя-пользователя> на имя пользователя Samba, которого вы хотите создать.

После выполнения этих шагов, файловая система будет готова к использованию Samba сервером для обмена файлами между Windows 10 и Linux.

Создание и настройка пользователей Samba

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

1. Создание пользователей Linux

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

2. Создание пользователей Samba

После создания пользователей Linux можно создать их аналогов в Samba. Для этого выполните команду smbpasswd -a <username>. Здесь <username> — это имя пользователя Linux, доступ к которому вы хотите предоставить через Samba. Вам потребуется ввести пароль для пользователя Samba.

3. Настройка прав доступа

Когда пользователи Samba созданы, вы можете настроить права доступа для каждого из них. Для этого откройте файл конфигурации Samba (/etc/samba/smb.conf) и добавьте следующую секцию:

[<имя ресурса>]
path = <путь к ресурсу>
valid users = <пользователи, разделенные запятыми>
writable = yes
browseable = yes

В данной секции необходимо заменить <имя ресурса> и <путь к ресурсу> соответственно именем ресурса и путем к нему на вашем сервере. В поле <пользователи, разделенные запятыми> укажите имена пользователей, которым разрешен доступ к данному ресурсу. Если разрешен доступ всем пользователям, можно указать знак » * «.

4. Перезапуск сервиса Samba

После внесения всех изменений необходимо перезапустить сервис Samba для применения настроек. Выполните команду sudo service smbd restart или sudo systemctl restart smbd, в зависимости от используемой версии системы.

Теперь вы создали и настроили пользователей Samba, которые могут получить доступ к ресурсам на вашем сервере. При подключении к серверу с компьютера под управлением Windows 10 они смогут использовать свои учетные данные для входа и работать с ресурсами.

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

После установки и настройки Samba сервера на Linux машине, вам потребуется настроить доступ к серверу из операционной системы Windows 10.

Для начала, вам необходимо установить Samba клиент на вашей Windows 10 машине:

  1. Откройте «Панель управления» и выберите «Программы».
  2. Нажмите на «Включение или отключение компонентов Windows».
  3. Найдите «Поддержку SMB 1.0/CIFS клиента» и убедитесь, что флажок напротив него установлен.
  4. Нажмите «OK» и подождите, пока Windows установит необходимые компоненты.

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

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

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

  1. Откройте «Проводник» на вашей Windows 10 машине.
  2. Щелкните правой кнопкой мыши на любую папку или диск и выберите «Сетевой удаленный доступ».
  3. Выберите ваш Samba сервер из списка или введите его IP-адрес вручную.
  4. Введите учетные данные пользователя Samba сервера (имя пользователя и пароль).
  5. Нажмите «OK» и вы должны увидеть все доступные ресурсы на вашем Samba сервере.

Теперь вы можете свободно обмениваться файлами и папками между вашим Samba сервером и Windows 10 машиной.

Отладка и устранение проблем на Samba сервере

Настройка Samba сервера может иногда сопровождаться некоторыми проблемами. В этом разделе мы рассмотрим несколько распространенных проблем и их решений.

Проблема 1: Не удается установить соединение с Samba сервером

Если у вас возникла проблема с подключением к Samba серверу, вам следует проверить следующие шаги:

  1. Убедитесь, что Samba сервер запущен и работает должным образом.
  2. Проверьте права доступа для папки, которую вы хотите сделать общей. Убедитесь, что у пользователя есть необходимые права доступа для чтения и записи.
  3. Установите правильные настройки сети и проверьте, что ваш компьютер находится в той же локальной сети, что и Samba сервер.
  4. Попробуйте временно отключить брандмауэр на вашем компьютере и проверьте, получилось ли соединиться с сервером.

Проблема 2: Низкая скорость передачи данных

Если вы столкнулись с низкой скоростью передачи данных на Samba сервере, вот несколько рекомендаций:

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

Проблема 3: Ошибка доступа или отказ в доступе

Если при попытке подключиться к Samba серверу вы получаете ошибку доступа или отказ в доступе, выполните следующие действия:

  1. Проверьте правильность ввода имени пользователя и пароля. Убедитесь, что они верны и что пользователь имеет разрешение на доступ к общим папкам.
  2. Проверьте настройки безопасности Samba сервера. Убедитесь, что доступ разрешен для всех пользователей или только для определенных групп.
  3. Убедитесь, что файлы и папки, которые вы пытаетесь раздать, имеют правильные разрешения доступа для чтения и записи.
  4. Если вы используете LDAP или Active Directory для аутентификации пользователей, проверьте настройки этих служб и убедитесь, что они работают должным образом.

Если вы продолжаете испытывать проблемы с Samba сервером, рекомендуется обратиться к документации Samba или проконсультироваться со специалистом.

Время на прочтение
6 мин

Количество просмотров 16K

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

Однажды потребовалось мне организовать доступ к серверу по протоколу SMB и в поиске решения я наткнулся на следующую статью: Mounting your Nikhef home directory using SSH for Windows 8. Это было простое и удобное решение, которое использовало Putty. Чуть позже мне пришлось настраивать это решение на другом компьютере и я понял, что Putty тут лишний с тех пор как в Windows 10 появился встроенный ssh-клиент на основе OpenSSH.

Под катом — идентичная схема, только с использованием OpenSSH под Windows 10.

У меня схема организована следующим образом:

  1. На сервере запущена Samba, от имени пользователя www-data расшарена корневая папка с сайтами. Доступ к серверу только через ssh с авторизацией по ключу. Сервер за NATом, порт проброшен только для ssh.
  2. В процессе входа в аккаунт на домашней машине на Windows 10 через встроенный в систему OpenSSH устанавливается соединение с сервером с авторизацией по ключу.
  3. Туннелируется порт 445 удаленной машины на локальный порт 44445 сетевого loopback-адаптера доступного по адресу 10.255.255.1
  4. На loopback-адаптере 10.255.255.1 порт 44445 проксируется на локальный 445. Таким образом при подключении к \\10.255.255.1\ открывается удаленная шара с файлами (которая, при необходимости монтируется как сетевой диск).

Всё это автоматом – лень торжествует. Безопасно, быстро и нативно выглядит. Любым редактором могу открывать и править файлы на удаленном сервере как у себя на локальном — без проблем с загрузкой правленых файлов и установкой им необходимых разрешений. При этом нет проблем с безопасностью Samba.

Итак – сперва по шагам:

На стороне WINDOWS

Должен быть установлены OpenSSH. В Windows 10 и Windows Server 2019 появился встроенный SSH клиент на основе OpenSSH. Им мы и воспользуемся. Сначала убедимся что он установлен – наберем в командной строке

ssh

Если видим исполнение команды — все «Ок», клиент присутствует в системе.

Шаг 1. Настройка сетевого адаптера

Устанавливаем loopback-адаптер в системе. Мы будем обращаться по адресу к локальному адаптеру.

hdwwiz.exe

Запустится «Мастер установки оборудования» (Здесь я пользуюсь русской Windows 10 Pro).

«Далее» -> «Установка оборудования, выбранного из списка вручную» -> «Сетевые адаптеры» -> «Microsoft –> Адаптер замыкания на себя Microsoft KM-Test» -> «Далее»

Уверен, что эти шаги можно сделать из командной строки, но не нашел способ установки драйвера без devcon.exe, потому и не стал заморачиваться с автоматизацией этого шага.

Далее уже в CMD (от имени Администратора).

netsh interface show interface

Видим появился второй адаптер. У меня он называется Ethernet 2.

Теперь настроим адрес для этого адаптера

Или из командной строки:

netsh interface ip set address name="Ethernet 2" source=static address=10.255.255.1 mask=255.255.255.0

В результате у нас появился адаптер локально доступный по адресу 10.255.255.1

Теперь проблема в том, что нам необходимо получить доступ к общей папке через TCP-порт 445, но при загрузке Windows этот порт захватывается системным драйвером lanmanserver для всех интерфейсов. Отложив запуск драйвера lanmanserver и установив правило portproxy, мы можем обойти это.

Далее в командной строке от имени администратора меняем режим запуска сетевых служб (пробел после «start=» обязателен!!!):

sc config lanmanserver start= demand
sc config iphlpsvc start= auto

и настраиваем для адаптера с адресом 10.255.255.1 проксирование порта 44445 на локальный порт 445

netsh interface portproxy add v4tov4 listenaddress=10.255.255.1 listenport=445 connectaddress=10.255.255.1 connectport=44445

Теперь необходимо перезагрузиться, чтобы схема перехвата порта у службы lanmanserver сработала.

Проверяем что прослушивание порта осуществляется нашим loopback-адаптером, просмотрев открытые в системе порты

netstat -an | find ":445 "

Если мы видим

TCP    10.255.255.1:445    0.0.0.0:0       LISTENING

значит все в порядке и порт прослушивается на нужном адресе. Если же мы видим «0.0.0.0:445» — значит в нашей схеме что-то не сработало правильно. Проверить правила переадресации портов можно командой

netsh interface portproxy show v4tov4

Шаг 2. Ключ и рабочий скрипт

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

mkdir %APPDATA%\CIFSoverSSH
cd %APPDATA%\CIFSoverSSH

Генерируем ключ для ssh-авторизации (назовем его, например: cifsoversshkey)

ssh-keygen -t rsa -N "" -f cifsoversshkey 

В результате будет сгенерирована пара открытого и закрытого ключа. Для того, чтобы OpenSSH не выдавал сообщение UNPROTECTED PRIVATE KEY FILE! нужно изменить права на файл ключа. Задачу мы будем запускать для одного пользователя, от имени которого мы собираемся работать в Windows. Можно через GUI, но мне показалось что картинок уже достаточно. В Windows это сделаем следующей командой:

icacls cifsoversshkey /RESET
icacls cifsoversshkey /grant Имя_Пользователя:F /inheritance:r

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

icacls cifsoversshkey 

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

Создадим в текущей папке пакетный файл cifsoverssh.cmd следующего содержания:

call cmd /c start "" /B C:\Windows\System32\OpenSSH\ssh.exe user@111.111.111.111 -p remoteport -i %APPDATA%\CIFSoverSSH\cifsoversshkey -L 10.255.255.1:44445:localhost:445 -N -o "StrictHostKeyChecking=no"

Где:
user@111.111.111.111пользователь на стороне linux сервера @ адрес удаленного сервера

Шаг 3. Ярлык или задача в планировщике

Создаем ярлык для следующей команды: powershell -nologo -noninteractive -windowStyle hidden -command «%APPDATA%\CIFSoverSSH\cifsoversshkey.cmd»
Это позволит запускать наш пакетный файл через powershell без открытия окна. Если запускать его через CMD будет открываться черное окно терминала и будет висеть все время, пока соединение будет установлено, а это неудобно и некрасиво.

Для автоматизации запуска при входе в систему можно создать задачу в планировщике:

schtasks /CREATE /RU %username% /TN "CIFS over SSH" /TR "powershell.exe -nologo -noninteractive -windowStyle hidden -command %APPDATA%\CIFSoverSSH\cifsoversshkey.cmd" /SC ONLOGON /DELAY 0000:10 /IT /RL highest

На стороне клиентского компьютера Windows все приготовления были закончены.

Настройка Linux сервера

Предполагается, что ssh-сервер был предварительно настроен и включена авторизация по ключу.

Подключаемся по ssh из командной строки на windows-машине

C:\Windows\System32\OpenSSH\ssh.exe user@111.111.111.111 -p remoteport

В домашней папке пользователя, от имени которого мы будем авторизовываться при создании туннеля ищем файл ~/.ssh/authorized_keys (если файл отсутствует – создадим его).

mkdir ~/.ssh && touch ~/.ssh/authorized_keys

Теперь необходимо в этот файл вставить содержимое нашего файла публичного ключа, созданного на нашей windows-машине (файл %APPDATA%\CIFSoverSSH\cifsoversshkey.pub). Откроем его в любом редакторе и вставим цепочку ключа с новой строки. Если есть другие ключи, просто вставим его с новой строки.

Устанавливаем Samba (на примере Debian)

apt update && apt install samba

Переименовываем старый файл настроек и создаем новый файл

mv /etc/samba/smb.conf /etc/samba/smb.conf.old
touch /etc/samba/smb.conf

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

[global]
realm = webserver
server string = Web server
workgroup = WORKGROUP
# Setup charsets
dos charset = cp1251
unix charset = utf8
# Disable printers
load printers = No
show add printer wizard = no
printcap name = /dev/null
disable spoolss = yes
# Setup logging
log file = /var/log/smbd.log
max log size = 50
max xmit = 65536
debug level = 1
# Setup daemon settings
domain master = No
preferred master = Yes
socket options = IPTOS_LOWDELAY TCP_NODELAY SO_SNDBUF=65536 SO_RCVBUF=65536 SO_KEEPALIVE
os level = 65
use sendfile = Yes
dns proxy = No
dont descend = /proc,/dev,/etc
deadtime = 15
# Enable symlinks
unix extensions = No
wide links = yes
follow symlinks = yes

# Securtity settings
security = user
map to guest = Bad Password
guest account = nobody
create mask = 0664
directory mask = 0775
hide dot files = yes
client min protocol = SMB2
client max protocol = SMB3
[ShareName]
comment = Sites folder
path = /home/web
force user = www-data
force group = www-data
read only = No
guest ok = Yes
writable = yes
create mask = 0664
directory mask = 2775

В последней секции мы настраиваем непосредственно шару. В названии секции указываем имя шары ShareName. Path = путь к файлам, которые мы хотим расшарить. В параметрах force user и force group указываем linux-пользователя, от имени которого будут сохраняться файлы при изменении и создании в шаре. Так как у меня там лежат файлы для веб-сервера – у меня пользователь www-data

Перезапускаем Samba

systemctl restart smbd

Отключаемся и выходим в командную строку Windows

exit

Всё готово. Теперь остается только запустить наш ярлык или выйти из профиля пользователя windows и снова войти (если вы создали задачу в планировщике).

После этого ваша удаленная шара будет доступна по адресу \\10.255.255.1\ShareName — Можно даже монтировать её как сетевой диск.

  • Как настроить smb на windows 11
  • Как настроить punto switcher для windows 10
  • Как настроить prtscr в windows 10
  • Как настроить skype для windows 10
  • Как настроить proxy сервер на windows