我想谈谈如何使访问文件服务器更加方便。
TL;博士:配置Avahi和WSD以在Windows,MacOS和Ubuntu上的“网络邻居”中显示文件服务器(当然还有其他发行版,但我还没有对其进行测试)。
因此,让我们从Windows开始。
在远古时代,当网络环境中的计算机列表是通过NetBIOS广播形成的时,一切都很简单。
我们开出
smb.conf
了类似的处方local master = yes
并且很高兴。
那些日子已经一去不复返了,直到今天,为了在用户的网络环境中显示我们的文件服务器,您需要对每台计算机进行注册表手动处理,将过时且不安全的SMBv1连接回去,或者接受世界已经改变并开始使用Microsoft建议的WS-Discovery (WSD)。
为何Microsoft决定使用它,而不是使用早先出现并用于MacOS和Linux(又名Bonjour,又名Avahi)的mDNS?
好吧...是微软。
那么,我们需要什么来使WSD工作?
没什么-添加一个存储库,安装WSD守护程序,在配置中进行设置,重新启动服务,实际上就是这样。
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 4BBAE4C69C568C54
echo "deb https://pkg.ltec.ch/public/ $(grep VERSION_CODENAME /etc/os-release | cut -d'=' -f2) main" | tee /etc/apt/sources.list.d/wsdd.list
apt install wsdd
现在让我们对其进行一些更改。
/etc/wsdd.conf
我的配置行如下所示:
WSDD_PARAMS="--shortlog --interface enp3s0 --hostname server --workgroup HOME"
我猜这些参数说明了一切,只是请注意,如果您在域控制器模式下使用Samba,
--workgroup
则应使用--domain
。
好吧,我建议您研究
man wsdd
以及wsdd信息库(还有Debian / Ubuntu以外的发行说明)
让我们通过重新启动服务来完成所有工作:
systemctl restart wsdd.service
并检查某些Vista或更早版本的Windows计算机,我们的服务器出现在网络环境中。
现在是时候到Avahi了。配置完成后,我们的文件服务器将开始在MacOS和Ubuntu中的“网络邻居”中显示。
首先,确保安装了avahi:
apt install avahi-daemon avahi-utils
现在,我们通过它宣布服务器:
nano /etc/avahi/services/smb.service
<?xml version="1.0" standalone='no'?>
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
<name replace-wildcards="yes">%h</name>
<service>
<type>_smb._tcp</type>
<port>445</port>
</service>
<service>
<type>_device-info._tcp</type>
<port>0</port>
<txt-record>model=RackMac</txt-record>
</service>
</service-group>
您还可以查看
/etc/avahi/avahi-daemon.conf
广播,例如将广播限制在一个界面上,但这取决于您。
让我们通过重新启动服务来完成所有操作:
systemctl restart avahi-daemon.service
另外,我将提到以这种方式,您不仅可以宣布Samba,还可以宣布许多其他服务(列表在此处)。
我希望这篇文章可以节省您的时间,并为您的用户增加便利。