→ Протокол samba. Что такое SAMBA? Доступ Samba к общей папки из Windows

Протокол samba. Что такое SAMBA? Доступ Samba к общей папки из Windows

Linux - отличная операционная система, но от Windows мы не куда не денемся и он от нас тоже. Win­dows будет окружать нас всегда - будь то домашняя, корпоративная сеть или интернет-кафе. Нам постоянно предстоит обмениваться документами с Windows-компьютерами - ведь далеко не все пользователи предпочитают работать в Linux. Имея в своем распоряжении сервер на Linux , в любом случае возникнет необходимость взаимодейст­вия с Windows-компьютерами, поэтому речь и пойдет о подключении Linux к сети Microsoft.

Установка Samba

Для установки Samba нам нужно установить пакеты samba и samba-client. Желательно также установить пакет smbfs. Кроме того, система поставит на обновление пакет samba-common, который возможно уже установлен в системе. Все мои манипуляции будут проводится на Ubuntu 10.04, основные отличия от других дистрибутивов – это способ установки. Для Ubuntu через консоль, таким образом:

$ sudo apt — get install samba

Или используя менеджер пакетов Synaptic, что я и сделал, такой вариант оказался более удобным для меня, поскольку можно было выбрать из списка те пакеты, которые мне нужны, это были:

    samba

    smbclient

    samba-common

Если вы когда-то использовали другой дистрибутив Linux, то наверняка знакомы с программой LinNeighborhood. Это графическая программа, которая позволяет просматривать ресурсы Windows-сети. В Ubuntu в ней нет никакой необходимости. Во-первых, штатные средства GNOME позволяют просматривать Windows-сети. А во-вторых, ради интереса было установлено программу LinNeighborhood с одного из репозиториев Ubuntu. Выяснилось, что эта программа, найденная Synaptic, вообще не при­годна к использованию (проблемы с локализацией). Ну и ладно, смысл разбираться, если есть отличные стандартные средства, которые уже работают.

Базовая настройка Samba

На этом этапе будем считать, что утилита установлена. Основной конфигурационный файл Samba - /etc/samba/smb.conf. Его необходимо открыть и изменить несколько параметров. Первый это workgroup - он задает имя (на Ваш выбор) рабочей группы или домена NT:

WORKGROUP = MyHomeGroup

Можете также уста­новить параметр comment - это описание вашего компьютера:

comment = My Linux computer

Установите параметр security. Если сеть клиент/сервер, то нужно вы­брать параметр server, а если одноранговая сеть (т. е. сеть без выде­ленного сервера), то нужно выбрать user или share:

security = share

Имя гостевой учетной записи установите так:

guest account = guest

Также нужно настроить кодировки:

client code page = 866

character set = utf8

Для того чтобы Samba работал быстрее, установите следующие опции:

socket options = TCP_NO DELAY SO_RCVBUF=8192 SO_SNDBUF=8192

dns proxy = no

Параметр interfaces указывает интерфейсы, на которых должен работать сервис Samba. Необходимо указать те интерфейсы, которые связывают нашу машину с Windows-сетями:

interfaces = 192.168.0.22/24

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

Теперь осталось сконфигурировать ресурсы, которые мы хотим предоставить в общее пользование, это секция [ public ].

# общий каталог

comment = Public Directory

# путь

path = /var/samba

# не только чтение

read only = no

# разрешить запись

writable = yes

# разрешить гостевой доступ

guest ok = yes

# разрешить просмотр содержимого каталога

browseable = yes

В этом случае общим ресурсом нашего компьютера будет каталог /var/samba (его нужно создать, поскольку по умолчанию в системе нет такого каталога). В него другие пользователи смогут записывать свои файлы (read only=no, writeable=yes), естественно, они смогут их и читать (browseable=yes). Проверка имени пользователя и пароля для доступа к ресурсу не нужна (guest ok=yes) - используется так называемый гостевой доступ. Комментарий «Public Directory» увидят другие пользователи Windows-сети при просмотре ресурсов нашего компьютера.

