Ubuntu общая папка для windows

У вас дома есть несколько устройств? Нужно ли использовать флэш-диск или SD-карту для переноса данных с Ubuntu на другой компьютер? Находите ли вы это раздражающим? Мы знаем, что это так. Поэтому мы не хотим, чтобы вы тратили свое драгоценное время, в то время как вы можете передавать свои файлы, документы и другие большие вещи быстро и легко, по локальной сети. Это одноразовая настройка, а затем с помощью нескольких щелчков мыши вы сможете обмениваться файлами между Ubuntu и Windows или любой другой системой Linux. И не волнуйтесь, это легко и займет всего немного времени.

Также стоит добавить, что это руководство должно быть полезно для любой версии ОС Linux.

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

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

Мы рассмотрим оба метода в этой статье и дадим вам возможность решить, какой из них вы предпочитаете использовать.

Метод 1. Общий доступ к папкам в локальной сети без пароля

Вам придется выполнить некоторые настройки как в Windows, так и в Ubuntu.

Разрешение на совместное использование в Убунту

Чтобы предоставить общий доступ к папке в локальной сети в Ubuntu, щелкните правой кнопкой мыши нужную папку и выберите Локальный сетевой ресурс:

Share folder over LAN in ubuntu 14.04

Не видите опцию локального сетевого ресурса?

Когда вы нажимаете на Локальный сетевой ресурс, вы увидите опцию общего доступа к папке. Просто отметьте опцию Общий доступ к этой папке:

Share folders in Ubuntu and Windows

Поиск и устранение неисправностей: Если у вас появится сообщение о том, что служба Sharing service не устанавливается, как показано на скриншоте ниже, просто нажмите кнопку Установить службу и следуйте инструкциям.

Sharing service in Ubuntu

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

sharing the folders in Ubuntu

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

Теперь нужно получить доступ к общей папке на машине Windows.

Шаг 2: Включение совместного доступа в Windows

В Windows щелкните правой кнопкой мыши на «Этот Компьютер» или «Мой компьютер» и выберите «Добавить новое соединение».

Adding New Connection

Добавление нового соединения

Нажмите на кнопку «Далее».

Adding New Connection

Добавление нового соединения

Теперь пришло время ввести адрес сервера и имя папки, к которой мы предоставили общий доступ. Пожалуйста, введите в следующем формате.

Вы можете найти адрес вашего сервера, т.е. IP-адрес машины с Linux, введя команду ip a.

В моем случае IP-адрес машины с Linux равен 192.168.0.102, а папка, к которой я предоставил общий доступ, является общей.

Ip Address

Ip-адрес

Теперь добавьте местоположение следующим образом:

Entering Server Address

Ввод адреса сервера

Теперь вы увидите этот экран, просто щелкните дальше.

Adding New Connection

Добавление нового соединения

Теперь вы можете получить доступ к общей папке в разделе «Этот ПК» или «Мой компьютер» в разделе «Сетевое расположение».

New Shared Folder

Новая общая папка

Это был простой способ. Он обеспечивает доступ к этим файлам любому человеку в вашей локальной сети.

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

Вот здесь и появляется Samba-сервер. Рассмотрим его во второй части урока.

2. Общий доступ к папкам в локальной сети в Ubuntu с помощью парольной защиты

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

Что такое Самба?

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

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

Инсталляция сервера Samba на Ubuntu

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

sudo apt-get update && sudo apt-get upgrade

Теперь установите Samba server и несколько других необходимых вещей с помощью следующей команды:

sudo apt-get install samba samba-common system-config-samba python-glade2

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

Настройка сервера Samba в Ubuntu

Откройте инструмент Samba Configuration из тире:

Setup Samba in Linux/Ubuntu

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

В Параметрах сервера у вас есть две вкладки, ‘Basic’ и ‘Security’. В закладке Basic у вас есть следующие опции:

  • Рабочая группа — это название рабочей группы компьютера, к которому вы хотите подключиться. Например, если вы хотите подключиться к компьютеру с Windows, то введете имя рабочей группы компьютера с Windows, а в Windows у вас уже есть то же имя рабочей группы, которое установлено по умолчанию в Настройках сервера Samba. Но если у вас другое имя рабочей группы в Windows, то вы введете его в это поле. (В Windows 7, чтобы получить имя рабочей группы, щелкните правой кнопкой мыши значок Этот компьютер и перейдите в Свойства, там вы увидите имя рабочей группы Windows).
  • Описание — Это название вашего компьютера, как его видят другие. Не используйте пробелы или неинтернет-доброжелательные символы.

