Samba 基础配置.note

noteId: 77CB1959BA8B4C5482B5F452797FC261 · 原始路径:/ALL/Linux - A模块/服务配置/Samba、Samba AD域/Samba 基础配置.note · 图片:2 · 附件待处理:0

安装 samba 服务:
服务器:apt install samba -y
客户端:apt install samba-client
 
 
Samba 服务名为:smbd
systemctl start smbd
 
 
Samba 主配置文件位于:/etc/samba/smb.conf
· 进行配置前先将 主配置文件 进行一次备份:
cd /etc/samba
cp smb.conf smb.conf.bak
1、创建一个简单的 共享目录:
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、查看配置文件语法是否正确无误:
testparm
3、按照 path 定义的路径创建目录(保证100%对的上):
mkdir -p /samba/share
4、虽然samba配置文件中开放了写入权限,但是目录本身也有权限
因此需要修改目录本身权限为允许 other读写:
chmod 777 /samba/share
5、创建 主配置文件中定义的用户(已有可以忽略该步骤):
adduser zhangsan
adduser lisi
6、将 本地用户添加进 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:

Skills39
7、重启 Samba 服务:
systemctl restart smbd
8、在客户端上进行访问:
· 使用匿名访问(这里的配置文件没有定义匿名访问,所以访问会失败):
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 有两个守护进程:
·smbd:Samb 主要使用的进程,监听 TCP 139端口 和 445端口
·nmbd:监听 UDP 137端口 和 138端口
· 查看 smbd:
ss -ntupl | grep smbd
· 查看 nmbd:
ss -ntupl | grep nmbd
 
 
 
 
 
# 需要本地用户中存在该用户
smbpasswd -a {用户名}
设置密码:
重复密码:
 
smbpasswd -a zhangsan
Skills39!
Skills39!
· 可能出现的错误:
bash: smbpasswd: command not found
      

· 解决方法:
apt install samba-client