一、安装相关软件
[root@mail ~]# yum install samba samba-client -y #安装相关软件
二、配置匿名访问
[root@mail ~]# cd /etc/samba/
[root@mail samba]# cp smb.conf smb.conf-bak #备份配置文件
[root@mail samba]# vim smb.conf
[global] #全局配置
workgroup = LinuxSir #就是Windows中显示的工作组
netbios name = LinuxSir05 #就是在Windows中显示出来的计算机名
server string = Linux Samba Server TestServer #就是Samba服务器说明,可以自己来定义;这个不是什么重要的;
security = share #这是验证和登录方式,这里我们用了share
[public] #共享名称
path = /mnt/public #共享的目录
writeable = yes #是否有写权限
browseable = yes #是否可以被浏览
guest ok = yes #匿名用户是否可以访问
[root@mail samba]# mkdir /mnt/public
[root@mail samba]# chown nobody:nobody -R /mnt/public/ #匿名访问的用户都是nobody权限,所以共享目录需要授权
[root@mail samba]# testparm #检查Samba 配置文件是否有语法错误
[root@mail samba]# /etc/init.d/smb start
注意事项:
如果使用的版本为Samba4,那么samba4较之前的SAMBA 3有一个重大的变化是:security不再支持share,参数需要做调整,否则会有警告,服务无法启动
查看版本信息:
smbd -V
告警消息:
Load smb config files from /etc/samba/smb.conf
WARNING: Ignoring invalid value 'share' for parameter 'security'
Error loading services.
修改步骤:
security=share
现在: #在global中添加
security=user
map to guest =Bad User
三、使用windows访问,测试
1.在文件夹或Ctrl+R中输入Samba服务器地址并回车(192.168.1.100是我Samba服务器地址)
如果使用windows10,可能出现如下报错:
解决方法:http://www.xitongcheng.com/jiaocheng/win10_article_38440.html
可以看到有个public目录
我们再尝试添加删除文件
没有问题,匿名访问配置成功
四、配置用户认证访问
1.修改配置文件,添加如下字段
[root@mail samba]# vim smb.conf
....
[test_dir]
path = /mnt/test_dir
writeable = yes
browseable = yes
security = user #配置需要认证才能登陆
valid users = test #指定哪些有效用户可以访问,如果有多个可以指定组,使用@+groupname即可
passdb backend = smbpasswd #使用Samba自己的smbpasswd工具来给系统用户设置Samba密码
#smb passwd file = /etc/samba/smbpasswd #定义Samba用户的密码文件,Samba3.5.6后已经取消该配置,无需配置了
2.添加用户、目录并授权
[root@mail samba]# useradd test #创建一个系统用户,由于不要登录,不需要创建密码
[root@mail samba]# smbpasswd -a test #创建Samba密码
New SMB password:
Retype new SMB password:
Added user test.
[root@mail samba]# mkdir /mnt/test_dir #创建共享目录
[root@mail samba]# chown test:test -R /mnt/test_dir #赋权
3.重启服务
[root@mail samba]# /etc/init.d/smb restart
关闭 SMB 服务: [确定]
启动 SMB 服务: [确定]
4.再次使用Windows进行访问测试
可以看到出现了两个目录,新的目录就是刚刚配置的test_dir,我们点击test_dir目录
输入我们刚刚添加用户的账号和密码,按需选择是否记住我的凭据(如果选择,以后会直接登录不会再要求填写账号密码,缺点是当Samba服务器账号密码变动时会报错,需要进行其他设置,见最后)
登录成功,在试试添加和删除文件
到此,用户认证配置完成
五、Windows下如何清除samba用户的登录状态
1.登录Windows命令行
执行net use命令查看当前正在使用的网络连接
删除我们想要删除的网络连接
"一劳永逸" 的话,有是有的,而 "一劳永逸" 的事却极少