setting up samba server

Разрешение ‘Гости’ не рекомендуется, поэтому нет причин изменять настройки безопасности. Оставьте все как есть.

Samba Security security settings

Готово! Вы установили Samba-сервер. Мы недалеко от того, чтобы поделиться нашей первой папкой в сети.

Создание системного пользователя для совместного использования файлов в сети

Теперь мы создадим системного пользователя для совместного использования файлов в сети. Это очень просто.

  • Перейдите в раздел «Системные настройки».
  • В разделе Системные настройки нажмите Учетные записи пользователей.
  • Нажмите кнопку разблокировки, чтобы включить значок +.
  • Нажмите значок + (плюс), чтобы создать нового пользователя системы.

create system user account in Ubuntu/Linux

Теперь, как вы видите на изображении выше, вы можете ввести «Полное имя». При вводе ‘Полное имя’ Имя пользователя будет автоматически воспринято как ‘Полное имя’. Потому что мы создаем этого пользователя для совместного использования файлов, поэтому мы назначим тип аккаунта ‘Стандартный’.

Выполнили шаги, описанные выше? Идем дальше. Нажмите «Добавить».

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

activate system user in Ubuntu/Linux

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

Добавление нового пользователя Samba

Откройте Samba и нажмите Samba Users в разделе Preferences (Предпочтения). Заполните простую форму. Вот пара подробностей о полях формы:

Unix Username — В данном случае я выбираю пользователя, которого только что создал.

Имя пользователя Windows — Вы вводите это имя пользователя при доступе из компьютера на Windows

Samba Password — Вы введете этот пароль, когда захотите иметь доступ из компьютера на Windows.

samba user setting

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

sudo restart smbd && sudo restart nmbd

Общий доступ к папкам или файлам по сети

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

share files and folders over network with samba

Заполните поля. В ‘Directory’ выберите папку, к которой вы хотите предоставить общий доступ. Здесь вы найдете подробную информацию о полях, которые увидите:

  • Share name — это имя папки, которую увидит другой пользователь.
  • Description простое описание содержимого, к которому вы предоставляете общий доступ в сети.
  • Writable. Общие папки по умолчанию ‘только для чтения’. Вы можете установить их в режим «writable», если хотите, чтобы другие пользователи в сети изменили их.
  • Visible. Как следует из названия, когда вы нажимаете Visible, общая папка будет видна людям в сети.

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

setting up permissions for sharing folder on network

Наконец, нажмите OK для завершения обмена. Теперь папка открыта всем желающим. Вы завершили предоставление общего доступа к папке в сети. И все? Да! А как удалить папки из сети?

Удаление общих папок

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

remove shared folder from network

Готово! Мы также можем обмениваться файлами по сети с помощью терминала, но это настраивается не так просто, как это было в графическом интерфейсе. Если вы зададите вопросы по доступу к файлам из командной строки, то я напишу учебное пособие о том, как обмениваться файлами по сети с помощью терминала в Linux.

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

Пожалуй нет ни одного офиса, в котором не применялись бы общие ресурсы локальной сети, будь то папки или принтеры. Крупные и средние компании используют возможности 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 для Debian GNU/Linux.
#
#
# Это основной конфигурационный файл Samba. Чтобы понять значение
# указанных здесь опций, прочитайте man-руководство smb.conf(5).
# У Samba есть большое количество опций настройки, большинство
# из которых здесь не показаны.
#
# Некоторые опции, который часто стоит настроить, показаны как
# закомментированные примеры в этом файле.
#  - Когда такие опции закомментированы с помощью ";", то эта
#    предложенная настройка включает опцию, которая отличается
#    от поведения по умолчанию Samba.
#  - Когда комментарий начинается с "#", то эта предложенная
#    настройка соответствует поведению по умолчанию Samba,
#    однако опция достаточно важна, чтобы быть упомянутой.
#
# ЗАМЕЧАНИЕ: всякий раз, когда Вы изменили этот файл, нужно
# проверить корректность сделанных настроек с помощью запуска
# команды "testparm" - она покажет базовые ошибки синтаксиса.
 
