Samba 基础配置.note
- 前言:
1.
安装 samba 服务:
服务器:apt install samba -y
客户端:apt install samba-client- 启动服务:
1.
Samba 服务名为:smbd
systemctl start smbd- 配置 Samba 共享目录(文件夹):
1.
Samba 主配置文件位于:/etc/samba/smb.conf· 进行配置前先将 主配置文件 进行一次备份:
cd /etc/samba
cp smb.conf smb.conf.bak1、创建一个简单的 共享目录:
vim smb.conf
:G //vim快捷键
o //vim快捷键
# 进行输入:
[share] //定义共享目录名称(显示名称)
path = /samba/share
//定义共享目录在 Linux上的 真实物理路径
read only = yes //只读,匿名用户只拥有只读权限
# read only = no //关闭了 只读,就可以不用定义下面的 write list
# guest ok = yes //定义允许匿名用户进行访问
valid users = zhangsan, lisi //定义允许访问的用户,用逗号分格(只有读取权限)
read list = guest //定义只读用户(如果 read only = no 则可以选择配置,写入该条目的用户和组将会拥有 只读权限)
write list = zhangsan //定义允许写入的用户(如果read only = yes则需要配置;如果read only = no 则无需配置)
create mode = 3770 //创建文件时,文件的默认权限,相当于一个相反的umask
directory mode = 3770 //创建目录时,目录的默认权限,相当于一个相反的umask
但是 create mode 和 direcotry mode 无法赋予特殊权限,如:t、g,却能够赋予 S 权限2、查看配置文件语法是否正确无误:
testparm3、按照 path 定义的路径创建目录(保证100%对的上):
mkdir -p /samba/share4、虽然samba配置文件中开放了写入权限,但是目录本身也有权限
因此需要修改目录本身权限为允许 other读写:
chmod 777 /samba/share5、创建 主配置文件中定义的用户(已有可以忽略该步骤):
adduser zhangsan
adduser lisi6、将 本地用户添加进 Samba用户 中:
apt install samba-client
smbpasswd -a zhangsan
# New SMB password:
Skills39
# Retype new SMB password:
Skills39
smbpasswd -a lisi
# New SMB password:
Skills39
# Retype new SMB password:
Skills397、重启 Samba 服务:
systemctl restart smbd8、在客户端上进行访问:
· 使用匿名访问(这里的配置文件没有定义匿名访问,所以访问会失败):
apt install samba-client
smbclient //{IP地址}/{共享目录名称}
smbclient //192.168.10.82/share
Enter WORKGROUP\root's password:
匿名登陆的话 直接回车就行· 使用 用户访问:
smbclient //192.168.10.82/share -U user01
输入密码- 查看 Samba 使用的端口:
1.
Samba 有两个守护进程:
·smbd:Samb 主要使用的进程,监听 TCP 139端口 和 445端口
·nmbd:监听 UDP 137端口 和 138端口· 查看 smbd:
ss -ntupl | grep smbd
· 查看 nmbd:
ss -ntupl | grep nmbd
- 将 本地数据库的用户 添加到 samba 中用于登陆:
1.
# 需要本地用户中存在该用户
smbpasswd -a {用户名}
设置密码:
重复密码:
smbpasswd -a zhangsan
Skills39!
Skills39!· 可能出现的错误:
bash: smbpasswd: command not found
· 解决方法:
apt install samba-client