Linux и windows в одной сети

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

Общие сведения.

Для создания общих сетевых ресурсов в среде Windows, применяется протокол CIFS (ранее известный как SMB), поддержка которого в UNIX-подобных системах обеспечивается программным обеспечением Samba. Samba работает по протоколам TCP и UDP, соединение шифруется. С помощью Samba возможно обеспечить не только общий доступ к файлам и принтерам, но и, например, построить контроллер домена с поддержкой Active Directory (об этом в следующий раз). С помощью Samba можно открыть общий доступ не только между Windows и Linux, но и между Linux и Linux. Однако есть некоторые ограничения. Во первых, SMB — это «виндовый» протокол, со всеми вытекающими. Он не слишком хорошо интегрируется с UNIX-системами. Не вдаваясь в сложные технические описания, скажу лишь что скорость передачи данных по Samba медленнее, зачастую значительно, она нестабильна, как и загрузка сетевого канала, а также даёт весьма ощутимую нагрузку на процессор. Поэтому если в вашей домашней сети нет Windows-машин, то предпочтительнее использовать протокол сетевой файловой системы — NFS.

Суть работы NFS весьма проста. Удалённый ресурс встраивается в общее дерево файловой системы, и в результате каталог, который находится на файловом сервере или другом компьютере, отображается в вашей системе как локальный, будто находится на диске. NFS работает по протоколу TCP. NFS весьма полезна при создании так называемых тонких клиентов (бездисковые рабочие станции, в которых система загружается по сети). Скорость передачи данных по NFS в 2 раза выше, чем через Samba, загрузка сети равномерная, а нагрузка на центральный процессор минимальная. Однако у NFS есть два недостатка. Первый — довольно фиговая поддержка в Windows (реализуется через подсистему UNIX и отдельное приложение). Второй — отсутствие шифрования (c версии NFSv4, для шифрования может использоваться протокол Kerberos). Тем не менее, для Линуксовой сети, NFS — идеальный вариант.

Внимание: на обеих системах должны быть настроены статические IP адреса.В Windows кликнете правой кнопкой на значке сетевых подключений и выберите «Центр управления сетями и общим доступом», далее «Изменение параметров адаптера», выберите нужный адаптер (вашу сетевую карту) и зайдите в её свойства. Перейдите в пункт «Протокол Интернета версии 4» и выберите «Использовать следующий IP адрес»:

Если ваши компьютеры соединены напрямую, поле «Основной шлюз» можете оставить пустым. Если через роутер — укажите IP адрес роутера (тот, через который осуществляется доступ к его вэб-интерфейсу, обычно 192.168.0.1). В Linux аналогичную операцию можно провести в Network Manager (настройка сетевых подключений, вкладка IPv4):

Если вы используете фаерволл (брандмауэр Windows либо другое аналогичное ПО, а также iptables в Linux или фаерволл в вашем роутере), убедитесь что открыты нужные порты (Для SAMBA: 135, 139, 445/TCP; 137, 138/UDP. Для NFS: 2049/TCP).

Linux => Windows

Представим ситуацию: у вас есть второй компьютер (или файловый сервер), под управлением Ubuntu 14.04, на котором находится большая коллекция ваших видео, фото и так далее, расположенная на отдельном диске, который монтируется в /media/MyDATA. Этот диск нужно расшарить на компьютер под управлением Windows 8.1. Первым делом, установим необходимые пакеты:

sudo apt install samba samba-common smbclient

Теперь необходимо сконфигурировать Самбу. У вас есть два пути: консольный и графический.

Консольный.

Открываем файл /etc/samba/smb.conf:

sudo nano /etc/samba/smb.conf

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

[global]
workgroup = WORKGROUP
netbios name = Ubuntu-PC
server string = Ubuntu PC
map to guest = bad user
guest account = nobody
socket options = TCP_NODELAY IPTOS_LOWDELAY SO_KEEPALIVE SO_RCVBUF=8192 SO_SNDBUF=8192


#Следовать по симлинкам
unix extensions = no
wide links = yes
follow symlinks = yes


log level = 1


# UTF кодировка
unix charset = UTF-8
dos charset = cp1251
store dos attributes = yes


max log size = 10




[MyDATA]
path = /media/MyDATA
writeable = yes
available = yes
public = yes
guest ok = yes
force user = nobody
force group = nobody

