Какие порты открыть для smb в ubuntu

Обновлено: 04.07.2024

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

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

В этом руководстве мы будем использовать сеть 172.16.10.0/25.

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

Добавьте Ubuntu в файл хоста Windows

Если у вас нет собственного DNS и вы хотите ссылаться на каждую систему по их именам, вам нужно добавить эти имена в файл локального хоста на каждой машине.

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

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

Сохраните изменения, и закройте файл.

Для того чтобы добавить имя компьютера Windows в файл хоста компьютера Ubuntu, нажмите Ctrl + Alt + T на клавиатуре, чтобы открыть командный терминал.

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

Затем введите IP-адрес с именем хоста для компьютера Windows, сохраните файл и выйдите.

Включение общего доступа к файлам

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

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

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

Установка Samba в Ubuntu

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

Войдите в систему на компьютере Ubuntu, чтобы установить Samba. Для её установки выполните следующие команды:

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

Вывод должен показать похожие строки, как это видно ниже:

Настройка общих ресурсов Samba

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

Затем откройте файл конфигурации Samba, выполнив следующую команду.

Измените выделенные строки в соответствии с приведенными ниже.

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

Перезапустите сервисы Samba.

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

Далее создайте общую папку, к которой у всех должен быть доступ, как определено в конфигурации Samba выше…

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

Перезапустите Samba и откройте проводник Windows, чтобы просмотреть общее папку в Ubuntu.

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

Доступ должен быть у всех.

Настройка приватного ресурса Samba

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

Сначала создайте группу samba под названием smbgroup для общего ресурса (только участники будут иметь доступ). Чтобы создать группы в Ubuntu, выполните следующие команды.

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

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

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

Затем перейдите и создайте защищенный общий ресурс в каталоге /samba.

Затем предоставьте доступ к этому общему ресурсу только root и группе участников.

Когда вы закончите создавать защищенный ресурс, откройте файл smb.conf и внесите необходимые изменения.

Добавьте блок конфигурации указанный ниже в файл smb.conf

Перезапустите smbd и проверьте свои изменения.

Указанными выше инструкциями можно добавить сколько угодно разных общих ресурсов.

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

Что такое Samba?

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


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

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:

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

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

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

chmod -R 0755 /media/samba/public

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

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

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

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

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

usermod -aG smbgrp user1

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

chgrp smbgrp /media/samba/private

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

smbpasswd -a user1

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

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