#==================== Глобальные настройки ====================
 
[global]
 
## Браузинг/идентификация ###
 
# Поменяйте это имя так, чтобы оно соответствовало рабочей
# группе / домену NT, куда сервер Samba будет входить как часть
# сетевого окружения:
   workgroup = WORKGROUP
 
# server string это эквивалент поля NT Description (описание сервера):
        server string = %h server (Samba, Ubuntu)
 
# Секция поддержки службы Windows Internet Name Serving:
# WINS Support - Tells the NMBD component of Samba to enable its WINS Server
#   wins support = no
# WINS Server - сообщает WINS-клиенту компоненты NMBD.
# Замечание: Samba может быть либо сервером WINS, либо клиентом WINS,
# но не может выполнять обе эти роли одновременно.
;   wins server = w.x.y.z
 
# Эта опция предотвратит для nmbd поиск NetBIOS-имен через DNS.
   dns proxy = no
 
 
#### Сетевые настройки ####
 
# Специфический набор интерфейсов / сетей для привязки службы.
# Это может быть либо имя интерфейса, либо IP-адрес/маска;
# обычно предпочитают имена интерфейсов.
;   interfaces = 127.0.0.0/8 eth0
 
# Привязка только и именованным интерфейсам и/или сетям; для её применения
# Вы должны использовать вышеуказанную опцию 'interfaces'. Рекомендуется
# разрешить эту функцию, если Ваша машина с Samba не защищена файерволом
# или сама является файерволом. Однако эта опция не может корректно
# обрабатывать динамические или не широковещательные интерфейсы.
;   bind interfaces only = yes
 
 
#### Отладка / учет ####
 
# Говорит Samba использовать отдельный log-файл для каждой машины, которая
# подключится:
   log file = /var/log/samba/log.%m
 
# Предел размера отдельных лог-файлов (в килобайтах).
   max log size = 1000
 
# Если Вы хотите, чтобы Samba писала только в системный лог (syslog),
# то установите следующий параметр как 'yes'.
#   syslog only = no
 
# Мы хотим свести к минимуму количество информации, сохраняемой в syslog.
# Вместо этого все должно идти в /var/log/samba/log.{smbd,nmbd}. Если Вы
# хотите писать именно в syslog, то должны установить следующий параметр
# в какое-то большее число.
   syslog = 0
 
# Сделать что-нибудь значимое, когда Samba упала: отправить письмо
# backtrace админу:
   panic action = /usr/share/samba/panic-action %d
 
 
####### Аутентификация #######
 
# Роль сервера. Определяет, в каком режиме будет работать Samba. Возможные
# значения "standalone server", "member server", "classic primary
# domain controller", "classic backup domain controller", "active
# directory domain controller".
#
# Большинство пользователей предпочитают "standalone sever" или "member server".
# Запуск в качестве "active directory domain controller" сначала потребует
# запуска "samba-tool domain provision" чтобы вычистить базы данных и создать
# новый домен.
   server role = standalone server
 
# Если Вы хотите использовать зашифрованные пароли, то Samba должна знать,
# какую базу данных паролей Вы используете.
   passdb backend = tdbsam
   obey pam restrictions = yes
 
# Этот двоичный параметр (yes/no) управляет, будет ли Samba делать попытки
# синхронизировать пароль Unix с паролем SMB, когда изменен шифрованный 
# пароль SMB password в базе passdb.
   unix password sync = yes
 
# Для синхронизации пароля Unix, работающей на системе Debian GNU/Linux,
# должны быть установлены следующие параметры (благодаря Ian Kahan 
<< kahan@informatik.tu-muenchen.de> для отправки корректного чат-скрипта
# программе passwd в Debian Sarge).
   passwd program = /usr/bin/passwd %u
   passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:*
    %n\n *password\supdated\ssuccessfully* .
 
# Эта двоичная опция управляет, будет ли использоваться PAM для изменений
# пароля, когда запрашивается SMB-клиент вместо программы, перечисленной
# d'passwd program'. Значение по умолчанию 'no'.
   pam password change = yes
 
