Samba Linux: сервер для контакта с пользователями Windows

Есть USB принтер HP LaserJet P2055d который подключен через USB шнур к компьютеру с осью Windows 7 Pro x64 Russian и он расшарен. Так вот нужно из рабочей станции Ubuntu Trusty подключить данный принтер дабы не перетыкать USB от компьютера с Windows к Ubuntu.

Компоненты сервера

Сервер состоит из нескольких компонентов. Это smbd, nmbd и winbindd.

  • Smbd — обрабатывает фактическое совместное использование файлов и принтеров. Кроме того, он также отвечает за вопросы аутентификации пользователей и блокировки ресурсов. Для запросов Использует порт 139 или 445.
  • Nmbd — отвечает за обработку запросов на обслуживание NetBIOS. Он использует порт 137 и обрабатывает запросы от основных браузеров, доменов и серверов WINS (например, когда вы открываете My Network Places в Windows). В Windows 2000 Microsoft перешла к соглашению об именах DNS в рамках своей поддержки Active Directory, чтобы сделать службы имен более согласованными. Вам больше не понадобится nmbd, если вы не собираетесь разрешать очень старым хостам Windows в вашей сети доступ к общим ресурсам Samba.
  • Winbindd — может быть использован для запроса родных серверов Windows , для пользователей и групп информации.

Способ 3: Управление групповой политикой

Отметим, что этот вариант подойдет только владельцам доменов, которые хотят настроить SMBv1 на всех локальных компьютерах. Рядовым пользователям мы не советуем задействовать этот вариант — им лучше остановиться на двух предыдущих.

Способ 3: Управление групповой политикой
Способ 3: Управление групповой политикой
Способ 3: Управление групповой политикой

Остается только заполнить сведения реестра в соответствии с приведенным далее списком

Способ 3: Управление групповой политикой
Способ 3: Управление групповой политикой
Способ 3: Управление групповой политикой
  • Действие: Создать
  • Куст: HKEY_LOCAL_MACHINE
  • Путь раздела: SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
  • Имя параметра: SMB1
  • Тип параметра: REG_DWORD
  • Значение: 1
Способ 3: Управление групповой политикой
Способ 3: Управление групповой политикой
Способ 3: Управление групповой политикой

Настройка файлового сервера в локальной сети на Windows/Linux

В инструкции описан процесс настройки общего файлового сервера для всех пользователей локальной или виртуальной сети с операционными системами Linux и Windows.

Читайте также:  Используем iptables для защиты сервера от DDOS и Flood

Что это такое?

Файловый сервер работает по протоколу SMB/CIFS и позволяет предоставить доступ к общим ресурсам в локальной сети, например, текстовым файлам или сетевым принтерам. Для его развертывания на Windows используются штатные средства ОС, на Linux используется файловый сервер Samba.

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

Создание и настройка частной сети

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

После создания необходимо объединить все машины в единую локальную сеть через панель управления в разделе Сети. В результате серверы получат локальные IP-адреса.

После создания частной сети необходимо настроить сетевые адаптеры на каждом сервере. Об этом можно прочитать в наших инструкциях:

Настройка файлового сервера

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

Настройка файлового сервера на Linux (Debian/Ubuntu)

Для развертывания файлового сервера на системах Linux используется инструмент SAMBA. Ниже перечислены действия по его установке и настройке.

Настройка файлового сервера в локальной сети на Windows/Linux

Прежде всего следует обновить локальную базу пакетов:

apt-get update

Далее установите пакеты из главного репозитория:

apt-get install -y samba samba-client

Создайте резервную копию файла конфигурации Samba:

cp /etc/samba/ /etc/samba/

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

mkdir -p /samba/public

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

cd /samba chmod -R 0755 public

Читайте также:  Фотоаппарат с WI-FI: особенности синхронизации камеры и компьютера

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

mkdir /samba/private

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

groupadd smbgrp

Создайте нужных пользователей с помощью команды useradd:

useradd user1

Добавьте созданных пользователей в группу:

usermod -aG smbgrp user1

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

chgrp smbgrp /samba/private

Задайте пароль, с помощью которого пользователь будет подключаться к каталогу:

smbpasswd -a user1

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

nano /etc/samba/

Настройка файлового сервера в локальной сети на Windows/Linux

Замените содержимое файла на следующие строки:

[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.

Значения параметров выше:

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

testparm -s

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

service smbd restart

Далее нужно настроить firewall, открыв порты, которые использует SAMBA. Настоятельно рекомендуем разрешить только подключения из локального диапазона IP-адресов или виртуальной частной сети. Адресное пространство вашей частной сети вы можете увидеть в панели управления 1cloud.

Замените значение параметра –s в правилах ниже для соответствия адресному пространству вашей частной сети. Как правило префикс сети /24, если вы явно не подразумеваете иного:

Подключение к шаре

Теперь разберем примеры подключения к нашим шарам из разных систем.

Windows

Для разового подключения можно использовать проводник, прописав в нем адрес сервера через косые линии:

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

Читайте также:  Web-сервер на CentOS 7.1 – установка и настройка Apache, PHP и MySQL

В открывшемся окне прописываем путь до сетевой папки и выбираем имя диска:

Сетевой диск настроен.

Но мы может сделать те же действия из командной строки:

net use x: \\\AD ACL /persistent:yes

* где x: — имя сетевого диска; \\\AD ACL — путь до сетевого каталога; persistent:yes — указывает на то, что нужно восстанавливать данный диск каждый раз при входе в систему.

Монтирование

В Linux мы можем монтировать удаленный каталог с помощью команды mount, например:

mount -t cifs «//» /mnt -o user=dmosk

* где  — IP-адрес сервера; mnt — каталог, куда монтируем сетевую шару; dmosk — пользователь, под которым выполняем подключение к сетевому каталогу. ** в систему должен быть установлен пакет cifs-utils.

Подробнее, процесс монтирования описан в инструкции Как в Linux монтировать шару CIFS.

SMB Browser

Также мы можем увидеть содержимое удаленных папок на samba при помощи клиента smb. Для начала установим данного клиента:

а) на Red Hat / CentOS / Fedora:

yum install samba-client

б) на Debian / Ubuntu / Mint:

apt-get install samba-client

После вводим команду:

smbclient -L  -U [email protected]

* где  — сервер samba, к которому мы пытаемся подключиться; [email protected] — учетная запись, под которой выполняется подключение.

… мы получим список каталогов, которые расшарены на сервере.

Также мы можем подключиться к конкретной папке, например:

smbclient \\\\\\ad -U [email protected]

Мы подключимся клиентом samba — можно выполнить запрос на показ содержимого:

smb: \> ls

Или полный список возможных команд:

smb: \> help