[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” @ (“собака”).

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

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

В этой небольшой инструкции будет рассмотрена простейшая настройка Samba Ubuntu 18.04, а также как настроить общий доступ к папке Ubuntu с несколькими уровнями привилегий.

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

Получить доступ к расшаренным папкам в Ubuntu смогут как Linux так и Widnows машины, с помощью любой программы для работающей по протоколу SMB.

Подготовка Windows

Для того чтобы все работало правильно, все машины должны состоять в одной рабочей группе, указанной на сервере Samba. По умолчанию для Windows, Linux и MacOS рабочая группа называется Workgroup. Чтобы узнать какая рабочая группа используется в вашей Windows откройте командную строку (Win+R, затем cmd) и выполните вот такую команду:

net config workstation

share1

share

Нужный нам параметр мы видим в строке Домен рабочей станции. Это и есть рабочая группа.

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

share3

И выполните команду:

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

Теперь можно переходить к вопросу как расшарить папку Ubuntu.

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

Начнем, как обычно, с установки. Установка Samba Ubuntu вместе со всеми необходимыми компонентами выполняется командой:

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


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

sudo mv /etc/samba/smb.conf /etc/samba/smb.conf.bak

После создания резервной копии, создайте свой файл конфигурации, этой командой:

sudo vi /etc/samba/smb.conf

Сначала укажем глобальные настройки файлового сервера. Для этого вставьте в файл такие строки:

[global]
workgroup = WORKGROUP
server string = %h server (Samba, Ubuntu)
netbios name = Ubuntu Share
dns proxy = no
log file = /var/log/samba/log.%m
max log size = 1000
passdb backend = tdbsam
unix password sync = yes
passwd program = /usr/bin/passwd %u
pam password change = yes
map to guest = bad user
usershare allow guests = yes

Рассмотрим подробнее что значат эти строки.

Когда завершите создание конфигурационного файла, переходим к вопросу как расшарить папку Ubuntu для Windows.

Общий доступ к папке Ubuntu

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

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

sudo mkdir -p /samba/allaccess

После того как папка создана, нужно сделать для нее правильные права доступа. Следующие команды разрешают доступ к папке для всех и делают владельцем nobody:

cd /samba
sudo chmod -R 0755 allaccess
sudo chown -R nobody:nogroup allaccess/

Следующим шагом будет описать папку allaccess в файле настройки samba:

[allaccess]
path = /samba/allaccess
browsable = yes
writable = yes
guest ok = yes
read only = no

Теперь ваш конфигурационный файл должен выглядеть вот так:


Рассмотрим подробнее опции, которые были здесь использованы:

  • path - путь к папке, которую нужно расшарить;
  • browsable - будет ли папка отображаться в списке доступных шар;
  • writable - будет ли папка доступна для записи;
  • read only - папка доступна только для чтения;
  • guest ok, public - будет ли разрешен гостевой доступ;
  • only guest - если установлено yes, то папка будет доступна только гостям;
  • hosts allow - ip адреса, с которых можно получить доступ к этому серверу;
  • valid users - по умолчанию могут авторизоваться все пользователи, если в этом параметре передать список пользователей, то авторизоваться смогут только они;
  • create mask - маска прав для создаваемых файлов.

Чтобы применить изменения, перезапустите сервер Samba:

sudo systemctl restart samba

Настройка Samba Ubuntu для анонимного доступа завершена. Теперь вы можете проверить доступность общей папки allaccess из Windows, для этого нажмите Win+R и выполните:

share5

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

Также вы можете подключится к этому серверу из Linux с помощью Nautilus для этого достаточно набрать адрес smb://ip-сервера, в разделе другие места:


Защищенный общий доступ к папке Ubuntu

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

Сначала создаем папку:

sudo mkdir -p /samba/allaccess/secured

Дальше установим такие права, чтобы доступ к папке могли получить только пользователи из группы securegroup.

sudo addgroup securedgroup

cd /samba/allaccess
$ sudo chown -R richard:securedgroup secured
$ sudo chmod -R 0770 secured/

Последний шаг, добавляем настройки в конфигурационный файл samba:

sudo vi /etc/samba/smb.conf

[secured]
path = /samba/allaccess/secured
valid users = @securedgroup
guest ok = no
writable = yes
browsable = yes


Перезапустите сервер Samba. Теперь доступ к общей папке в Ubuntu могут получить только пользователи группы securegroup.

Чтобы проверить как это работает добавим пользователя richard в нашу группу:

sudo usermod -a -G securedgroup richard

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

sudo smbpasswd -a richard

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

Если вы хотите чтобы общий доступ к папке Ubuntu мог получить доступ только определенный пользователь замените в конфигурационном файле @securegroup на имя пользователя. Также можно указать несколько пользователей через запятую или несколько групп.

Выводы

Вот и все. Теперь вы знаете как правильно выполняется установка Samba на Ubuntu 18.04, а также ее настройка. Кроме ручного редактирования конфигурационных файлов, для того чтобы расшарить папку в Ubuntu можно воспользоваться графической утилитой system-samba-config. Но после того как мы разобрали все низкоуровневые настройки, с этой утилитой вы справитесь без труда.




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

(22 оценок, среднее: 4,68 из 5)

Об авторе

65 комментариев

о, буду пробовать

Вы думаете основная масса поняла? Расскажите лучше как пользоваться конфигурационной оболочкой. Кстати она в 16.04 даже не запускается))

сроду линухи не настраивал, но по этой статье всё настроил.
хотя возникли и проблемы:
1. опечатки в конфиге))
2. множественный доступ из Виндовс к линукс.
вроде доступ настроен, а доступа к папке нет!
но разобрался, возможно стоит добавить об этом статью.
в Windows приходится сбрасывать подключения
net use * /delete

Присоединяюсь к Vladimir. В Xubuntu через GUI все настроил без проблем, в Ubintu 16.04.01 это просто какой-то геморрой, оболочка графическая не запускается, через терминал ничего не выходит. Блин, система, созданная для серваков, не может папку в два клика расшарить по локалке. Слов нет, одни маты.

Короче, сам спросил — сам отвечаю. Метод лечения графической оболочки Samba в Ubuntu 16.04 следующий:

$ gksu system-config-samba (при необходимости команду gksu устанавливаем)
2. Пишет, что отсутствует файл. Создаем его командой