Если есть необходимость предоставить общий доступ («расшарить») к домашним каталогам пользователей, то идем в секцию;. Раскомментируем все строки, закомментированные с помощью точки с запятой до строки;. Т . е . должно получиться следующее :

comment = Home Directories

browseable = no

valid users = %S

writable = no

create mask = 0600

directory mask = 0700

Сейчас пользовательские каталоги не будут видны в списке общих ресурсов, обратиться к ним можно по адресу \\сервер\имя_пользователя . Например, \\server\petya. Если нужно, чтобы пользовательские ресурсы можно было просмотреть, тогда устанавливаем значение yes для параметра browseable:

browseable = yes

После всех изменений сохраняем файл конфигурации и запускаем (или перезапускаем — restart) Samba:

$ sudo /etc/init.d/samba start

Просмотр ресурсов Windows-сети

Просмотреть ресурсы Windows-сети можно с помощью программы smbclient, но она работает в текстовом режиме, поэтому не совсем удобна в использовании. Гораздо удобнее использовать обозреватель файлов для просмотра ресурсов сети. Сделать это можно с помощью меню Переход | Соединиться с сервером…

Секреты оптимизации Samba

Теперь поговорим о том, как заставить Samba работать немного быстрее. Если вы откроете файл конфигурации smb.conf, то найдете в нем параметр wide links. Никогда не устанавливайте его в no ! Так мы существенно снизим производительность Samba. Наоборот, установить его нужно в yes (если до этого параметр wide links был отключен), что существенно повысит производительность.

Параметр wide links определяет, как Samba будет следовать по символиче­ским ссылкам. Если wide links=no, то Samba не будет следовать по симво­лическим ссылкам вне экспортируемой области. Сначала Samba следует по символической ссылке, а затем выполняет так называемый directory path lookup (системный вызов, определяющий, где завершилась ссылка). Данная операция подразумевает на 6 системных вызовов больше, нежели в случае, если wide links=yes. Учитывая, что подобных операций делается очень много, то выключение wide links снижает производительность Samba при­близительно на 30%.

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

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

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

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

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

net config workstation

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

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

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

notepad C:\Windows\System32\drivers\etc\hosts

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

192.168.0.1 srvr1.domain.com srvr1

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

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

Начнем, как обычно, с установки. Установка 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

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


workgroup = WORKGROUP

netbios name = Ubuntu Share
dns proxy = no

max log size = 1000
passdb backend = tdbsam
unix password sync = yes

pam password change = yes
map to guest = bad user
usershare allow guests = yes

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

  • workgroup - рабочая группа, как уже говорилось должна одинакова на всех машинах
  • netbios name - имя компьютера, которое будет отображаться в Windows;
  • log file - адрес файла, куда будут складываться сообщения об ошибках и другая информация;
  • security - по умолчанию выполнять аутентификацию на уровне пользователя;
  • name resolve order - очередность разрешения IP адресов по NetBIOS имени. bcast - означает отправить в локальную сеть широковещательный запрос. Если все компьютеры между которыми планируется взаимодействие находятся в одной сети этот вариант оптимальный;
  • passdb backend - способ хранения паролей пользователей;
  • unix password sync - синхронизация паролей пользователей samba с локальными паролями Unix;
  • map to guest - указывает, когда пользователю будет предоставляться гостевой доступ. Доступно три значения - never - никогда, bad user - когда такого пользователя не существует, bad password - когда пароль введен неверно,

Когда завершите создание конфигурационного файла, переходим к вопросу как расшарить папку 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:


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

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


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
#==============
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 16.04 для анонимного доступа завершена. Теперь вы можете проверить доступность общей папки allaccess из Windows, для этого нажмите Win+R и выполните:

\\srvr1\allaccess

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

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

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

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

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

sudo mkdir -p /samba/allaccess/secured

Создаем группу:

sudo addgroup securedgroup

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

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

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

sudo vi /etc/samba/smb.conf


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

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

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

sudo usermod -a -G securedgroup richard

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

Установка Samba на Ubuntu Server дает возможность создать базу данных.

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

Для чего нужна?

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

  • Позволяет соединить друг с другом Unix-подобную систему, т. е. любую систему на Linux, и Windows. Причём не только Windows. Программа очень «всеядна»: MacOS , Solaris и другие ОС разной степени популярности.
  • Самба даёт возможность пользователям Виндовс использовать компьютеры на Ubuntu в качестве сервера. То есть пользоваться файлами, к которым налажен доступ, а также частью подключённых устройств.
  • Поддерживает доменную структуру NT Domain, управляет пользователями NT, поддерживает функции участника, первичного контроллера.

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

Samba производится аж с 1992 года. И, что главное, новые версии выходят до сих пор. Последняя была выпущена седьмого марта 2017. С каждым годом разработчики стараются наладить совместимость большим количеством различных версий операционных систем, но главной фишкой остаётся соединение Linux-систем с Microsoft . В сравнении с Windows Server Samba может уступать ей из-за отсутствия поддержки части протоколов и инфраструктуры узлов. Однако многие утверждают, что скорость работы Самбы гораздо выше.

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

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

sudo apt-get install samba

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

После установки следует сделать бэкап файла конфигурации:

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

$ sudo vi /etc/samba/smb.conf

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

  • Workgroup - рабочая группа. Значение этого параметра также часто будет Workgroup, поскольку в Виндовс домен рабочей группы по умолчанию выглядит именно так.
  • Netbios name - имя компьютера Ubuntu, которое видят пользователи Windows . Здесь можно вводить значение на своё усмотрение.
  • Security - режим авторизации пользователей. По умолчанию стоит User, то есть аутентификация на уровне пользователя. Пока что лучше так и оставить.
  • Os level - указывает приоритет, который имеет Samba над другими клиентами (ПК) в локальной или интернет-сети.
  • Name resolve order - очерёдность разрешения IP-адресов по NetBIOS имени.
  • Read only - привилегия чтения или записи каталога. Значение может быть «yes» - исключительно чтение, «no» - запись.

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

Это простейшее действие, с которого можно начинать работу с Самбой.

Добавляем пользователя в самой ОС:

$ useradd -M -l -s /sbin/nologin username

Создаём для него пароль:

Занесём нашего пользователя в базу Samba:

$ smbpasswd -a username

При помощи команды $ smbpasswd можно выполнять другие различные действия:

  • $ smbpasswd username - смена пароля
  • $ smbpasswd -x username - удаление пользователя
  • $ smbpasswd -d username - бан пользователя

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

$ systemctl restart smb

Это базовые настройки Samba. Теперь можно попробовать применить программу на практике.

Доступ к папке

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

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

$ sudo mkdir -p /samba/access

Теперь делаем для этой папки расширенный доступ, чтобы её мог открыть любой клиент нашей локальной сети:

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

Владельцем согласно коду является nobody.

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


workgroup = WORKGROUP
server string = Samba Server %v
netbios name = srvr1
security = user
map to guest = bad user
name resolve order = bcast host
dns proxy = no
#==============
И второй, содержащий данные о папке access:

path = /samba/access
browsable =yes
writable = yes
guest ok = yes
read only = no

Следуют разделы друг за другом в таком же порядке.

Обновляем изменения сервера:

$ sudo service smbd restart

Действия с компьютером на Windows

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

  1. Открываем командную строку. Желательно делать это с расширенными правами, т. е. от имени администратора.
  2. Выполняем команду:
  3. notepad C:\Windows\System32\drivers\etc\hosts
  4. Открывается файл, в котором вводим следующую строчку:
  5. 168.0.1 srvr1.domain.com srvr1
    Благодаря ей папка станет доступна.
  6. Открыть её можно при помощи строки «Выполнить». Жмём Win + R, вводим: После этого нам откроется папка.

Закрытая папка

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

Делаем папку с названием «Closed»:

$ sudo mkdir -p /samba/allaccess/closed

Делаем специальную группу, которая может иметь доступ к этой папке:

$ sudo addgroup securedgroup

Создаём особые права для разных групп:

$ cd /samba/access
$ sudo chown -R richard:securedgroup closed
$ sudo chmod -R 0770 closed/

Так же, как и в случае с открытой папкой, добавляем сведения в конфигурацию:


path = /samba/access/closed
valid users = @securedgroup
guest ok = no
writable = yes
browsable = yes

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

Как можно понять, мы сделали папку Closed внутри Access. Таким образом Access может открыть каждый пользователь локальной сети, но чтобы смотреть и редактировать Closed, нужно обладать особыми правами.

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

Создаём пользователя и добавляем его в нашу закрытую группу:

$ sudo usermod -a -G securedgroup winston

Пользователя у нас зовут, как пачку сигарет (или премьер-министра Британии).

Делаем для Уинстона пароль:

$ sudo smbpasswd -a winston

После этого нам предложат ввести новый пароль, чтобы зайти заново под только что созданным аккаунтом. Не забудьте после этого сделать перезагрузку. Теперь вы знаете, как настроить сервер через Самбу в Убунту.

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

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

Samba работает на большинстве Unix-подобных систем, таких как GNU/Linux, POSIX-совместимых Solaris и Mac OS X Server, на различных вариантах BSD, в OS /2, Windows. Samba включена практически во все дистрибутивы GNU/Linux, в том числе, конечно, и в Ubuntu .

Установка

Чтобы сделать общую папку в Ubuntu Desktop достаточно щёлкнуть правой кнопкой мыши на папке и выбрать пункт меню «Опубликовать папку». Никаких конфигурационных файлов при этом править не надо. Всё описанное ниже относится только к ручной настройке, например, в случае создания файлового сервера.

Для установки достаточно открыть терминал и ввести:

Sudo apt-get install samba

Приложение будет автоматически загружено и установлено.

Настройка

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

Sudo cp /etc/samba/smb.conf{,.bak}

Теперь можно отредактировать файл настроек /etc/samba/smb.conf, для этого откройте его в любом текстовом редакторе с правами суперпользователя. Например, так:

Sudo nano /etc/samba/smb.conf

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

Пример настройки Samba в качестве автономного файлового сервера с авторизацией:

; Глобальные настройки сервера ; General server settings ; Имя компьютера, которое будет отображаться в сетевом окружении netbios name = main-server server string = ; Рабочая группа клиентов workgroup = WORKGROUP announce version = 5.0 socket options = TCP_NODELAY IPTOS_LOWDELAY SO_KEEPALIVE SO_RCVBUF=8192 SO_SNDBUF=8192 passdb backend = tdbsam security = user null passwords = true ; Файл для альясов имен юзеров username map = /etc/samba/smbusers name resolve order = hosts wins bcast ; wins support устанавливается в yes, если ваш nmbd(8) в Самба является WINS сервером. Не устанавливайте этот параметр в yes если у вас нет нескольких подсетей и вы не хотите чтобы ваш nmbd работал как WINS сервер. Никогда не устанавливайте этот параметр в yes более чем на одной машине в пределах одной подсети. wins support = no ; Поддержка принтеров printing = CUPS printcap name = CUPS ; Логи log file = /var/log/samba/log.%m syslog = 0 syslog only = no ; Настройка привязки к интерфейсам, на каких слушать, если не указано слушает на все интерфейсах; interfaces = lo, eth0 ; bind interfaces only = true ; ; ; path = /var/lib/samba/printers ; browseable = yes ; guest ok = yes ; read only = yes ; write list = root ; create mask = 0664 ; directory mask = 0775 ; ; ; path = /tmp ; printable = yes ; guest ok = yes ; browseable = no ; ; ;path = /media/cdrom ;browseable = yes ;read only = yes ;guest ok = yes ; Шара жесткого диска; Имя шары, видно у клиентов ; Путь к расшариваемому диску path = /media/sda1 ; Можно ли просматривать browseable = yes read only = no guest ok = no create mask = 0644 directory mask = 0755 ; Привязка к определенному имени пользователя или группе, имена через пробел; force user = user1 user2 ; force group = group1 group2 ; Еще один жесткий диск, по аналогии с тем что выше path = /media/sde1 browseable = yes read only = no guest ok = no create mask = 0644 directory mask = 0755

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

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

