<a name="top"></a>

Настройка отображения Linix-машины в сетевом окружении Windows

Экспорт в PDF

Дата создания: 2023/07/28 14:03 (C) mihanik

<a href='javascript:history.back();'><img src=/lib/exe/fetch.php/level_up.png height=35 width=50></a>

Дано

ПК под управлением ОС Linux семейства CentOS, Fedora, RHEL (Centos 7 и старше), который выполняет роль файлового сервера, и на котором настроен сетевой доступ к файлам посредством протокола samba.

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

Надо

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

Решение

НИКОГДА!!! Никогда не подавайте команды компьютеру, которые вы сами не до конца понимаете!!!

Лирическое отступление.

SAMBA - это протокол, который используют компьютеры, которые работают под управлением ОС Windows. Ранние версии ОС Windows по умолчанию используют протокол SMB1, более поздние SMB2, SMB3, SMB 4... Самое интересное, что от версии к версии samba менялся механизм обнаружения компьютеров в локальной сети.

В младших версиях (Windows XP, Windows 7 и т.п.) по умолчанию использовался протокол SMB1, соответственно, для обнаружения компьютеров в сети использовался NetBIOS и mDNS. В более старших версиях использование использование NetBIOS и mDNS не приветствуется, поэтому Microsoft перешёл на использование WSD.

Веб-службы для устройств (WSD) — это API Microsoft, позволяющий программировать подключения к устройствам с поддержкой веб-служб, таким как принтеры, сканеры и общие файловые ресурсы. Он служит заменой старых сетевых функций Windows, таких как NetBIOS.

Мы постараемся настроить наш сервер так, чтобы он отображался в сетевом окружении компьютеров, которые работают под управлением ОС Windows от XP до 10.

Шаг 0

Открываем терминал.

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

При помощи команды

sudo su

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

Шаг 1

Настроим на нашем сервере возможность использования NetBIOS и mDNS.

Сначала установим и запустим сервис Avahi

Avahi во многом базируется на реализации протокола mDNS.
yum -y install avahi avahi-tools avahi-ui-tools systemctl enable avahi-daemon systemctl start avahi-daemon systemctl status avahi-daemon

И откроем порты mDNS в межсетевом экране

firewall-cmd --permanent --add-service=mdns firewall-cmd --add-port=5353/udp --permanent firewall-cmd --add-port=53791/udp --permanent firewall-cmd --reload

Также не забудем открыть в межсетевом экране порты NetBIOS

firewall-cmd --add-port=137/tcp --permanent firewall-cmd --add-port=138/tcp --permanent firewall-cmd --add-port=139/tcp --permanent firewall-cmd --add-port=137/udp --permanent firewall-cmd --add-port=138/udp --permanent firewall-cmd --add-port=139/udp --permanent firewall-cmd --reload

Шаг 2

Теперь установим и запустим WSD.

yum -y install wsdd systemctl enable wsdd.service systemctl start wsdd.service systemctl status wsdd.service

Не забудем открыть порты, которые использует WSD

firewall-cmd --add-port=3702/udp --permanent firewall-cmd --add-port=5357/tcp --permanent firewall-cmd --reload

Это всё. Теперь ваш файловый сервер должен отображаться в сетевом окружении Windows.

PS.

Иногда при запуске wsdd.service может появится ошибка:

systemctl start wsdd.service Job for wsdd.service failed because of unavailable resources or another system error. See "systemctl status wsdd.service" and "journalctl -xeu wsdd.service" for details.

Вопрос решается просто, - нужно создать отсутствующий файл wsdd в папке /etc/default.

touch /etc/default/wsdd
Пояснение.В описании юнита wsdd.service используется переменная EnvironmentFile со следующим значением EnvironmentFile=/etc/default/wsdd

⇑ Наверх ⇑

В моей WIKI постоянно ведётся какая-то работа со статьями. Если у вас возникли вопросы или замечания, можете их отправлять на почту support@mihanik.net