$ sudo touch /etc/libuser.conf
3. Запускаем снова

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

Alex, СПАСИБО Вам огромнейшее! Тоже не хотела графическая оболочка работать на 16.04 Ubuntu Mate . Онатам по умолчанию даже не была установлена, а после установки не хотела запускаться. Ну, и автору еще раз спасибо, что поднял данную тему.

Alex Огромное спасибо.Samba с помощью GUI настраивается в три щелчка.

Тру система для серваков Ред Хот или Центос и даже супер пупер ламерская Убунту ну никак не проиграет, что в два клика не шариться папка. Хотя б из соображений сякой-такой стабильности и априори безопасности. Сервак 'то область отвественности, которая измерятся, иногда, в сотни долларов в секунуду. И уж никак не потому, что там папки разшарен'. Ваш взгляд на вещи просто дичь, уважаем'й с'р. Сотрите Ваш пост на уважаемом рессурсе.

Такая же проблема, согласен с Alex.

Сервер настроил, но Win 10 Pro не видит его и в ответ на команду: srvr1allaccess

Сервер Самба настроил и всё по инструкции сделала, но Win 10 отвечает на команду : "srvr1allaccess" "Не найдено сетевое имя" Подскажите, что делать.

to Юрий: «srvr1allaccess» это путь к папке для примера:), пропиши именно свой. и в samba.conf, тоже все свое, удачи!

имя твоего компа с убунтуимя твоей шары.

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

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

Ubuntu 16 это еще тот гемар. Сижу пока на 14той пока радует хотя и не всё.

Хорошо бы увидеть у вас хорошую статью по установке PDC (BDC) на Ubuntu 16.04.

Рабочий конфиг Самбы для доступа по паролю:
[share]
path = /mnt/shara
valid users = @users
force group = users
create mask = 0660
directory mask = 0771
writable = yes
browseable = yes

Ну и зачем тут еще Ваш, для Ваших условий конфиг? Статья и так кривая (привязанная к конкретным папкам, именам), а Вы еще сильней запутать народ хотите? Кстати, создалось такое впечатление, что это пeреревод с какого-то импортного сайта (имя Ричард на Руси очень не типичное). Но автору все равно спасибо, - худо- бедно после двух часового экспериментирования получилось сконфигурить для своих условий.

БОЛЬШАЯ ПРОСЬБА: сделайте что-нибудь, чтобы страницы при печати (или при сохранении в PDF) имели удобочитаемый вид. Некоторые статьи удобно было бы сохранять в виде инструкций. Но в том виде, как они сохраняются (результат могу выслать) - пользоваться ими НЕВОЗМОЖНО. Хотя очень хочется.

Посмотрю что можно сделать.

Спасибо все работает, очень интересная статья еще бы добавить Информативности по больше ))) а так спасибо за проделанную работу

Первое:ваш сайт НЕВЕРОЯТНО ТЯЖЕЛЫЙ - современный комп на 64 бит проце и неплохой оперативой с трудом справляется. Сайт забит по-самые помидоры - флэшем и всякой ерундой. Второе:было сделано ВСЕ как написано - результат АБСОЛЮТНЫЙ НОЛЬ. Ни Windows ни Ubuntu не соединяются,не видят и вообще ничего НЕТ. Только Samba установилась плюс - поставил графическую - более человечную среду для нее : файл конфига просто отказывался вводить первые скобки и буквы - причины неизвестны,ну и по-х. сделал это через граф-среду : НАМНОГО УДОБНЕЕ вашего долбанутого терминала(ВСЕ должно быть проще - нажал кнопку - поставил - запустил - работает,как iPhone. ).Поэтому прекратите врать, что то о чем здесь написали - работает : это всего лишь очередной развод. Теперь из-за вашей поганенькой статейки - придется ВСЮ эту ерунду как-то вычищать с компа! Лучше бы делом занимались - электричество в отсталые районы давали бы.

Возможно добавить несколько рабочих групп к папке? Как это сделать ?

Спасибо за инструкцию. Все заработало с первой попытки.

в течении 2 недель ставлю сервером 16.04 переустанавливал заново 6 раз. Настроить самбу не могу. Что удивляет - если погуглить как настроить самбу - нет одинаковых решений, даже пакеты предлагают разные. НУ решил использовать данный мануал. У меня сеть с доменом. прописал все как тут прописано по доступу ВСЕХ. Машины из домена шару видят. Зайти не могут пишут разрешение на доступ \\192.168.1.101\allaccess отсутствует.
Всю голову сломал в чем дело ? настройки проверил по буквам , все в порядке, где еще копать ? ( сервер домена win 2008 r компы клиентов win 7 - 64 )
ПОМОГИТЕ КТО НИБУДЬ .

