本教程解释了在Debian 8(Jessie)上安装Samba文件服务器,以及如何配置它以通过SMB协议共享文件以及如何添加用户。 Samba被配置为独立服务器,而不是域控制器。 在最终的设置中,每个用户都可以通过SMB协议访问自己的主目录,所有用户都有一个具有读/写访问权限的共享目录。
1初步说明
我在这里使用Debian 8系统,主机名为debian.example.com
,IP地址为192.168.1.100
。
我将在本教程中使用nano编辑器来编辑shell上的配置文件。 可以使用命令安装Nano:
apt-get install nano
如果你有一个不同的喜欢的shell编辑器,比如Joe或者vi,那么可以使用它。
要通过Windows工作站的名称使Linux服务器可访问,我将在Windows上的主机文件中添加一行。 在Windows上以管理员身份运行此命令:
notepad C:\Windows\System32\drivers\etc\hosts
并添加如下所示的行:
192.168.1.100 debian.example.com debian
在文件的末尾。 使用服务器IP和主机名替换您为服务器选择的主机名的IP地址。
2安装Samba
以root用户身份连接到shell上的服务器,然后安装Samba软件包:
apt-get install libcups2 samba samba-common cups
将当前smb.conf文件移动到smb.conf.bak:
mv /etc/samba/smb.conf /etc/samba/smb.conf.bak
然后创建一个新的文件smb.conf
文件:
nano /etc/samba/smb.conf
具有以下内容:
[global]
workgroup = WORKGROUP
server string = Samba Server %v
netbios name = debian
security = user
map to guest = bad user
dns proxy = no
将WORKGROUP替换为Windows客户端上使用的工作组名称。 如果您不知道工作组的名称,请在Windows客户端上运行此命令以获取工作组名称:
net config workstation
然后关闭服务器上的Samba配置文件并重新启动Samba:
systemctl restart smbd.service
3添加Samba共享
现在我将添加所有用户都可以访问的共享。
创建用于共享文件的目录,并将组更改为用户
组:
mkdir -p /home/shares/allusers
chown -R root:users /home/shares/allusers/
chmod -R ug+rwx,o+rx-w /home/shares/allusers/
mkdir -p /home/shares/anonymous
chown -R root:users /home/shares/anonymous/
chmod -R ug+rwx,o+rx-w /home/shares/anonymous/
在/etc/samba/smb.conf
文件末尾
添加以下行:
nano /etc/samba/smb.conf
3.1集团份额
这是我们的“用户”组的所有成员可访问和可写的共享。 在smb.conf文件的末尾添加以下配置。
[allusers] comment = All Users path = /home/shares/allusers valid users = @users force group = users create mask = 0660 directory mask = 0771 writable = yes
3.2主目录
如果您希望所有用户能够通过Samba读取和写入其主目录,请将以下行添加到/etc/samba/smb.conf
(确保您注释掉或删除现有的[homes]
部分):
[homes] comment = Home Directories browseable = no valid users = %S writable = yes create mask = 0700 directory mask = 0700
3.3匿名分享
你喜欢有一个共享,你网络中的所有用户都可以写? 要小心,这个共享对网络中的任何人都是开放的,所以只能在本地网络中使用。 添加一个这样的匿名分享:
[anonymous] path = /home/shares/anonymous force group = users
create mask = 0660
directory mask = 0771
browsable =yes writable = yes guest ok = yes
现在我们重新启动Samba:
systemctl restart smbd.service
4添加和管理用户
在这个例子中,我将添加一个名为tom
的用户。 您可以根据需要添加任意数量的用户,以同样的方式,只需用命令中所需的用户名替换用户名tom
。
useradd tom -m -G users
在Linux系统用户数据库中设置tom
的密码。 如果用户tom
不能登录到Linux系统,请跳过此步骤。
passwd tom
- >输入新用户的密码。
现在将用户添加到Samba用户数据库中:
smbpasswd -a tom
- >输入新用户的密码。
现在,您可以使用文件浏览器(地址为\\ 192.168.1.100
或\\ 192.168.1.100 \ tom
for tom
的主目录)使用用户名tom
和所选密码和存储文件从Windows工作站登录在Linux服务器上,在tom
的主目录或公共共享目录中。
5从Windows访问Samba
现在您可以从Windows桌面访问samba共享。 打开命令提示符并输入“ // debian”打开文件资源管理器:
这显示了我们的Samba服务器的份额。
6链接
- Samba: http : //www.samba.org/
- Debian: http : //www.debian.org/