Samba简介
Samba是一个实现不同操作系统(Windows、Linux、UNIX)之间文件共享和打印机共享的一种SMB协议的免费软件。SMB协议是客户机/服务器协议,客户机通过该协议可以访问服务器上的共享文件及打印机共享资源。它主要应用于局域网上,也可以通过设置“NetBIOS over TCP/IP”同互联网中的电脑分享资源。
Samba服务的配置
服务端设置
安装samba服务
yum install -y samba-client.x86_64(提供测试服务,相当于登陆页面) samba-common.x86_64(提供管理命令) samba.x86_64
(提供samba服务的主命令)
systemctl start smb
开启服务
systemctl status smb
netstat -antlupe | grep smb
查看端口
firewall-cmd --list-all
firewall-cmd --permanent --add-service=samba
#防火墙添加samba服务
firewall-cmd --permanent --add-service=samba-client
firewall-cmd --reload
添加用户,必须是本地用户
pdbedit -L #列出samba用户列表,读取passdb.tdb数据库文件
cd /home/
ls
useradd westos # 添加用户
useradd lee #添加用户
smbpasswd -a lee # 把本地用户lee添加到sam服务器上
New SMB password: #设置用户samba用户登陆时的密码,此密码与本地用户的密码无关
Retype new SMB password:#验证密码
Added user lee.
smbpasswd -a westos #同上
New SMB password:
Retype new SMB password:
Added user westos.
pdbedit -L #查看sam中的所有用户
lee:1002:
westos:1001:
pdbedit -x lee #删除samba中的lee用户
客户端测试:
ssh root@172.25.254.210 -X 远程连接另一个虚拟机
yum install samba-client.x86_64 -y
smbclient -L //172.25.254.142 ,匿名用户登陆,并查看信息,-L:查看共享目录的列表
smbclient -L //172.25.254.142 -U linux # 指定linux用户登陆,-U表示指定用户
smbclient //172.25.254.142/linux -U linux #登陆共享服务端,查看共享用户的家目录信息时发现被拒绝,
排错:
在服务端排错:
1、selinux被打开,与samba服务发生了冲突
2、getsebool -a | grep samba
setsebool -P samba_enable_home_dirs on # 打开home目录即可·
成功登陆
Enter westos’s password: 输入westos的密码
Domain=[MYGROUP] OS=[Unix] Server=[Samba 4.1.1]
Sharename Type Comment
--------- ---- -------
IPC$ IPC IPC Service (Samba Server Version 4.1.1)
westos Disk Home Directories //添加的家目录
Domain=[MYGROUP] OS=[Unix] Server=[Samba 4.1.1]
Server Comment
--------- -------
Workgroup Master
--------- -------
smbclient //172.25.254.110/westos -U westos 取消列表
Enter westos’s password:
Domain=[MYGROUP](域) OS=[Unix]() Server=[Samba 4.1.1](服务)
smb: > !ls 查看本地文件
anaconda-ks.cfg Documents icmp_echo_ignore_alz~ Public
Desktop Downloads Music Templates
diskpass icmp_echo_ignore_all~ Pictures Videos
smb: > put anaconda-ks.cfg 上传文件
putting file anaconda-ks.cfg as \anaconda-ks.cfg (280.6 kb/s) (average 280.6 kb/s)
smb: > quit
mount //172.25.254.142/westos /mnt -o username=westos,password=westos 把服务端用户挂载在/mnt下,方便共享用户进行管理
cd /mnt/
ls
rm -fr put anaconda-ks.cfg
ls
touch file{1…2}
rm -fr file{1…2}
在服务端westos用户家目录查看
cd /home/westos
ls
Samba的访问控制
1、域名修改
在服务端操作
rpm -qc samba-common 查看samba的配置文件
[root@client mnt]# smbclient -L //172.25.254.142/linux -U linux # 查看到域名为MYGROUP