Та же самая фигня, СТАРАЯ SAMBA на других компах (работающая давным давно) отлично работает с любыми Виндами от XP до Windows 7 и такими же старыми SAMBA-ми как и она сама - доступ полный до расшареных папок и т.д. короче все работает, НО! после версии SAMBA 2:4.1.6 а это точно про Ubuntu 16.04 в ней даже эту старую версию не вернуть, так как ее уже УДАЛИЛИ из Репозиториев, но именно она. та старая версия самая работоспособная в отличии от всех что после нее выходили. короче не работает Ubuntu 16.04 Samba - имена компов в сети видит - зайти на них не может даже если Юзернейм и Пасс прописать совершенно одинаковый везде, хорть с паролем хоть без (хотя на вышеупомянутую старую Runtu со старой самбой даже Виндовые машины заходят без паролей - так потому что настроено и так надо!) не заходят никак вообще - Окно с паролем и доменом просто перезагружается до бесконечности как будто параметры не верные были введены - короче я ТОЖЕ еще не победил этот ИДИОТИЗМ и чем дальше тем больше разочарования от Линукса. МЛЯТЬ НУ НЕ ДОЛЖНО ЛОМАТЬСЯ ТО ЧТО РАНЬШЕ РАБОТАЛО КАК ЧАСЫ. мне стыдно за профессию программист, это бег по кругу, и мне стыдно за Линукс, эти ДОЛБОЕБЫ котрые считают себя программистами которые ЛОМАЮТ с каждым годом все больше и больше просто ОПОЗОРИЛИ Линукс с ног до головы, раньше Линукс считался чуть ли не эталоном Отказоустойчивой и работоспособной системы - сейчас глюк на глюке, дырка на дырке, проблема на проблеме, дошло до того что ОДНА И ТА ЖЕ СБОРКА с одной и той же флешке установленая на ДВА разных ноутбука - НЕ ВИДЯТ ДРУГ ДРУГА никаким образом, но стоит установить какую нибудь старую версию 10 ил 12 4-5 летней давности - все впорядке с сеткой (простой одноранговой) - работает как это говорят "из коробки". Новые - НЕТ, не работают. Я знаю что это проблема чаще индивидуальная, но меня БЕСИТ что умудряются сломать ТО что раньше РАБОТАЛО как часы. Я все сказал.

map to guest = Bad User в секцию [global] - и будет гостевой доступ в новых версиях. Иначе не пустит, будет ругать за пустой или неверный (если что-то ввели) логин. Насчет user-level авторизации - для WORKGROUP сойдет вход по учетке на linux, для домена лучше изучить статью Setting up a Share Using Windows ACLs на офсайте Samba.

Сетевые папки видны, но доступа нет ни на запись, ни на чтение. Система пишет нет : Возможно у вас нет права доступа. обратитесь в администратору .
Не понятно куда копать. Уже несколько дней пытаюсь настроить.

Linuxmint 8 версии и несколько последующих, работали без проблем. 17 - 18 видит расшаренную папку но сервер не принимает пароль. Что с этим делать гугл не знает. Кругом доморощенные эксперты предлагают 10 совершенно разных способов настроить сервер и требуют конфиги. Сервер РАБОТАЕТ. Работают клиенты в Винде, даже в Андройде! Но в Linux, в этой сетевой системе, сломалось то что не должно ломатьсяю. Что читать какие логи? Как настроить клиент? Он вообще настраивается? Live дистрибутив тоже не может войти в папку. Читать 200 страничные мануалы не имею возможности, мне платят за другую работу. Если кто-то решил подобную проблему, прошу поделиться мудростью.

Мне помогло ntlm auth = yes в конфиге. А до этого выявил причину, задав log level = 2.
Причина в старом способе аутентификации WinXP:
ntlm_password_check: NTLMv1 passwords NOT PERMITTED for user

2Николай. Респектище тебе, мээээн. Большое спасибоооо. :))))) Мы весь моск сломали на тему почему после переезда на новую самбу все тачки с ХР и МФУ ("сканирование в папку smb") перестали авторизовываться по smb. Данные строчки проблему решили, всё ок. Ещё раз спасибо. С нас пыво 😉

