简单的问题:我家里有一个 NATed Linux,它承载了几个 samba 共享。我应该将哪些端口从路由器转发到 Linux 机器,以便能够使用 Windows 资源管理器(类似于“\my.dyndns.org\shares\xxx”样式)从 Internet 访问这些共享?我希望我应该在路由器配置中执行的最少端口打开数具有读/写功能。
编辑:客户端机器是一台 Vista
我有一个 Drobo-FS,通过 DroboApps 安装了 DropBear,它允许我通过 SSH 访问为 Drobo-FS 提供动力的 Linux 操作系统。
Drobo-FS 文件系统有一个如下所示的目录
# ls /mnt/DroboFS/System
DNAS avahi netatalk samba
Run Code Online (Sandbox Code Playgroud)
列出的每个目录中都有一个conf或类似的目录,对我来说,samba,netatalk和avahiconf 文件都显示Input/ouput error
# ls /mnt/DroboFS/System/samba/conf
ls: /mnt/DroboFS/System/samba/conf/scratch.smb.conf: Input/output error
ls: /mnt/DroboFS/System/samba/conf/smb.conf: Input/output error
# ls /mnt/DroboFS/System/netatalk/conf
ls: /mnt/DroboFS/System/netatalk/conf/afpd.conf: Input/output error
ls: /mnt/DroboFS/System/netatalk/conf/AppleVolumes.default: Input/output error
# ls /mnt/DroboFS/System/avahi/conf
ls: /mnt/DroboFS/System/avahi/conf/scratch.avahi-daemon.conf: Input/output error
avahi-daemon.conf
Run Code Online (Sandbox Code Playgroud)
我已经读到这种行为表明硬盘驱动器故障或电缆松动(我假设将驱动器连接到控制器。)但是这不是一个普通的 Linux 机器,所以我的第一个问题是
/mnt/DroboFS/System 存储在什么设备上。我认为它不能位于任何托架中的硬盘驱动器上,因此必须位于其他内部驱动器或闪存上。如果是这样,这是否意味着我的 Drobo-FS 有问题?
还必须问一个问题:为什么只有配置文件受到影响?
或者这个问题会更深吗?
此外,任何拥有 Drobo-FS 和固件版本 1.2.0 的人都可以提供以下文件的版本吗?
/mnt/DroboFS/System/samba/conf/smb.conf
/mnt/DroboFS/System/netatalk/conf/afpd.conf …Run Code Online (Sandbox Code Playgroud) 我们有几个运行 Samba 的 Linux 机器在“本地”使用,例如每个分支都有自己的 Samba 机器来存储和共享文件。
办公室经理需要能够为其分支机构添加和删除用户,并且需要成为此操作的 root (afaik),但我想限制他们发出任何其他 root 特权命令,因为我们经常搞砸他们的身边。
我的(有限的)linux 知识告诉我这是不可能的 - 你要么是 root,要么不是 - 但我想知道是否有办法以某种方式限制允许的命令。
我有一个家庭网络设置,其中一台台式 PC、两台笔记本电脑和一台 ubuntu 服务器台式机都连接到路由器 (DD-WRT)。我想在单独的子域上设置 ubuntu 服务器(安全原因:我有网站进入服务器),但我也想访问我安装在服务器上的备份驱动器。我知道我可以在 Ubuntu 上设置一个 FTP 服务器,但我想知道我是否会在以这种方式传输时失去速度。有人知道我可以使用的解决方案吗?
Windows 7 不会在启动时重新连接到我的网络驱动器。
完成启动后,打开 Windows 资源管理器并单击每个共享将安装它们。
Windows 7 企业 N 服务包 1
我尝试格式化 Windows 机器 - 对机器做的第一件事是映射网络驱动器,重新启动后它们断开连接。它在Crucial M4 64gb SSD上运行。
网络共享的主机是一台通过千兆交换机连接的 Ubuntu-Server 机器。调制解调器提供 dhcp,尽管这两台机器都定义了静态 IP。
无论驱动器是 SAMBA 共享还是 NFS 共享,它都不会重新连接驱动器 - 因此我认为这是 Windows 机器的问题。
Ubuntu 11.10 (GNU/Linux 3.0.0-12-server x86_64)
我尝试使用 ip 地址而不是 netbios 名称来映射 Windows 机器上的共享,
还尝试设置 EnableLinkedConnections=1
gpedit.msc > 计算机配置 - 管理模板 - 系统登录 - always wait for the network at computer startup and logon = yes
我的家庭设置有一个 Linux 服务器,它提供多个共享,每个共享都有不同的用户和密码。
即:公共,用户1,用户2
我可以通过\\server\public用户和密码单独连接到我的共享。
但是,一旦我输入了其中一个共享的凭据,我似乎无法访问同一台机器上的任何其他共享。
有没有解决的办法?
我有一个 Ubuntu 14.04 服务器,它向 Windows 机器公开了一个 samba 共享。当我连接到共享并使用记事本创建文件时,权限受到尊重并且文件不会变为可执行文件。但是,当我使用 Visual Studio 编辑文件时,每次保存它们时,都会打开可执行位。一些谷歌搜索发现了一个线程,该线程将 wb 文件打开模式与 windows 上的存档属性链接起来,因此在 Linux 上执行 bit。
但是,鉴于我的配置,情况不应该如此。
read only = no
acl allow execute always = no
acl map full contorl = False
map archive = no
map system = no
map hidden = no
create mask = 0664
force create mode = 0664
directory mask = 02775
force directory mask = 02775
inherit permissions = False
Run Code Online (Sandbox Code Playgroud)
如果可能的话,我想配置 samba,以便它只保留执行权限 - 期间。
使用 samba 4.1.17-Debian 我尝试了以下 smb.conf 条目来将 samba 绑定到链接本地 ipv6 地址
interfaces = fe80::d270:36a5:ac03:37ea%br0 fe80::/10 ::1
bind interfaces only = yes
Run Code Online (Sandbox Code Playgroud)
但使用 netstat 检查只显示 smbd 监听 ::1
该手册指出,除了可以指定接口名称地址或地址+掩码外,还可以指定任何一种方法。
更新配置:
# ip addr show dev br0 | grep -c fe80
1
# smb.conf
bind interfaces only = yes
interfaces = 192.168.0.0/16 ::1 127.0.0.1 fe80::%br0/64
# smbd --version
Version 4.5.12-Debian
# netstat -lnp | grep smb
tcp 0 0 192.168.0.3:139 0.0.0.0:* LISTEN 17048/smbd
tcp 0 0 127.0.0.1:139 0.0.0.0:* LISTEN 17048/smbd
tcp 0 0 …Run Code Online (Sandbox Code Playgroud) 我有一个 Samba 服务器(它是域控制器)和一个 Ubuntu 14.04 客户端,其登录用户通过 Kerberos 进行身份验证(客户端通过 Likely 加入域)。用户想要使用以下命令访问网络共享:
mount.cifs //DOMAIN/PATH /HOME/USER/PATH -o sec=krb5
但是使用(或不使用)'sec' 参数,mount 命令会提示输入密码。如果我输入密码,我可以挂载共享,但我想在没有密码的情况下挂载。
如何使用我的有效 Kerberous 票证进行操作?
我尝试在 Windows 10 中使用 Powershell 命令断开 smb 共享:
net use * /delete
Run Code Online (Sandbox Code Playgroud)
但是,此命令不起作用,因为共享未显示为net use。输出是There are no entries in the list.
Get-SmbConnection显示了我期望的结果,
ServerName ShareName UserName Credential Dialect NumOpens
---------- --------- -------- ---------- ------- --------
FILESERVER extra xxx\xxxxx xxx\xxxxx 3.0 1
FILESERVER home xxx\xxxxx xxx\xxxxx 3.0 1
FILESERVER IPC$ xxx\xxxxx xxx\xxxxx 3.0 0
FILESERVER public xxx\xxxxx xxx\xxxxx 3.0 2
Run Code Online (Sandbox Code Playgroud)
但我不知道如何断开与此信息的共享。
我的问题的原因:我想编写一个批处理脚本,在注销后断开所有网络共享与 PC 的连接(例如 Win+L 键)。在 Windows 7 和 8 上,我使用上述net use * /delete命令,该命令在 Windows 10 上不起作用,如上所示。SMB …
samba ×10
linux ×4
ubuntu ×2
windows-7 ×2
credentials ×1
debian ×1
drobo ×1
ftp ×1
hard-drive ×1
ipv6 ×1
kerberos ×1
mount ×1
permissions ×1
ports ×1
powershell ×1
root ×1
smb ×1
su ×1
windows ×1
windows-10 ×1