实验环境:RHEL7.0
服务器 server1.example.com 172.25.254.1
客户端 server2.example.com 172.25.254.2
1.安装配置SMB
1.1安装
[root@server1 ~]# yum install samba samba-client -y
[root@server1 ~]# systemctl start smb
[root@server1 ~]# systemctl enable smb
1.2配置火墙策略
[root@server1 ~]# firewall-cmd –permanent –add-service=samba
[root@server1 ~]# firewall-cmd –permanent –add-service=samba-client
[root@server1 ~]# firewall-cmd –reload
1.3添加smb用户
[root@server1 ~]# useradd willis ##创建用户
[root@server1 ~]# useradd student
[root@server1 ~]# smbpasswd -a willis ##新建为smb用户并加密
New SMB password:
Retype new SMB password:
Added user willis.
[root@server1 ~]# smbpasswd -a student
New SMB password:
Retype new SMB password:
Added user student.
[root@server1 ~]# pdbedit -L
willis:1001:
student:1002:
[root@server1 ~]# smbclient -L //172.25.254.1 -U student
Enter student’s password:
Domain=[MYGROUP] OS=[Unix] Server=[Samba 4.1.1]
Sharename Type Comment
——— —- ——-
IPC$ IPC IPC Service (Samba Server Version 4.1.1)
student Disk Home Directories
Domain=[MYGROUP] OS=[Unix] Server=[Samba 4.1.1]
Server Comment
——— ——-
Workgroup Master
——— ——-
[root@server1 ~]# smbclient //172.25.254.1/student -U student
Enter student’s password:
Domain=[MYGROUP] OS=[Unix] Server=[Samba 4.1.1]
smb: /> ls
. D 0 Thu Sep 22 18:33:14 2016
.. D 0 Thu Sep 22 18:33:14 2016
.mozilla DH 0 Thu Aug 4 23:45:35 2016
.bash_logout H 18 Wed Jan 29 20:45:18 2014
.bash_profile H 193 Wed Jan 29 20:45:18 2014
.bashrc H 231 Wed Jan 29 20:45:18 2014
34808 blocks of size 262144. 22711 blocks available
smb: /> quit
2. 改共享目录
2.1 自建目录
[root@server1 ~]# mkdir /share
[root@server1 ~]# vim /etc/samba/smb.conf
[test]
comment = test share
path = /share
[root@server1 ~]# touch /share/file
[root@server1 ~]# smbclient //172.25.254.1/test -U willis
Enter willis’s password:
Domain=[MYGROUP] OS=[Unix] Server=[Samba 4.1.1]
smb: /> ls
. D 0 Thu Sep 22 20:15:26 2016
.. D 0 Thu Sep 22 18:41:38 2016
file N 0 Thu Sep 22 20:15:26 2016
34808 blocks of size 262144. 22696 blocks available
smb: />
2.2共享系统目录
[root@server1 ~]# vim /etc/samba/smb.conf
[test]
comment = test share
path = /mnt
[root@server1 ~]# ls /mnt/
[root@server1 ~]# touch /mnt/file1
[root@server1 ~]# smbclient //172.25.254.1/test -U willis
Enter willis’s password:
Domain=[MYGROUP] OS=[Unix] Server=[Samba 4.1.1]
smb: /> ls
. D 0 Thu Sep 22 20:18:31 2016
.. D 0 Thu Sep 22 18:41:38 2016
file1 N 0 Thu Sep 22 20:18:31 2016
34808 blocks of size 262144. 22696 blocks available
smb: />
3. 改工作组
[root@server1 ~]# smbclient -L //172.25.254.1 -U willis
Enter willis’s password:
Domain=[MYGROUP] OS=[Unix] Server=[Samba 4.1.1]
Sharename Type Comment
——— —- ——-
test Disk test share
IPC$ IPC IPC Service (Samba Server Version 4.1.1)
willis Disk Home Directories
Domain=[MYGROUP] OS=[Unix] Server=[Samba 4.1.1]
Server Comment
——— ——-
Workgroup Master
——— ——-
[root@server1 ~]#
[root@server1 ~]# vim /etc/samba/smb.conf
workgroup = willis
[root@server1 ~]# smbclient -L //172.25.254.1 -U willis
Enter willis’s password:
Domain=[WILLIS] OS=[Unix] Server=[Samba 4.1.1]
Sharename Type Comment
——— —- ——-
test Disk test share
IPC$ IPC IPC Service (Samba Server Version 4.1.1)
willis Disk Home Directories
Domain=[WILLIS] OS=[Unix] Server=[Samba 4.1.1]
Server Comment
——— ——-
Workgroup Master
——— ——-
[root@server1 ~]#
4. 允许/拒绝访问服务的主机设置
[root@server1 ~]# vim /etc/samba/smb.conf (随改立即生效)
hosts deny = 172.25.254.2
测试:
[root@server2 ~]# smbclient -L //172.25.254.1 -U willis
Enter willis’s password:
protocol negotiation failed: NT_STATUS_INVALID_NETWORK_RESPONSE
5.客户端挂载使用
RHEL6 可匿名登陆并挂载(share级别)
RHEL 7 不能匿名挂载
服务器端:
[root@server1 ~]# vim /etc/samba/smb.conf
security = user
passdb backend = tdbsam
map to guest = bad user #添加此句
[test]
comment = test share
path = /share
guest ok = yes #添加此句
[root@server1 ~]# systemctl restart smb.service
客户端:
[root@server2 mnt]# mount //172.25.254.1/test /mnt -o username=willis,password=redhat
[root@server2 mnt]# df -h
//172.25.254.1/test 8.5G 3.0G 5.6G 35% /mnt
常用参数
[test]
Guest ok = yes # 匿名用户可登陆
Browseable = no #隐藏共享
Writable = yes #允许所有用户写入
Weite list = student #只允许student写入
Write list = +student
Write list = @student #允许student用户组写入 +和@功能一样
Valid users = +student #test这个组只能student用户组使用
Admin users = student # student是以root身份运行
原创文章,作者:3628473679,如若转载,请注明出处:https://blog.ytso.com/182824.html