Как подключиться к диску на Винде C: или D: c Линукса по сети? На винде нет расшариных папок, но например я с компа с виндой могу зайти на другой комп с виндовс по пути например //192.168.1.2/C$/, зная логин и пароль админа, а так же с андроида тоже захожу. А как с линукса зайти? С линуксом я только знакомлюсь. Расшаривать папки на винде не нужно, мне нужен доступ полностью к разделу диска, зная пароль админа.

Спасибо большое! Всё получилось с первого раза!
Задача: подключить диск SATA / USB 3.0 к Ubuntu и расшарить его в локальной сети, чтобы заходить с Windows7. Раньше делал общий доступ через "Общедоступная папка локальной сети"->"Опубликовать папку". Потом после переустановки Ubuntu (16.04 LTS), жмешь "Опубликовать папку"->Устанавливаешь предложенные пакеты Samba->Папка опубликована и даже в Windows7 видна, а доступа к ней нет. Chmod и chown запускал от superuser-а, но разрешения для дисков не менялись!
Решение: sudo apt-get purge samba. И дальше всё по инструкции написанной выше. Автору респект!

как добавить вторую папку?
типа
[AllAccess]
path = /media/admin/Мульт/
path = /media/admin/Фильмы/

writeable = yes
available = yes
; browseable = yes
public = yes
guest ok = yes
force user = root
force group = plugdev

Как установить и настроить Samba в Ubuntu 18.04

Samba - это бесплатная и открытая повторная реализация сетевого протокола обмена файлами SMB / CIFS, который позволяет конечным пользователям получать доступ к файлам, принтерам и другим общим ресурсам.

Мы создадим следующие общие ресурсы и пользователей Samba.

Пользователи:

  • sadmin - административный пользователь с правами чтения и записи для всех общих ресурсов.
  • josh - Обычный пользователь со своим личным файловым хранилищем .
  • users - этот общий ресурс будет доступен всем пользователям с разрешениями на чтение и запись.
  • josh - этот общий ресурс будет доступен с разрешениями на чтение и запись только пользователям josh и sadmin.


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

Прежде чем приступить

Прежде чем продолжить, убедитесь, что вы вошли в систему Ubuntu 18.04 как пользователь с правами sudo .

Установка Samba в Ubuntu

Samba доступна в официальных репозиториях Ubuntu. Чтобы установить его в вашей системе Ubuntu, выполните следующие действия:

Начните с обновления индекса пакетов apt:

Установите пакет Samba с помощью следующей команды:

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

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


На этом этапе Samba установлена ​​и готова к настройке.

Настройка межсетевого экрана

Если у вас есть брандмауэр работает в вашей системе Ubuntu вам необходимо разрешить входящие соединения UDP на портах 137 и 138 и TCP соединений на портах 139 и 445 .

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


Настройка глобальных параметров Samba

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


Файл конфигурации по умолчанию, который поставляется с пакетом Samba, настроен для автономного сервера Samba. Откройте файл и убедитесь, что для server role него установлено значение standalone server


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


После этого запустите testparm утилиту, чтобы проверить файл конфигурации Samba на наличие ошибок. Если нет синтаксических ошибок, вы увидите Loaded services file OK.

Наконец, перезапустите службы Samba с помощью:


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

Для упрощения обслуживания и гибкости вместо использования стандартных домашних каталогов ( /home/user ) все каталоги и данные Samba будут расположены в этом /samba каталоге.

Чтобы создать /samba каталог типа:


Установите собственность группы в sambashare . Эта группа создается во время установки Samba, позже мы добавим в эту группу всех пользователей Samba.


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

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

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

Чтобы создать нового пользователя с именем, josh используйте следующую команду:


Параметры useradd имеют следующие значения:

  • -M -не создавать домашний каталог пользователя. Мы создадим этот каталог вручную.
  • -d /samba/josh - установить домашний каталог пользователя /samba/josh .
  • -s /usr/sbin/nologin - отключить доступ к оболочке для этого пользователя.
  • -G sambashare - добавить пользователя в sambashare группу.


Создайте домашний каталог пользователя и установите права собственности на каталог для пользователя josh и группы sambashare :

Следующая команда добавит бит setgid в /samba/josh каталог, чтобы вновь созданные файлы в этом каталоге унаследовали группу родительского каталога. Таким образом, независимо от того, какой пользователь создает новый файл, файл будет иметь группу-владельца sambashare . Например, если вы не установите права доступа к каталогу, 2770 а sadmin пользователь создаст новый файл, пользователь josh не сможет читать / писать в этот файл.


Добавьте josh учетную запись пользователя в базу данных Samba, установив пароль пользователя:


Вам будет предложено ввести и подтвердить пароль пользователя.

После того, как пароль установлен для запуска учетной записи Samba:

Чтобы создать другого пользователя, повторите тот же процесс, что и при создании пользователя josh .

Далее давайте создадим пользователя и группу sadmin . Все члены этой группы будут иметь права администратора. Позже, если вы захотите предоставить административные права другому пользователю, просто добавьте этого пользователя в sadmin группу .

Создайте пользователя с правами администратора, набрав:


Команда выше будет также создать группу sadmin и добавить пользователя как sadmin и sambashare группы.

Установите пароль и включите пользователя:


Затем создайте Users общий каталог:


Установите владельца каталога на пользователя sadmin и группу sambashare :


Этот каталог будет доступен всем авторизованным пользователям. Следующая chmod команда предоставляет доступ для записи / чтения членам sambashare группы в /samba/users каталоге:


Настройка общих ресурсов Samba

Откройте файл конфигурации Samba и добавьте разделы:


Параметры имеют следующие значения:

  • [users] и [josh] - Имена общих ресурсов, которые вы будете использовать при входе в систему.
  • path - Путь к доле.
  • browseable - Должна ли акция быть указана в списке доступных акций. При установке на no другие пользователи не смогут увидеть общий ресурс.
  • read only - Могут ли пользователи, указанные в valid users списке, писать в этот общий ресурс.
  • force create mode - Устанавливает разрешения для вновь созданных файлов в этом общем ресурсе.
  • force directory mode - Устанавливает разрешения для вновь созданных каталогов в этом общем ресурсе.
  • valid users - Список пользователей и групп, которым разрешен доступ к общему ресурсу. Группы начинаются с @ символа.


Дополнительные сведения о доступных параметрах см. На странице документации файла конфигурации Samba .

После этого перезапустите службы Samba с помощью:


В следующих разделах мы покажем вам, как подключиться к общему ресурсу Samba из клиентов Linux, macOS и Windows.

Подключение к общему ресурсу Samba из Linux

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

Использование клиента smbclient

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

Для установки smbclient в Ubuntu и Debian запустите:


Для установки smbclient на CentOS и Fedora запустите:


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


Например, чтобы подключиться к общему ресурсу с именем josh на сервере Samba с IP-адресом в 192.168.121.118 качестве пользователя, josh вы должны запустить:


Вам будет предложено ввести пароль пользователя.

После ввода пароля вы войдете в интерфейс командной строки Samba.

Монтирование общего ресурса Samba

Чтобы смонтировать общий ресурс Samba в Linux, вам сначала нужно установить cifs-utils пакет.

В Ubuntu и Debian запустите:


В CentOS и Fedora запустите:


Затем создайте точку монтирования:


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


Например, чтобы подключить общий ресурс с именем josh на сервере Samba с IP-адресом в 192.168.121.118 качестве пользователя josh к /mnt/smbmount точке монтирования, вы должны запустить:


Вам будет предложено ввести пароль пользователя.

Использование графического интерфейса

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

  1. Откройте файлы и нажмите «Другие места» на боковой панели.
  2. В поле «Подключиться к серверу» введите адрес общего ресурса Samba в следующем формате smb://samba_hostname_or_server_ip/sharename .
  3. Нажмите «Подключиться», и появится следующий экран:



Подключение к общему ресурсу Samba из macOS

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

  1. Откройте «Finder», выберите «Перейти» и нажмите «Подключиться к».
  2. В поле «Подключиться к» введите адрес общего ресурса Samba в следующем формате smb://samba_hostname_or_server_ip/sharename .






Подключение к общему ресурсу Samba из Windows

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

  1. Откройте проводник и на левой панели щелкните правой кнопкой мыши «Этот компьютер».
  2. Выберите «Выбрать другое сетевое расположение» и нажмите «Далее».
  3. В поле «Интернет или сетевой адрес» введите адрес общего ресурса Samba в следующем формате \\samba_hostname_or_server_ip\sharename .

Читайте также: