前言
Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构。
SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它
为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。SMB协议是客户机/服务器型协议,
客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。通过设置“NetBIOS over TCP/IP”使得Samba不但能与局域网络主机分享资源,还能与全世界的电脑分享资源。
一:Samba的用途
分享档案与打印机服务
可以提供用户登入Samba主机时的身份认证,以提供不同身份者的个别数据。
可以进行windows网络上的主机名解析
可以进行装置的分享
二:Samba实战
2.1:实验目的
服务器和客户端共享文件
2.2:实验环境
两台虚拟机,一台作为客户端,一台为服务端
关闭两台服务器的火墙服务(服务端需要关闭,客户端可以选择不关闭)
2.3:实验配置
服务器:
[root@localhost ~]# mount /dev/sr0 /mnt/
[root@localhost ~]# df -Th
[root@localhost ~]# yum install -y dhcp
[root@localhost ~]# cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
cp:是否覆盖"/etc/dhcp/dhcpd.conf"? y
[root@localhost ~]# vim /etc/dhcp/dhcpd.conf
[root@localhost ~]# systemctl restart dhcpd
客户端
切换到windows 7主机上,选择dhcp
服务器
[root@localhost ~]# yum install samba -y
[root@localhost ~]# cd /etc/samba
[root@localhost samba]# ls
lmhosts smb.conf smb.conf.example
[root@localhost samba]# mv smb.conf smb.conf.bak
[root@localhost samba]# ls
lmhosts smb.conf.bak smb.conf.example
[root@localhost samba]# grep -v "#" smb.conf.bak > smb.conf
[root@localhost samba]# vim smb.conf
[root@localhost samba]# mkdir /opt/kevin
[root@localhost samba]# ls -l /opt
[root@localhost samba]# chmod 777 /opt/kevin/ 给权限
[root@localhost samba]# setenforce 0
[root@localhost samba]# systemctl stop firewalld.service
[root@localhost samba]# systemctl restart smb.service
[root@localhost samba]# netstat -antp
[root@localhost samba]# cd /opt/kevin/
[root@localhost kevin]# touch ky.txt
[root@localhost kevin]# ll
总用量 0
-rw-r--r--. 1 root root 0 7月 18 12:12 ky.txt
[root@localhost kevin]# echo "ab123" > ky.txt
[root@localhost kevin]# cat ky.txt
ab123
[root@localhost kevin]# ls -l
总用量 4
-rw-r--r--. 1 root root 6 7月 18 12:13 ky.txt
[root@localhost kevin]# id nobody
uid=99(nobody) gid=99(nobody) 组=99(nobody)
[root@localhost kevin]# vim /etc/samba/smb.conf
[root@localhost kevin]# cd ..
[root@localhost opt]# ls
1.sh 2.sh hosts.txt kevin passwd ping.sh stu.sh useradd.sh user.txt
[root@localhost opt]# mkdir test
[root@localhost opt]# cd test/
[root@localhost test]# ll
总用量 0
[root@localhost test]# chmod 777 /opt/test/
[root@localhost test]# useradd zhangsan
[root@localhost test]# useradd lisi
[root@localhost test]# smbpasswd -a zhangsan
New SMB password:
Retype new SMB password:
Added user zhangsan.
[root@localhost test]# smbpasswd -a lisi
New SMB password:
Retype new SMB password:
Added user lisi.
[root@localhost test]#
[root@localhost test]# pdbedit -L 查看samba用户
zhangsan:1026:
lisi:1027:
[root@localhost opt]# systemctl restart smb.service
客户端
切换到window 7
zhangsan用户可以写入,但lisi用户没有权限。
有兴趣的小伙伴可以换成zhangsan用户登录,进行写入文件。