samba
- samba简介
- samba访问
-
示例
作业(博客) - samba简介
Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。
在此之前我们已经了解了NFS,NFS与samba一样,也是在网络中实现文件共享的一种实现,但不幸的是,其不支持windows平台,而本章要提到的samba是能够在任何支持SMB协议的主机之间共享文件的一种实现,当然也包括windows。
SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。
SMB协议是C/S型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。
Samba监听端口有:
TCP | UDP |
---|---|
139,445 | 137,138 |
tcp端口相对应的服务是smbd服务,其作用是提供对服务器中文件、打印资源的共享访问。
udp端口相对应的服务是nmbd服务,其作用是提供基于NetBIOS主机名称的解析。
samba进程:
进程
对应
nmbd
对应netbios
smbd
对应cifs协议
winbindd + ldap
//smbpasswd命令:
-a Sys_User //添加系统用户为samba用户并为其设置密码
-d //禁用用户帐号
-e //启用用户帐号
-x //删除用户帐号
[root@localhost ~]# yum -y install samba-*
[root@localhost ~]# useradd tom
[root@localhost ~]# smbpasswd -a tom
New SMB password:
Retype new SMB password:
Added user tom.
Samba安全级别:
Samba服务器的安全级别有三个,分别是user,server,domain
1.关闭防火墙(4步)
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# systemctl disable firewalld
[root@localhost ~]# vim /etc/selinux/config
[root@localhost ~]# setenforce 0
2.安装samba服务(yum install -y samba*)
[root@localhost ~]# yum -y install samba-*
已安装:
samba.x86_64 0:4.8.3-4.el7 samba-client.x86_64 0:4.8.3-4.el7
samba-client-libs.x86_64 0:4.8.3-4.el7 samba-common.noarch 0:4.8.3-4.el7
samba-common-libs.x86_64 0:4.8.3-4.el7 samba-common-tools.x86_64 0:4.8.3-4.el7
samba-krb5-printing.x86_64 0:4.8.3-4.el7 samba-libs.x86_64 0:4.8.3-4.el7
samba-python.x86_64 0:4.8.3-4.el7 samba-winbind.x86_64 0:4.8.3-4.el7
samba-winbind-modules.x86_64 0:4.8.3-4.el7
3.创建samba系统用户并为系统用户设置密码
[root@localhost ~]# smbpasswd -a tom
New SMB password:
Retype new SMB password:
Added user tom.
4、在/etc/samba/smb.conf配置文件下加入指定共享的用户和目录
[root@localhost ~]# vim //etc/samba/smb.conf
[zhangwu]
path=zhangwu
Valid user=tom
write list = tom
5.testparm测试配置是否有语法错误
[root@localhost ~]# testparm
Load smb config files from /etc/samba/smb.conf
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
Processing section "[homes]"
Processing section "[printers]"
Processing section "[print$]"
Processing section "[zhangwu]"
Unknown parameter encountered: "Valid user"
Ignoring unknown parameter "Valid user"
Loaded services file OK.
Server role: ROLE_STANDALONE
6.重启samba服务
[root@localhost ~]# systemctl restart smb
客户端
1.关闭防火墙(4步)
[root@aad ~]# systemctl stop firewalld
[root@aad ~]# systemctl disable firewalld
[root@aad ~]# vim /etc/selinux/config
[root@aad ~]# setenforce 0
2.安装samba客户端(yum install -y samba-client)
[root@aad ~]# yum install -y samba-client
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
sss | 3.6 kB 00:00:00
正在解决依赖关系
已安装:
samba-client.x86_64 0:4.8.3-4.el7
作为依赖被安装:
avahi-libs.x86_64 0:0.6.31-19.el7 cups-libs.x86_64 1:1.6.3-35.el7
libarchive.x86_64 0:3.1.2-10.el7_2 libldb.x86_64 0:1.3.4-1.el7
libsmbclient.x86_64 0:4.8.3-4.el7 libtalloc.x86_64 0:2.1.13-1.el7
libtdb.x86_64 0:1.3.15-1.el7 libtevent.x86_64 0:0.9.36-1.el7
libwbclient.x86_64 0:4.8.3-4.el7 samba-client-libs.x86_64 0:4.8.3-4.el7
samba-common.noarch 0:4.8.3-4.el7 samba-common-libs.x86_64 0:4.8.3-4.el7
3、查看服务器端的共享资源smbclient -L host -U user(系统用户)
[root@aad ~]# smbclient -L 192.168.50.141 -U tom
Enter SAMBA\tom's password:
Sharename Type Comment
--------- ---- -------
print$ Disk Printer Drivers
zhangwu Disk
IPC$ IPC IPC Service (Samba 4.8.3)
tom Disk Home Directories
Reconnecting with SMB1 for workgroup listing.
Server Comment
--------- -------
Workgroup Master
--------- -------
4.创建挂载目录站点
5、挂载
Mount -t cifs //ip/共享名 挂载目录 -o 系统用户名和密码
[root@aad ~]# mkdir /opt/qqq
[root@aad ~]# mount -t cifs //192.168.50.141/zhangwu /opt/qqq -o username=tom,password=1
```
6.验证
[root@localhost zhangwu]# ls
1 2
[root@localhost zhangwu]# chmod -R 777 /opt/zhangwu/
[root@localhost zhangwu]# ls
1 2 aba
[root@aad qqq]# ls
1 2
[root@aad qqq]# touch aba
[root@aad qqq]# ls
1 2 aba
[root@aad qqq]#