# Эта опция управляет, как не успешные попытки аутентификации будут отображаться
# на анонимные подключения:
   map to guest = bad user
 
 
########## Домены ###########
 
#
# Следующие установки дают эффект только если установлено 'server role = primary
# classic domain controller', 'server role = backup domain controller', или
# 'domain logons'.
#
 
# Задает место нахождения директории профиля пользователя с точки зрения
# клиента). Следующий пример требует наличия настроенной на сервере Samba
# шары [profiles] (см. ниже):
;   logon path = \\%N\profiles\%U
# Другой общий выбор - сохранение профиля в домашней директории пользователя
# (это вариант по умолчанию для Samba):
#   logon path = \\%N\%U\profile
 
# Следующая установка дает эффект только если установлено 'domain logons'.
# Задает место нахождения домашней директории пользователя (с точки зрения
# клиента):
;   logon drive = H:
#   logon home = \\%N\%U
 
# Следующая установка дает эффект только если установлено 'domain logons'.
# Задает скрипт, запускаемый при логоне. Скрипт должен быть сохранен в шаре
# [netlogon].
# Замечание: файл скрипта должен иметь имя формата 'DOS'.
;   logon script = logon.cmd
 
# Это позволяет создавать пользователей Unix на контроллере домена через SAMR
# RPC pipe. Пример команды создает учетную запись пользователя  с запрещенным
# паролем Unix; пожалуйста адаптируйте этот пример под свои нужды:
; add user script = /usr/sbin/adduser --quiet --disabled-password --gecos "" %u
 
# Это позволяет учетным записям машины быть созданными на контроллере домена
# через SAMR RPC pipe. Следующий пример настройки подразумевает, что группа
# "machines" существует на системе:
; add machine script  = /usr/sbin/useradd -g machines -c "%u machine account"
 -d /var/lib/samba -s /bin/false %u
 
# Это позволяет группам Unix быть созданными на контроллере домена
# через SAMR RPC pipe.
; add group script = /usr/sbin/addgroup --force-badname %g
 
 
############ Разное ############
 
# Использование следующей строки позволит Вам настроить пользовательскую
# конфигурацию на базе машин. Строка %m будет заменена именем netbios машины,
# которая подключается.
;   include = /home/samba/etc/smb.conf.%m
 
# Некоторые умолчания для winbind (убедитесь, что Вы не используете эти
# диапазоны для чего-то еще).
;   idmap uid = 10000-20000
;   idmap gid = 10000-20000
;   template shell = /bin/bash
 
# Настройка опций шар пользователя, чтобы разрешить не-root
# пользователям расшаривать папки командой net usershare.
# Максимальное количество шар пользователя. 0 (по умолчанию) означает,
# что функция usershare запрещена.
;   usershare max shares = 100
 
# Разрешает пользователям, которым даны привилегии usershare, создавать
# публичные шары, не только аутентификационные:
   usershare allow guests = yes
 
 
#======================= Определения шар =======================
 
# Раскомментируйте следующее (и настройте другие опции ниже по мере
# надобности), чтобы разрешить шары домашней директории по умолчанию.
# Это расшарит каждую домашнюю директорию пользователя как
# \\server\username:
;[homes]
;   comment = Home Directories
;   browseable = no
 
# По умолчанию домашние директории экспортируются только для чтения
# (read-only). Поменяйте следующий параметр на 'no', если хотите
# иметь возможность писать в них:
;   read only = yes
 
# Маска создания файла установлена на 0700 по соображениям безопасности.
# Если Вы хотите создавать файлы с разрешениями group=rw, то установите
# следующий параметр на 0775 (полный доступ для всех задается маской 0x777).
;   create mask = 0700
 
# Маска создания директории установлена на 0700 по соображениям безопасности.
# Если Вы хотите создавать каталоги с разрешениями group=rw, то установите
# следующий параметр на 0775 (полный доступ для всех задается маской 0x777).
;   directory mask = 0700
 
# По умолчанию к шарам \\server\username могут подключаться кто угодно,
# кто имеет доступ к серверу Samba. Раскомментируйте следующий параметр
# для гарантии, что только "username" может подключиться к шаре
# \\server\username. Это может потребовать подстройки, если используются
# схемы внешней аутентификации.
;   valid users = %S
 
# Раскомментируйте следующее, чтобы создать директорию netlogon для
# логонов домена (Domain Logons). Также потребуется сконфигурировать
# Samba, чтобы она функционировала как контроллер домена.
;[netlogon]
;   comment = Network Logon Service
;   path = /home/samba/netlogon
;   guest ok = yes
;   read only = yes
 
# Раскомментируйте следующее, чтобы создать директорию profiles для
# хранения профилей пользователей (см. выше опцию "logon path").
# Также потребуется сконфигурировать Samba, чтобы она функционировала
# как контроллер домена. Путь ниже должен быть записываемым для всех
# пользователей, чтобы могли быть созданы их директории, когда пользователи
# логинятся первый раз.
;[profiles]
;   comment = Users profiles
;   path = /home/samba/profiles
;   guest ok = no
;   browseable = no
;   create mask = 0600
;   directory mask = 0700
 
[printers]
   comment = All Printers
   browseable = no
   path = /var/spool/samba
   printable = yes
   guest ok = no
   read only = yes
   create mask = 0700
 
# Клиенты Windows видят это имя шары как источник загружаемых драйверов принтера:
[print$]
   comment = Printer Drivers
   path = /var/lib/samba/printers
   browseable = yes
   read only = yes
   guest ok = no
# Раскомментируйте, чтобы позволить удаленное администрирование драйверов
# принтеров Windows. Вам может понадобиться заменить 'lpadmin' именем
# группы, членами которой являются Ваши пользователи с полномочиями
# администратора. Обратите внимание, что Вам нужно установить подходящие
# разрешения Unix для этих пользователей на директорию драйверов, чтобы
# они могли туда записывать:
;   write list = root, @lpadmin
 
# Эта шара для обмена файлами, в неё имеют полный доступ кто угодно
# без необходимости использования правильного пароля:
[share]
   path = /home/share/
   read only = No
   create mask = 0777
   directory mask = 0777
   browseable = yes
   public = yes

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

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

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

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

Устанавливаем сервер Samba

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

Samba — Linux, Windows или Mac OS совместимый пакет программного обеспечения, позволяющий обмениваться файлами, документами и принтерами по сети.

Установка

apt install samba samba-common

Для тестирования настроек устанавливаем клиент Samba.

apt install smbclient

apt install samba-common-bin

Настройки

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

cp /etc/samba/smb.conf /etc/samba/smb.conf.backup

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

bash -c 'grep -v -E "^#|^;" /etc/samba/smb.conf.backup | grep . > /etc/samba/smb.conf'

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

useradd -m -c "Name_User" -s /bin/bash usersamba

Установка пароля:

passwd usersamba

smbpasswd -a usersamba

Создаем общую папку Samba, доступную для всех

Создание папки:

mkdir -p /home/usersamba/smb/

Настраиваем права доступа к папке:

chown -R nobody:nogroup /home/usersamba/smb/

chmod ug+rwx /home/usersamba/smb/

или

chmod -R 0775 /home/usersamba/smb/

Для доменной сети:

chown root:"пользователи домена" /home/usersamba/smb/

Редактируем настройки

sudo gedit /etc/samba/smb.conf

Добавляем в конец файла /etc/samba/smb.conf следующие строки: usersamba заменяем на имя пользователя компьютера с Samba.

Как стать full stack разработчиком

Папка будет открыта для чтения и записи.

[BackupWork]

comment = Samba Share

path = /home/usersamba/smb/

guest ok = yes

browsable =yes

writable = yes

read only = no

force user = usersamba

force group = usersamba

Перезапуск Samba

systemctl restart smbd.service

service smbd restart

Проверка правильности конфигурации Samba

testparm

Защищенная папка Samba, доступная только по паролю

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

Чтобы скрыть в обзоре сети папку, можно изменить параметр browsable на no.

This is a complete tutorial to show you how to share folders over the local network between Windows and Ubuntu.

Do you have multiple devices in your home? Do you have to use Flash Drive or SD card to transfer data from Ubuntu to another computer? Do you find it annoying? We know you do. Because we don’t want you to waste your precious time while you can transfer your files, documents, and other large stuff quickly and easily, over the local network. It’s one-time setup and then with some clicks you will be able to share files between Ubuntu and Windows or any other Linux system. And don’t worry it’s easy and takes only a little time.

