- Установка и настройка Samba в Ubuntu
- Введение
- Установка Samba
- Настройка Samba
- Добавление пользователя сетевого диска
- Подключение к сетевому диску
- Видео
- Файловый сервер Samba
- Содержание
- Файловый сервер Samba
- Установка
- Настройка
- Ссылки
- Настройка файлового сервера в локальной сети на Windows/Linux
- Что это такое?
- Создание и настройка частной сети
- Настройка файлового сервера
- Настройка файлового сервера на Linux (Debian/Ubuntu)
- Настройка общего публичного каталога на Windows
- Настройка общего приватного каталога на Windows
- Подключение к общему каталогу с помощью Linux
- Если общий каталог находится на Windows Server?
- Если общий каталог находится на Linux?
- Подключение к общему каталогу с помощью Windows
- Если общий каталог находится на Windows Server?
- Если общий каталог находится на Linux?
Установка и настройка Samba в Ubuntu
Файловый сервер Samba позволяет передавать файлы между серверами и компьютерами по сети. С его помощью, к примеру, вы можете получить доступ к файлам на сервере со своего рабочего компьютера или ноутбука. Ниже я расскажу, как установить и настроить файловый сервер Samba на Ubuntu.
Если вы только планируете устанавливать ubuntu, то можете воспользоваться моей подробной статьей на этот счет — установка ubuntu server. Так же вам может быть интересен мой обзор и сравнение сервера убунту с другими linux системами — Ubuntu Server — обзор для начинающих, сравнение, отзывы.
Введение
Из статьи вы узнаете:
- Как настроить файловый сервер Samba
- Как передавать файлы по локальной сети
- Ubuntu Server
- Локальная сеть для передачи файлов
Если у вас все готово, то приступаем к настройке.
Установка Samba
Для установки Samba, выполняем в консоли:
После того, как установка будет завершена, проверьте, куда установлена samba:
Вы должны увидеть примерно следующее:
Настройка Samba
Когда Samba установлена, можно приступить к настройке. Нам необходимо создать директорию для сетевой папки.
Команда выше создаст пустую папку, которую мы сделаем сетевой. Для этого настраиваем конфиг Самбы. Он живет по адресу /etc/samba/smb.conf . Отредактируем его и добавим новую сетевую директорию.
Добавляем туда следующие строки:
Нажмите Ctrl-O, чтобы сохранить и Ctrl-X, чтобы выйти из редактора nano.
Что мы настроили:
- path — директория для нашей сетевой папки samba
- read only — указали, что файлы в сетевой папке не только для чтения, а значит могут быть изменены
- browsable — сделали возможным просмотр сетевой папки в сетевом окружении обозревателя файлов в операционных системах
Сетевую папку мы настроили, теперь нужно перезагрузить Samba:
Разрешим работу Samba в фаерволе, если он у вас включен:
Все, на этом настройка Samba закончена. Переходим к проверке работы.
Добавление пользователя сетевого диска
Для того, чтобы получить доступ к сетевой папке Samba, необходимо задать пароль пользователя шары. Он уже должен существовать в системе.
shareuser — системный пользователь, у которого будет доступ к сетевой папке. Если получите ошибку:
Failed to add entry for user shareuser.
Значит у вас нет системного пользователя. Добавьте его следующим образом:
Подключение к сетевому диску
Теперь попробуем зайти на сетевой диск Samba. Для этого в обозревателе файлов перейдите по адресу \\10.20.1.16 , где 10.20.1.16 это ip адрес сервера, на котором мы выполняли настройку samba.
Появится запрос на авторизацию. Укажите имя пользователя и пароль, которые мы задали этапом раньше. Вы окажетесь в сетевой директории. Попробуйте туда скопировать несколько файлов.
Если получите ошибку — Нет доступа к целевой папке, Вам необходимо разрешение на выполнение целевой операции, значит у пользователя shareuser нет unix прав на запись в директорию /mnt/share . Исправляем это:
Попробуйте скопировать еще раз. Теперь должно быть все в порядке.
Все, на этом настройка Samba закончена. Удачной работы и хорошего аптайма!
Видео
Файловый сервер Samba
Содержание
Файловый сервер Samba
Один из наиболее стандартных способов взаимодействия по сети между компьютерами Ubuntu и Windows — это настройка Samba в качестве файлового сервера. Эта глава рассказывает как настроить Samba сервер для разделения файлов с клиентами Windows.
Сервер будет настроен на доступ к файлам для любого клиента в сети без запроса пароля. Если ваше окружение требует более строгого контроля доступа, смотрите раздел Защита серверов Samba.
Установка
Для начала установим пакет samba. Введите в терминале :
Это все, что требуется. Теперь вы готовы настраивать Samba для разделения файлов.
Настройка
Основной файл настройки Samba — /etc/samba/smb.conf. Изначальный файл конфигурации имеет значительное количество комментариев для документирования различных директив настройки.
1. Сначала измените следующие пары ключ/значение в секции [global] файла /etc/samba/smb.conf:
Параметр security находится значительно ниже в секции [global] и по умолчанию закомментирован. Также замените EXAMPLE на что-то более соответствующее вашему окружению.
2. Создайте новую секцию в конце файла или раскомментируйте один из примеров для каталога, который нужно настроить на общий доступ:
comment: короткое описание разделяемого ресурса. Используется для вашего удобства.
path: путь до разделяемого каталога.
Этот пример использует /srv/samba/sharename поскольку, в соответствии со стандартом иерархии файловых систем (FHS), каталог /srv — это место, где должны находится все данные, относящиеся к данному сайту. Технически разделяемый ресурс Samba может быть размещен в любом месте файловой системы, где позволяют файловые ограничения доступа, но следование стандартам рекомендуется.
browsable: позволяет клиентам Windows просматривать содержимое разделяемого каталога с помощью проводника Windows.
guest ok: позволяет клиентам подключаться к разделяемому ресурсу без указания пароля.
read only: определяет доступность ресурса только на чтение или с привилегиями на запись. Привилегии на запись доступны только при указании no, как показано в данном примере. Если значение yes, то доступ к ресурсу будет только на чтение.
create mask: определяет какие права доступа будут установлены для создаваемых новых файлов.
3. Теперь, поскольку Samba настроена, требуется создать каталог и установить на него права доступа. Введите в терминале:
4. Наконец, перезапустите сервисы samba для применения новых настроек:
Теперь вы можете находить Ubuntu файл сервер с помощью клиента Windows и просматривать его разделяемые каталоги. Если ваш клиент не показывает ваши разделяемые ресурсы автоматически, попробуйте обратиться к вашему серверу по его IP адресу, например, \\192.168.1.1, из окна проводника Windows. Для проверки, что все работает, попробуйте создать каталог внутри вашего разделяемого ресурса из Windows.
Для создания дополнительных разделяемых ресурсов создайте новую секцию [dir] в /etc/samba/smb.conf и перезапустите Samba. Просто убедитесь, что разделяемый каталог создан и у него корректные права доступа.
Ссылки
Для более глубокого изучения настроек Samba смотрите Сборник ЧаВо по Samba.
Руководство также доступно и в печатном виде.
Еще одно хорошее руководство — Using Samba от O’Reilly.
Настройка файлового сервера в локальной сети на Windows/Linux
В инструкции описан процесс настройки общего файлового сервера для всех пользователей локальной или виртуальной сети с операционными системами Linux и Windows.
Что это такое?
Файловый сервер работает по протоколу SMB/CIFS и позволяет предоставить доступ к общим ресурсам в локальной сети, например, текстовым файлам или сетевым принтерам. Для его развертывания на Windows используются штатные средства ОС, на Linux используется файловый сервер Samba.
В инструкции рассмотрена настройка файлового сервера на серверах с операционными системами Linux и Windows. На сервере будет находиться 2 каталога — публичный и приватный. К файловому серверу подключение будет происходить как с операционной системы Windows, так и с Linux, т.к. в виртуальной или физической локальной сети могут находиться серверы с разными ОС.
Создание и настройка частной сети
Для начала в панели управления должны быть созданы все необходимые для сети серверы.
После создания необходимо объединить все машины в единую локальную сеть через панель управления в разделе Сети. В результате серверы получат локальные IP-адреса.
После создания частной сети необходимо настроить сетевые адаптеры на каждом сервере. Об этом можно прочитать в наших инструкциях:
Настройка файлового сервера
Прежде всего, необходимо определиться, на сервере с какой операционной системой будет находиться общий каталог.
Настройка файлового сервера на Linux (Debian/Ubuntu)
Для развертывания файлового сервера на системах Linux используется инструмент SAMBA. Ниже перечислены действия по его установке и настройке.
Прежде всего следует обновить локальную базу пакетов:
Далее установите пакеты из главного репозитория:
apt-get install -y samba samba-client
Создайте резервную копию файла конфигурации Samba:
cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
Создайте или выберете директорию, к которой все пользователи будут иметь общий доступ:
mkdir -p /samba/public
Перейдите к этому каталогу и измените режим доступа и владельца:
cd /samba
chmod -R 0755 public
Создайте или выберете каталог, к которому иметь доступ будут ограниченное число пользователей:
Создайте группу пользователей, которые будут иметь доступ к приватным данным:
Создайте нужных пользователей с помощью команды useradd:
Добавьте созданных пользователей в группу:
usermod -aG smbgrp user1
Измените группу, которой принадлежит приватная директория:
chgrp smbgrp /samba/private
Задайте пароль, с помощью которого пользователь будет подключаться к каталогу:
smbpasswd -a user1
Откройте файл конфигурации на редактирование с помощью текстового редактора, например nano:
Замените содержимое файла на следующие строки:
[global]
workgroup = WORKGROUP
security = user
map to guest = bad user
wins support = no
dns proxy = no
[public]
path = /samba/public
guest ok = yes
force user = nobody
browsable = yes
writable = yes
[private]
path = /samba/private
valid users = @smbgrp
guest ok = no
browsable = yes
writable = yes
Сохраните внесенные изменения, нажав CTRL+X, затем Enter и Y.
Значения параметров выше:
- global — раздел с общими настройками для Samba сервера
- workgroup — рабочая группа Windows, WORKGROUP — значение по умолчанию для всех Windows машин, если вы не меняли самостоятельно
- security — режим безопасности, значение user означает аутентификацию по логину и паролю
- map to guest — задает способ обработки запросов, bad user — запросы с неправильным паролем будут отклонены, если такое имя пользователя существует
- wins support — включить или выключить поддержку WINS
- dns proxy — возможность запросов к DNS
- public — название общего каталога, которое будут видеть пользователи сети, может быть произвольным и не совпадать с именем директории
- path — полный путь до общего каталога
- browsable — отображение каталога в сетевом окружении
- writable — использование каталога на запись, инверсия read only
- guest ok — авторизация без пароля
- force user — пользователь по умолчанию
- valid users — список пользователей, у которых есть доступ к каталогу, через @ указывается unix-группа пользователей
Проверить настройки в smb.conf можно с помощью команды:
Чтобы изменения вступили в силу, перезапустите сервис:
service smbd restart
Далее нужно настроить firewall, открыв порты, которые использует SAMBA. Настоятельно рекомендуем разрешить только подключения из локального диапазона IP-адресов или виртуальной частной сети. Адресное пространство вашей частной сети вы можете увидеть в панели управления 1cloud.
Замените значение параметра –s в правилах ниже для соответствия адресному пространству вашей частной сети. Как правило префикс сети /24, если вы явно не подразумеваете иного:
iptables -A INPUT -p tcp -m tcp —dport 445 –s 10.0.0.0/24 -j ACCEPT
iptables -A INPUT -p tcp -m tcp —dport 139 –s 10.0.0.0/24 -j ACCEPT
iptables -A INPUT -p udp -m udp —dport 137 –s 10.0.0.0/24 -j ACCEPT
iptables -A INPUT -p udp -m udp —dport 138 –s 10.0.0.0/24 -j ACCEPT
Теперь необходимо сделать так, чтобы указанные выше правила фаервола iptables были сохранены после перезагрузки машины. Для это установим пакет iptables-persistent:
apt-get install iptables-persistent
После установки откроется окно с предложением последовать запомнить текущие правила iptables для IPv4 и IPv6. Подтвердите это действие.
Проверить актуальные правила iptables можно командой:
В выводе команды вы должны увидеть ранее добавленные разрешающие политики (Accept).
Настройка общего публичного каталога на Windows
Для общего доступа к файлам по сети в Windows используются стандартные средства ОС.
Чтобы пользователи локальной сети могли без пароля подключаться к общему ресурсу, необходимо в панели управления снять ограничения защиты. Откройте панель управления и перейдите в раздел Сеть (Network and Internet) -> Центр управления сетями и общим доступом (Network and Sharing Center) -> Расширенные настройки общего доступа (Advanced sharing settings). В разделе Все сети (All Networks) выберете опцию Отключить доступ с парольной защитой (Turn off password protected sharing) и сохраните изменения.
Далее, чтобы настроить общий доступ к каталогу на Windows необходимо создать или выбрать нужный и открыть его свойства. В свойствах перейдите во вкладку Доступ (Sharing) и нажмите Расширенная настройка (Advanced Sharing).
В открывшемся окне отметьте галочкой Открыть общий доступ к этой папке (Share this folder), для того чтобы она стала общедоступной. В поле Имя общего ресурса (Share name) введите имя, которое будет видно всем пользователям. Далее нажмите Разрешения (Permissions) для настройки прав доступа.
Выберете нужные права доступа для всех пользователей (Everyone). Нажмите Применить (Apply), чтобы изменения вступили в силу.
Теперь в свойствах каталога нажмите Общий доступ (Share).
В поле поиска введите Все пользователи (Everyone) и нажмите Добавить (Add). Для полного доступа выберете права Read/Write и нажмите Поделиться (Share).
Теперь ваш каталог Windows доступен всем пользователям локальной сети без пароля.
Настройка общего приватного каталога на Windows
Для настройки общего каталога, который будет доступен только определенным пользователям, необходимо, чтобы данные пользователи существовали на сервере с общей папкой и на Windows машине с которой будет происходить подключение (наличие пользователя на Linux сервере не требуется), причем логин и пароль пользователей должны полностью совпадать. О том как создать нового пользователя читайте в нашей инструкции.
Чтобы пользователи локальной сети могли без пароля подключаться к общему ресурсу, необходимо в панели управления снять ограничения защиты. Откройте панель управления и перейдите в раздел Сеть (Network and Internet) -> Центр управления сетями и общим доступом (Network and Sharing Center) -> Расширенные настройки общего доступа (Advanced sharing settings). В разделе Все сети (All Networks) выберете опцию Отключить доступ с парольной защитой (Turn off password protected sharing) и сохраните изменения.
Далее, чтобы настроить общий доступ к каталогу на Windows необходимо создать или выбрать нужный и открыть его свойства. В свойствах перейдите во вкладку Доступ (Sharing) и нажмите Расширенная настройка (Advanced Sharing).
Так как каталог будет доступен только определенным пользователям, необходимо удалить группу Все пользователи (Everyone) с помощью кнопки Удалить (Remove).
Далее с помощью кнопки Добавить (Add) добавьте пользователей для управления каталогом.
Введите имя и нажмите Проверить имена (Check Names), выберете полное имя пользователя и нажмите OK.
Установите нужные права и нажмите Применить (Apply).
Теперь в свойствах каталога нажмите Поделиться (Share).
В поле поиска введите имя пользователя и нажмите Добавить (Add). Для полного доступа выберете права Чтение/Запись (Read/Write) и нажмите Поделиться (Share).
В итоге каталог стает общедоступным для определенных пользователей.
Подключение к общему каталогу с помощью Linux
Чтобы подключиться к общему каталогу, необходимо установить клиент для подключения:
sudo apt-get install smbclient
Для подключения используйте следующий формат команды:
Также можно выполнить монтирование общего каталога, для этого установите дополнительный пакет утилит:
sudo apt-get install cifs-utils
Для монтирования используйте следующий формат команды:
mount -t cifs -o username= ,password= // /
Где — адрес машины, на которой расположена общая директория, а — путь до общей директории.
mount -t cifs -o username=Everyone,password= //10.0.1.2/Win /root/shares/public
Если общий каталог находится на Windows Server?
Если общий каталог находится на сервере с операционной системой Windows, то для публичного каталога используйте имя пользователя Everyone, а в качестве пароля просто нажмите Enter. Например:
smbclient -U Everyone \\\\10.0.1.2\\Win
Enter Everyone’s password:
OS=[Windows Server 2016 Standard 14393] Server=[Windows Server 2016 Standard 6.3]
smb: \>
Для приватного каталога используйте имя пользователя и пароль, которому разрешен доступ.
Если общий каталог находится на Linux?
Если общий каталог находится на сервере с операционной системой Linux, то для публичного каталога используйте имя пользователя nobody, а в качестве пароля просто нажмите Enter. Например:
smbclient -U nobody \\\\10.0.1.2\\public
Enter nobody’s password:
OS=[Windows Server 2016 Standard 14393] Server=[Windows Server 2016 Standard 6.3]
smb: \>
Для приватного каталога используйте имя пользователя и пароль, которому разрешен доступ.
Подключение к общему каталогу с помощью Windows
Для подключения используйте Проводник Windows, в адресную строку введите строку в следующем формате:
Если общий каталог находится на Windows Server?
Если вы подключаетесь к приватному каталогу, то он откроется автоматически, а если подключаетесь к публичному, то перед вами вами появится окно для ввода данных для входа. Введите логин Everyone и пустой пароль, нажмите OK. В результате вы будете подключены к общему каталогу.
Если общий каталог находится на Linux?
Для подключения к публичной папке не требуется вводить логин или пароль, достаточно в адресную строку ввести нужный ip-адрес без ввода дополнительной информации. Для подключения к приватному каталогу введите логин и пароль пользователя в появившееся окно.