В секции global описываются общие параметры: WORKGROUP — имя рабочей группы (должно быть одинаково для всех машин в локальной сети), Ubuntu-PC — имя компьютера, с которого расшариваются каталоги (укажите своё), вход без пароля, гостевой доступ и оптимизации для соединения. В секции MyDATA описывается доступ к диску, смонтированному в /media/MyDATA. При желании вы можете указать доступ к отдельным каталогам на этом диске, аналогичным способом. Сохраните файл и выполните команду:

testparm -s

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

Теперь запустите сервер Samba:

sudo service start smbd

Графический.

Для настройки параметров Samba в графическом интерфейсе, существует 2 замечательные утилиты — system-config-samba (есть только в Ubuntu и производных) и gadmin-samba (есть везде). Эти утилиты представляют собой весь конфиг Самбы, выполненный в графическом режиме. Для Ubuntu установим первую утилиту:

sudo apt install syste-config-samba

Здесь всё предельно понятно и в настройках разберётся любой :)

Для других дистрибутивов (например Debian), установите пакет gadmin-samba:

sudo apt install gadmin-samba

После настройки, перезапустите демон Samba. Для Ubuntu:

sudo service restart smbd

Для Debian:

sudo systemctl restart smbd.service

Также можно открыть доступ к нужному каталогу из файлового менеджера, открыв свойства каталога:

В Windows необходимо включить сетевое обнаружение. Для этого в центре управления сетями, зайдите в «Изменить дополнительные параметры общего доступа»

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

Linux => Linux

А теперь представим, что у нас есть компьютер с Debian 8 (IP адрес 192.168.0.2), и ноутбук с Ubuntu 14.04 (IP адрес 192.168.0.3). С ноутбука нужно расшарить раздел диска, который смонтирован в /media/DATA (это раздел для торрентов и прочей файлопомойки). Для этого мы используем NFS:

sudo apt install nfs-kernel-server nfs-common rpcbind

Укажем что нужно расшаривать:

sudo nano /etc/exports

/media/DATA 192.168.0.0/255.255.255.0(rw,no_root_squash,no_subtree_check,crossmnt,fsid=0)



/media/DATA — то, что нужно расшарить.
192.168.0.0/255.255.255.0 — только компьютерам в этой подсети будет обеспечен доступ к общему ресурсу (можете указать конкретный IP адрес).
rw — поддержка чтения и записи.
no_root_squash — Позволяет пользователю root (на стороне клиента) иметь доверенный полный доступ к разделу.
no_subtree_check — Если монтируется только часть тома, то сервер будет выполнять проверку принадлежности файла запрошенного клиентом, именно к той части тома, которая примонтирована. Это замедляет передачу данных, по этому зачастую данная опция включена в список параметров.
crossmnt — Этот параметр похож на nohide он дает возможности видеть каталоги смонтированные на основной системе. Таким образом, когда дочерняя файловая система «B» установлена на основной «А», установив crossmnt на «А» имеет тот же эффект, что и установка «nohide» на B.
fsid=0 — NFS-сервер должен быть в состоянии идентифицировать каждую файловую систему, которую экспортирует. Для сервера NFSv4, существует выделенная файловая система, которая является корнем всей экспортируемой файловой системе. fsid = root или fsid = 0 означают одно и то же.

Применяем настройки:

sudo exportfs -a

Далее нужно указать, каким хостам в сети разрешено иметь доступ к серверу:

sudo nano /etc/hosts.allow

Указываем доступ для всех машин, находящихся в подсети 192.168.0.0/255.255.255.0:

nfsd: 192.168.0.0/255.255.255.0
rpcbind: 192.168.0.0/255.255.255.0
mountd: 192.168.0.0/255.255.255.0

Если вы указали в файле exports только IP адрес нужной машины, то соответственно, указывайте его.

Теперь запустите сервис:

sudo service nfs-kernel-server start

На компьютере установите следующие пакеты:

sudo apt install nfs-common rpcbind

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

sudo mkdir /media/Share

Монтирование вручную.

sudo mount -t nfs4 192.168.0.3:/ /media/Share

В результате всё содержимое диска /media/DATA (на ноутбуке) окажется доступным на компьютере в каталоге /media/Share, как если бы эти данные хранились на нём. Для того чтобы ресурс монтировался автоматически после загрузки системы, есть два способа.

Монтирование через fstab.

Файл /etc/fstab содержит в себе информацию о присутствующих файловых системах, точках монтирования и параметрах монтирования. Чтобы ресурс /media/DATA монтировался на ваш компьютер автоматически, добавьте в конец файла /etc/fstab следуюущую строку:

