千家信息网

SMB文件共享——实验篇

发表于:2025-01-22 作者:千家信息网编辑
千家信息网最后更新 2025年01月22日,实验环境:RHEL7.0服务器 server1.example.com 172.25.254.1客户端 server2.example.com 172.25.254.21.安装配置SMB1.1安装[r
千家信息网最后更新 2025年01月22日SMB文件共享——实验篇

实验环境: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身份运行


0