Smbpasswd -a user

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

Smbpasswd -e user

Далее создадим псевдоним для имени пользователя user что бы облегчить себе доступ с Windows машины на которой у нас например пользователь с именем Admin, для этого создадим и отредактируем файл /etc/samba/smbusers:

Sudo touch /etc/samba/smbusers sudo gedit /etc/samba/smbusers

Впишите в файл пару строк

# Unix_name = SMB_name1 SMB_name2 user = Admin

На этом настройка закончена, перезапустите Samba.

Установить самый простой GUI для Samba можно командой:

Sudo apt-get install system-config-samba

Запускается он командой:

Sudo system-config-samba

Все изменения он записывает в конфигурационный файл samba.

Для удалённого администрирования Samba в качестве web-интерфейса для Samba отлично подойдёт

Основной файл настройки Samba - /etc/samba/smb.conf. Изначальный файл конфигурации имеет значительное количество комментариев для документирования различных директив настройки.

Не все возможные опции включены в файле настроек по умолчанию. Смотрите руководство man smb.conf или Сборник ЧаВо по Samba для уточнения деталей.

1. Сначала измените следующие пары ключ/значение в секции файла /etc/samba/smb.conf:

Workgroup = EXAMPLE ... security = user

Параметр security находится значительно ниже в секции и по умолчанию закомментирован. Также замените EXAMPLE на что-то более соответствующее вашему окружению.

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

Comment = Ubuntu File Server Share path = /srv/samba/share browsable = yes guest ok = yes read only = no create mask = 0755

    comment : короткое описание разделяемого ресурса. Используется для вашего удобства.

    path : путь до разделяемого каталога.

    Этот пример использует /srv/samba/sharename поскольку, в соответствии со стандартом иерархии файловых систем (FHS), каталог /srv - это место, где должны находится все данные, относящиеся к данному сайту. Технически разделяемый ресурс Samba может быть размещен в любом месте файловой системы, где позволяют файловые ограничения доступа, но следование стандартам рекомендуется.

    browsable : позволяет клиентам Windows просматривать содержимое разделяемого каталога с помощью проводника Windows.

    guest ok : позволяет клиентам подключаться к разделяемому ресурсу без указания пароля.

    read only : определяет доступность ресурса только на чтение или с привилегиями на запись. Привилегии на запись доступны только при указании no , как показано в данном примере. Если значение yes , то доступ к ресурсу будет только на чтение.

    create mask : определяет какие права доступа будут установлены для создаваемых новых файлов.

3. Теперь, поскольку Samba настроена, требуется создать каталог и установить на него права доступа. Введите в терминале:

Sudo mkdir -p /srv/samba/share sudo chown nobody.nogroup /srv/samba/share/

параметр -p говорит mkdir создать полное дерево каталога, если оно не существует.

4. Наконец, перезапустите сервисы samba для применения новых настроек:

Sudo restart smbd sudo restart nmbd

Теперь вы можете находить Ubuntu файл сервер с помощью клиента Windows и просматривать его разделяемые каталоги. Если ваш клиент не показывает ваши разделяемые ресурсы автоматически, попробуйте обратиться к вашему серверу по его IP адресу, например, \\192.168.1.1, из окна проводника Windows. Для проверки, что все работает, попробуйте создать каталог внутри вашего разделяемого ресурса из Windows.

Для создания дополнительных разделяемых ресурсов создайте новую секцию в /etc/samba/smb.conf и перезапустите Samba. Просто убедитесь, что разделяемый каталог создан и у него корректные права доступа.

Разделяемый ресурс "" и путь /srv/samba/share - это просто примеры. Установите название ресурса и имя каталога в соответствии с вашим окружением. Хорошей идеей является использование в качестве названия ресурса имени его каталога в файловой системе. Другими словами ресурс можно указать как для каталога /srv/samba/qa.

 

 

Это интересно: