![Samba 服务器跨两个子网共享文件](https://linux22.com/image/222617/Samba%20%E6%9C%8D%E5%8A%A1%E5%99%A8%E8%B7%A8%E4%B8%A4%E4%B8%AA%E5%AD%90%E7%BD%91%E5%85%B1%E4%BA%AB%E6%96%87%E4%BB%B6.png)
我在两个子网之间设置 Samba 服务器时遇到一些问题;
我有一个包含 Samba 服务器的子网,该局域网中的每台计算机都可以访问这些文件。但现在我在另一个带有子网的地方有另一台服务器,我希望此 Server2 子网中的计算机访问 Server1 中 Samba 中的文件。这些服务器通过 OpenVPN 连接进行连接,并且共享一台 Cups 服务器,都是 Debian 5.10 服务器,双方都可以 ping 通并且能够识别对方。
所以我的 smb.conf 看起来像这样:
[global]
netbios name = MY_SERVER
server string = Compartilhamento
workgroup = MY_GROUP
security = user
map to gues = Bad User
wins support = yes
dns proxy = no
os level = 100
auto services = global
name resolve order = lmhosts, host, wins, bcast
cups options = raw
load printers = yes
interfaces = lo eth1 192.168.1.0/24
hosts allow = 127. 192.168.1. 192.168.10.
passdb backend = tdbsam
ntlm auth = yes
preferred master = yes
domain master = yes
logon path = %Nprofile%u
invalid users = root
server min protocol = NT1
在hosts allow
我放置了两个子网。 Server1 是 192.168.1。 Server2 是 192.168.10。当我尝试使用此命令通过 smbclient 登录时:
smbclient -d3 -U "MY_GROUP/user" //192.168.1.3/share
我收到此错误:
lp_load_ex: refreshing parameters
Initialising global parameters
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
Processing section "[global]"
added interface enp11s0 ip=192.168.2.253 bcast=192.168.2.255 netmask=255.255.255.0
added interface enp12s2 ip=192.168.10.3 bcast=192.168.10.255 netmask=255.255.255.0
Client started (version 4.13.13-Debian).
Connecting to 192.168.1.3 at port 445
Connecting to 192.168.1.3 at port 139
protocol negotiation failed: NT_STATUS_INVALID_NETWORK_RESPONSE
或者当我尝试在 Server2 中安装 Samba 服务器时,mount -t cifs -o username=user,vers=1.0,sec=ntlmssp //192.168.1.3/share /mnt/
它会返回
mount: /mnt: a chamada de sistema de mount(2) falhou: Host está desligado.
我不知道如何连接服务器。我必须在 Server2 中安装 Samba 吗?我失去了什么吗?
我看到 2 个帖子看起来像我的问题,但它们根本没有帮助,它们是 Samba 跨两个子网共享和装载 CIFS 主机已关闭
我在中问了同样的问题服务器故障但我没有得到答案,所以我在这里问。
答案1
https://www.oreilly.com/openbook/samba/book/ch04_06.html
Interfaces 选项概述了您希望 Samba 服务器识别和响应的网络地址。如果您的计算机驻留在多个网络子网上,则此选项会很方便。如果未设置此选项,Samba 将在启动时搜索服务器的主网络接口(通常是第一个以太网卡),并将自身配置为仅在该子网上运行。如果服务器配置为多个子网并且您没有指定此选项,则 Samba 将仅在它遇到的第一个子网上工作。您必须使用此选项强制 Samba 为网络上的其他子网提供服务。
看起来您的interfaces
行smb.conf
缺少其他子网的声明。它应该读成类似的内容interfaces eth1 192.168.0.3/24 192.168.10.1/24
有关接口示例,请参阅 samba 手册页: https://www.samba.org/samba/docs/current/man-html/smb.conf.5.html
还要注意hosts allow
和,hosts deny
因为smb.conf
输入不正确可能会导致拒绝。除了任何防火墙设置外,我建议初学者不要hosts allow | deny
指定任何一项,这样它就会允许所有防火墙,并禁用防火墙,直到它正常工作,然后一步一步重新应用这些安全项目,这样您就知道如果它停止工作该纠正什么。