One more thing to add, while we performed this tutorial on Ubuntu, this tutorial should be valid for any other Linux OS.

Share folder on local network in Ubuntu

Share files between Windows and Linux on local network

If you are using Ubuntu, there are two ways you can share your local files over the local network to access it from Windows or other Linux computers.

  1. Share it for everyone’s access on local network, without password
  2. Password protect the folders for restricted access

We’ll see both methods in this post and will let you decide which one you would prefer to use.

Method 1. Share folders on local network without password

You’ll have to do some settings on both Windows and Ubuntu.

Enable sharing on Ubuntu

To share a folder on the local network in Ubuntu, right click on the desired folder and select Local Network Share:

Share folder over LAN in ubuntu 14.04
Don’t see Local Network Share option?

Possible troubleshoot: If you do not see the option of Local Network Share in right click menu, open a terminal and use the following command to install nautlius-share:

sudo apt-get install nautilus-share

You’ll need to restart Nautilus. Either log out and log in back or use the command below:

nautilus -q

When you click on Local Network Share, you will see the option of sharing the folder. Just check the option of Share this folder:

Share folders in Ubuntu and Windows

Possible troubleshoot: If you are prompted about Sharing service not being installed, like in the screenshot below, just click on Install service and follow the instructions.

Sharing service in Ubuntu

When you check the option of Share this folder, you’ll see option of Create Share available for you. You can also allow other users to edit the files in the shared folder. Option for guest access can be checked as well.

sharing the folders in Ubuntu

You’ll see that the folder icon have been changed to show that it has been shared. To stop sharing a folder, just uncheck the Share this folder option.

Now access the shared folder on Windows machine.

Step 2: Enable sharing on Windows

On Windows, right click on “This PC” or “My Computer”, and select “Add a new connection”.

Adding New Connection

Adding New Connection

Click on “next” button.

Adding New Connection

Adding New Connection

Now it’s time to enter server address and the name of folder which we’ve shared. Please enter in following format.

You can find your server’s address, i.e. IP address of Linux machine by entering ip a command.

In my case, IP address of Linux machine is 192.168.0.102 and folder I’ve shared is share.

Ip Address

Ip Address

Now add the location in the following manner:

Entering Server Address

Entering Server Address

Now you will see this screen, just click next.

Adding New Connection

Adding New Connection

Now, you can access the shared folder in “This PC” or “My Computer” under “Network Location” section.

New Shared Folder

New Shared Folder

Now this was the easy way out. This provides access to anyone on your local network to access these files. 

In normal condition, you should prefer this. I mean, devices on your home network should be generally known devices. But this could not be the case always. What if you want only certain people to access it?

This is where Samba server comes in picture. We’ll see that in the second part of the tutorial.

2. Share the folders on local network in Ubuntu with password protection

To do this, we need to configure Samba server. Actually, we did use Samba in the previous part of this tutorial. We just did not emphasize on it. Before we go on seeing how to set up Samba server for local network sharing in Ubuntu, let’s first have a quick look on what actually is Samba.

What is Samba?

Samba is the software package that allows you to share files, documents and printers across a network, irrespective of whether you are using Linux, Windows and Mac. It’s available for all major platforms and can work tremendously nice in all of them. Quoting from Wikipedia:

Samba a free software re-implementation of the SMB/CIFS networking protocol, and was originally developed by Andrew Tridgell. As of version 3, Samba provides file and print services for various Windows Clients and can integrate with a Windows Server domain, either as a Primary Domain Controller (PDC) or as a domain member. It can also be part an Active Directory domain.

Install Samba server on Ubuntu

You can easily install Samba on you Ubuntu box. Before installing update your system so that you can install any available updates.

sudo apt-get update && sudo apt-get upgrade

Now install Samba serer and few other required stuffs with the following command:

sudo apt-get install samba samba-common system-config-samba python-glade2

Once you’ve installed Samba server, it’s time to configure Samba from the graphical interface window to share files.

Configure Samba server on Ubuntu

Open Samba Configuration tool from the dash:

Setup Samba in Linux/Ubuntu

