1.首先在服务端查看Samba服务的运行状态:
2.新建一个用于访问的测试目录/samba.test:
3.然后修改配置文件/etc/samba/smb.conf进行共享资源的设置,默认时允许所有用户访问:
4.如果客户端时Windows系统,设置项里还要添加“map to guest = Bad User”选项,意在说不将访问的用户映射成匿名用户,建议是写在全局配置项中:
5.配置完配置文件后,可以使用testparm命令来检查配置文件设置项中,语法是否有错误,没错则重启服务以加载配置文件:
6.配置完成后,可以使用Windows客户端用UNC路径来访问Samba服务器:
要注意的是,一般在第一次用UNC路径访问Samba服务器时,会提示错误配置安全策略,我们可以通过修改组策略来解决这个问题:
7.访问Samba服务器成功后,即可根据权限在共享文件内进行操作:
8.我们也可以用Linux作客户端来访问Samba服务器,那么就安装smb-client软件需要通过smbclient命令来Samba服务器,当然也是要用UNC路径:
-L:后跟服务器的IP能列出服务器上的共享资源
-U:可以指定samba用户
9.一般处于安全考虑,实际是不建议采用匿名共享的,首先去配置文件去掉或者添加注释关掉”map to guest = Bad User"这一项,拒绝Windows用户匿名访问,然后关闭“public”这项,拒绝所有客户端来进行匿名访问。
10.因为Samba服务有自己的Samba用户,但是Samba用户不能登录系统,只能用来访问共享的文件,且创建Samba用户,必须要有一个与之对应的系统用户,密码可以不同来保证安全性。
11.smbpassword命令可以对Samba用户进行管理,新建一个samba用户(adm):
12.这样我们从客户端再以匿名方式登录就不行了,需要指定Samba用户:
13.Linux客户端除了以交互方式访问之外,还可以以挂载的方式去访问:
14.Samba权限设置:
除了要再配置文件里添加设置项来设置权限外,还要给用户系统权限,这样才能使权限生效:
writale = yes:允许全部用户写入
write list = 用户名:允许指定的Samba用户写入
valid users = 用户名/组:允许指定的用户访问共享,多个用户之间”,“分隔,指定组时前加@
host allow/deny = IP:允许/拒绝指定的客户端访问,EXCEPT子句还可以将某个网段地址的某个地址去除