192.168.0.3:/   /media/Share   nfs   user,rw,noauto   0   0

Опция noauto запрещает автоматическое монтирование во время загрузки, так как сеть может быть недоступна в этот момент. Вместо этого, в файловом менеджере, в левой колонке появится пункт Share, кликнув на который, сетевой ресурс автоматически смонтируется. Однако при таком способе монтирования, есть пара существенных недостатков. Во первых, если в момент выключения компьютера, был открыт какой-либо файл, расположенный на сетевом ресурсе, компьютер откажется выключаться. Во-вторых, такая же ситуация произойдёт в случае пропажи связи между клиентом (компьютером) и сервером (ноутбуком). Для того, чтобы этих проблем не было, существует второй способ монтирования.

Монтирование с помощью AutoFS.

AutoFS — это пакет для обеспечения монтирования съёмных и сетевых накопителей, только при обращении к ним. При отсутствии обращения к сетевому ресурсу или съёмному устройству в течении определённого времени, он автоматически размонтируется, и мгновенно монтируется при первом же обращении к нему. Устанавливаем:

sudo apt install autofs

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

sudo nano /etc/auto.master

В конец файла добавляем строку:

/mnt    /etc/auto.nfs —timeout=60

/mnt — каталог для монтирования сетевого ресурса.
/etc/auto.nfs — путь к файлу, в котором описаны параметры монтирования.
—timeout=60 — время в секундах, после которого произойдёт размонтирование ресурса (можете указать своё).

Сохраняем и переходим к следующему файлу:

sudo nano /etc/auto.nfs

Добавляем строку:

Share       -fstype=nfs,rw,noatime,noexec,nosuid,tcp,async,rsize=32768,wsize=32768,intr,nolock,soft,noauto  192.168.0.3:/

Создадим директорию Share в каталоге /mnt, куда будет монтироваться ресурс:

sudo mkdir /mnt/Share

Вот и всё. Теперь в каталоге /mnt/Share, при первом же обращении к нему, будет появляться содержимое удалённого ресурса /media/DATA. Кнопка подключения сетевого диска появится в файловом менеджере.

Дополнительные материалы:

Руководство Samba
Руководство NFS

 

 Для организации доступа к файлам расположенным на linux машинах с компьютеров под управлением ОС windows, был специально разработан пакет программ, которые позволяют обращаться к сетевым дискам и принтерам по протоколу SMB/CIFS. samba

 Пакет Samba имеет клиентскую и серверную части. Является свободным программным обеспечением, выпущенным под лицензией GPL. Samba представляет собой протокол, используемый Microsoft для разделения файлов и служб печати. Этот протокол был разработан в 1987 году и позже перенесен на платформы Linux Эндрю Триджеллом (Andrew Tridgell). Взаимодействие в сети компьютеров под управлением Windows построено на использовании протокола SMB (Server Message Block) — блоках серверных сообщений. Пакет Samba обеспечивает выполнение всех необходимых в этих случаях задач по открытию, закрытию, чтению, записи, поиску файлов, созданию и удалению каталогов, постановке задания на печать и удалению его оттуда. Возможности его условно можно разделить на две категории: предоставление ресурсов (под коими понимается доступ к системе принтеров и файлам) для клиентов Windows и доступ к ресурсам клиентов. То есть, компьютер под управлением Linux может выступать как в роли сервера, так и клиента. Огромным плюсом пакета samba является контроль доступа, который может быть реализован либо на уровне ресурсов (share level), когда какому-либо ресурсу в сети назначается пароль и соответствующие правила использования или же более совершенную и гибкую организацию на уровне пользователя, когда для каждого пользователя создается учетная запись на сервере, где помимо имени и пароля содержится вся необходимая информация о правах доступа к ресурсу. Прежде чем получить доступ к требуемому ресурсу, каждый пользователь проходит аутентификацию, после чего ему и предоставляются права согласно учетным записям.

Samba сервер

Для работы Samba-сервера необходимо, чтобы были запущены два демона: smbd, обеспечивающий работу службы печати и разделения файлов для клиентов Samba сервера под управление ОС Windows, и nmbd, обеспечивающий работу службы имен NetBIOS. Для доступа к клиентам используется протокол TCP/IP. Как правило, Samba устанавливается вместе с дистрибутивом Linux. Проверить можно выполнив команду: $ whereis samba. И если не установлен то $ yum install samba-server

Samba клиент

Для доступа к сетевым ресурсам Windows из Linux необходим клиент Samba, и для того чтобы оценить доступность ресурсов Windows достаточно выполнить команду /usr/bin/smbclient -L host_name. Долее строка запросит пароль, но в большинстве случаев достаточно нажать Enter. Положительным аспектом клиента Samba является, то, что он отлично видит скрытые сетевые ресурсы, это те диски сетевое имя которых заканчивается знаком $.) Дальнейшем работа происходит путем набора команд, с помощью которых можно произвести все необходимые операции по работе с файлами. Для получения справки достаточно выполнить smb: > help.

Достаточно многие пользователи 1с Предприятие используют БД в файловом варианте, ну, так, уж повилось:) и поэтому для грамотного взаимодействия пользователей с базой можно использовать сервер Samba. Что позволит ограничить доступ, или совсем его закрыть к базам 1с.

Конфигурация сервера Samba

Конфигурационный файл Samba называется smb.conf и находится в корневом каталоге /еtc или /etc/samba. Сервис Samba считывает его каждые 60 секунд, поэтому изменения, внесенные в конфигурацию, вступают в силу без перезагрузки, но не распространяются на уже установленные соединения. Файл конфигурации содержит четыре раздела: [global], [homes], [printers] и [shares]. Открыть для редактирования файл конфигурации можно командой: mcedit /etc/samba/smb.conf Раздел [global] содержит наиболее общие характеристики, которые будут применяться везде, но которые, впрочем, затем можно переопределить в секциях для отдельных ресурсов. Некоторые параметры этого раздела имеют отношение и к настройке клиентской части Samba.

Параметры раздела [global]

workgroup # имя_группы в сети Windows. netbios name # netbios имя сервера в локальной сети. server string # строка комментария, который виден в окне свойств просмотра локальной сети. guest ok = yes # разрешение гостевого входа на сервер. guest ok = no # гостевой вход запрещен. guest account # аккаун, под которым разрешен гостевой вход на сервер. security = user # доступ с аутентификацией на уровне пользователя. security = share # вход свободный. hosts allow # определяет клиентов, которым разрешен доступ к серверу. interfaces # указывает в какой сети будет работать сервер.

Параметры раздела [home]

comment # комментарий в окне свойств сети. browseable # определяет, будет ли виден ресурс в списке просмотра сети. writable # разрешает или запрещает запись в домашнюю директорию. create mode # определяет права доступа для вновь созданных файлов. directory mode # определяет права доступа для каталогов.

Устанавливаем web-интерфейс SWAT (Samba Web Administration Tool) для работы с smb.conf

В большинстве случаев настройка Samba заключается в редактировании основного конфигурационного файла /etc/samba/smb.conf и управлении пользователями с помощью smbpasswd. Изменения можно производить в редакторе mcedit, nano или kwrite. Если это непривычно — можно использовать web-интерфейс SWAT (Samba Web Administration Tool) который для удобства пользователей Linux был создан разработчиками пакета Samba.

Установить пакет samba-swat можно командой:
yum install samba-swat По умолчанию в целях безопасности SWAT отключен и поэтому заходим:
mcedit /etc/xinetd.d/swat и меняем значение параметра:
disable = no Для предоставления возможности удаленного администрирования необходимо в параметр only_from добавить допустимый ip. И сделать рестарт:
service xinetd restart Все! samba-swat теперь доступен по URL http://localhost:901/ а номер порта в целях безопасности можно изменить в файле:
mcedit /etc/xinetd.d/swat

Расшариваем папки и меняем доступ к директориям Samba:

Конструкция нашего файлового сервера будет придерживаться следующей структуры:
[base] — каталог в котором будут хранится базы 1с, с ограничением доступа по ip;
[other++] — остальные каталоги с предоставлением доступа на уровне авторизации пользователя, их может быть много, все зависит от поставленной задачи. sudo mkdir samba # Создаем корневую папку Samba Внутри создаем еще две [base] и [other], открывает smb.conf устанавливаем в параметрах [global]:
security = share # Пользователи не будут проходить систему авторизации. Теперь в параметре [base] делаем ограничение по ip:
hosts allow 10.4.8.32 10.4.8.33 # Разрешаем доступ к каталогу только 10.4.8.32 и 10.4.8.33 guest ok = yes # Разрешаем гостевой вход в каталог Переходим к каталогу [other] и выставляем ограничение доступа по имени пользователя и паролю:
valid user = glavbuh geo# Это - список пользователей, которым разрешен доступ к ресурсу. username = glavbuh geo# Имя пользователя директории [other] glavbuh.

Синтаксис измененных параметров можно проверить командой:

testparm /etc/samba/smb.conf

Остается создать пользователей glavbuh и geo задав пароль, для входа в каталог [other]. Добавляем пользователей в Samba smbpasswd -a <имя_пользователя> И разрешаем пользователей в Samba
smbpasswd -e <имя_пользователя>

У вас дома есть несколько устройств? Нужно ли использовать флэш-диск или 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. Если у вас есть вопросы или предложения, не стесняйтесь задавать их в поле для комментариев ниже.


30 Октября 2013

Пользователю, впервые пришедшему на Linux после долгих лет использования виндовса всё может казаться сложным и непонятным. Оно и не мудрено! Всё дело вовсе не в сложности Линукса, а в привычке работы с другой операционной системой. Нередко пользователи, решившиеся поставить Ubuntu Linux желают настроить локальную сеть windows ubuntu для удобного «общения» между компьютерами, как это было прежде на Windows.

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

Во-первых, в ситуации когда соединяются напрямую между собой два компьютера необходимо будет присвоить обеим машинам IP адреса. Для одного компьютера следует указать ip 192.168.0.1, а для другой системы, соответственно, устанавливается ip 192.168.0.2. Сетевую маску на обеих компьютерах нужно указать 255.0.0.0.

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

sudo eth0 192.168.0.1 netmask 255.0.0.0 up

Для установления необходимых параметров через менеджер соединений в Ubuntu:

1) вначале нужно выбрать пункт «Изменить соединения»:

Настройка домашней сети в Ubuntu Linux

2) во вкладке «проводные» нажать «изменить» (выделив при этом существующее соединение) либо «добавить»:

Настройка домашней сети в Ubuntu Linux

3) ввести необходимые настройки во вкладке «Параметры IPv4»

Настройка домашней сети в Ubuntu Linux

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

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

Следующим этапом в настройке сети windows ubuntu будет создание общих папок для файлообмена. На Ubuntu Linux необходимо будет установить пакет samba, дающий возможность доступа к принтерам и сетевым дискам. Если он не установлен то получится так, что ubuntu не видит локальную сеть. Для установки пакета следует написать в терминале:

sudo apt-get install -y samba

Когда установка будет окончена — можно смело переходить к следующему шагу. Сперва нужно, чтобы компьютеры, входящие в ubuntu windows сеть находились в одной рабочей группе. По умолчанию в Windows используется «WORKGROUP» в качестве названия последней. Идя по пути меньшего сопротивления следует назначить Linux машине аналогичное имя рабочей группы. Для этого следует открыть файл настроек пакета samba в терминале:

sudo gedit /etc/samba/smb.conf

Находим в файле строку

workgroup =

и вписываем значение:

workgroup = WORKGROUP

Теперь можно сказать, что сеть линукс и windows практически настроена. Сохранив файл конфигурации и перезапустив службу samba можно зайти в «Сеть» из Линукса и увидеть там общие папки пользователей Windows машин.

Настройка домашней сети в Ubuntu Linux

Следующий шаг состоит в создании сетевой папки в Ubuntu. Для этого будет использован вышеуказанный файл конфигурации samba. В данном файле переходим в раздел “Share Def­i­n­i­tions”, который специально отведён под настройку общих папок. Пишем в разделе следующие строки:

[Музыка]

comment = моя музыкальная коллекция

read only = yes

locking = no

path = /home/user/music/

guest ok = yes

Поясню указанные аргументы:

[Музыка] — имя папки, которое будет отображено в сетевом окружении;

«comment» задает комментарий к сетевой папке;

«read only» определяет возможность внесения изменений в папку. В рассматриваемом примере посетители могут удалять и записывать файлы в общую папку Ubuntu;

«path» — путь к общей папке;

«guest ok» если стоит yes, то любой пользователь может зайти в сетевую папку. Если стоит no — то нужно определить круг лиц, имеющий право доступа.

К примеру можно написать:

guest ok = no

valid users = user2

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

sudo smbpasswd -a user2

Таким образом можно защитить сетевой ресурс от несанкционированного доступа. После внесения всех необходимых поправок следует перезапустить службу samba. Перезапуск можно осуществить двумя способами:

sudo /etc/init.d/smbd restart

service smbd restart

На этом настройка домашней сети ubuntu linux и windows окончена.

  • Linux в домене windows 2012
  • Linux доступ к разделам linux из windows
  • Linux в докере на windows
  • Linux vs windows for python
  • Linux запуск приложений под windows