Go to Preference->Server Settings. Although the default settings are good and may be same you need. But you may need to make change to it in some cases.

Now in Server Settings you’ve two tabs, ‘Basic’ and ‘Security’. Under Basic tab you’ve the following options that mean:

  • Workgroup – This is the name of the Workgroup of the computer you want to connect to. For example, if you want to connect to a Windows computer so you will enter the workgroup name of Windows computer, and in Windows you already have the same workgroup name as is set by default in Samba Server Settings. But if you have a different workgroup name on Windows then you will enter that workgroup name in this field. (In Windows 7 to get the workgroup name, right-click Computer icon and go to Properties, there you’ll see Windows Workgroup name.)
  • Description – This is the name of your computer as seen by others. Don’t use spaces or non-internet friendly characters.
setting up samba server

Allowing ‘Guests’ is not advisable so there is no reason to change security settings. Keep as it is.

Samba Security security settings

It is all done! You’ve setup Samba Server. We are not far from sharing our first folder on network.

Create a system user for network file sharing

We will now create a system user for sharing file on network. This is how simple it is.

  • Go to System Settings.
  • Under Systems Settings Click User Accounts.
  • Click unlock to Enable + (plus) icon.
  • Click + (plus) icon to create a new system user.
create system user account in Ubuntu/Linux

Now as you can see the above image, you can enter ‘Full name’. As you enter ‘Full name’ Username will be taken as Full name automatically. Because we are creating this user to share files so we will assign Account Type to ‘Standard‘.

Done above steps? Click add. You have created a system user. The user is not yet activated so we will activate it by setting up password for this account. Make sure Users accounts panel is unlocked. Click Account disabled and type a new password, then confirm password and click Change.

activate system user in Ubuntu/Linux

Yipee… Upto now we have installed and configured Samba and We have created a System user to share files on network from the account and we have activated our newly created account, too. Now We will move to Samba for the last step of configuring everything, then we will share a folder.

Add new Samba user

Open Samba and click Samba Users under Preference. Fill up the the simple dialogue. Here are couple of details about the fields:

Unix Username – In this case I am selecting the user that I just created.

Windows Username – You will enter this username when you are accessing from Windows Machine.

Samba Password – You will enter this password when you are accessing from Windows Machine.

samba user setting

Once you’ve done click OK. Now take a deep breath. You have successfully created a network with the help of Samba. Now restart the network or Samba services and ready to share files with other machines.

sudo restart smbd && sudo restart nmbd

Share folders or files over the network

To share files with Samba it’s simple with graphical user interface. Click the Plus icon in Samba and you will get dialogue like this:

share files and folders over network with samba

Complete the fields. In ‘Directory‘ browse the folder you want to share. Here are the details about the fields you will see here:

  • Share name is the name of the folder that other would see.
  • Description is simply about the content you are sharing on network.
  • Writable You shared folders are ‘read only’ by default. You can set them to writable if you want others on network to change them.
  • Visible As the name suggests when you click Visible, the shared folder will be visible to the people on network.

Now you can set permissions for the folder you are sharing. To do this click ‘Access’ tab and check the users you want to share the folder with. When you select Allow access to everyone, the folder will be accessible to everyone on the network.

setting up permissions for sharing folder on network

Finally click OK to complete the sharing. Now the folder is shared with the people you want. You have completed sharing file on network. Is there everything left? Yes! How to remove the folders from the network?

Remove shared folders

We will also need to remove some of the folders after sometime from network. It is very simple and here is how we can do that.

remove shared folder from network

This is all done! We can also share files over network using terminal but that would not be as easy as this one. If you request for command line sharing then I will write a tutorial on how to share files over network with command line in Linux.

So, how do you find this tutorial to share files on local network in Ubuntu? I hope with this tutorial you can easily share files between Ubuntu and Windows. If you have questions or suggestions, feel free to ask it in the comment box below.

This tutorial was requested by Kalc. If you would like, you can request your own tutorial. We would be happy to help you out along with other readers facing the same issue.

With inputs from Abhishek Prakash.

  • Ubuntu не видит сеть windows
  • Ubuntu theme for windows 10
  • Ubuntu на планшет с windows
  • Ubuntu vs windows 10 производительность
  • Ubuntu на hyper v windows 10