Skip to main content

在 Ubuntu 24.04 系统上配置 Samba(SMB)共享

Ubuntu 24.04 系统上配置 Samba(SMB)共享,将本地目录 /home/shuncom/teleport_backup 共享为 \\192.168.30.54\teleport_backup,请按以下步骤操作:


✅ 第一步:安装 Samba

sudo apt update
sudo apt install samba -y

✅ 第二步:创建或确认共享目录,并设置权限

# 确保目录存在
sudo mkdir -p /home/shuncom/teleport_backup

# 设置属主(建议使用 shuncom 用户)
sudo chown -R shuncom:shuncom /home/shuncom/teleport_backup

# 设置适当权限(根据需求调整)
sudo chmod -R 755 /home/shuncom/teleport_backup
# 或更宽松(如需写入):
# sudo chmod -R 775 /home/shuncom/teleport_backup

⚠️ 注意:Samba 默认不共享用户家目录下的子目录(因安全限制),但通过正确配置可实现。


✅ 第三步:为 Samba 添加用户(必须与系统用户对应)

# 假设你要用 "shuncom" 用户访问共享
sudo smbpasswd -a shuncom

🔐 系统会提示你设置一个 Samba 密码(可以和登录密码不同)。
此用户必须是系统已存在的用户(id shuncom 应有输出)。

启用该用户(默认已启用):

sudo smbpasswd -e shuncom

✅ 第四步:配置 Samba 共享(编辑 smb.conf)

备份原配置:

sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak

编辑配置文件:

sudo nano /etc/samba/smb.conf

在文件末尾添加以下内容:

[teleport_backup]
   comment = Teleport Backup Share
   path = /home/shuncom/teleport_backup
   browseable = yes
   writable = yes
   guest ok = no
   valid users = shuncom
   create mask = 0644
   directory mask = 0755
   force user = shuncom

参数说明:

配置项 作用
browseable = yes 网络邻居中可见
writable = yes 允许写入
guest ok = no 禁用匿名访问
valid users = shuncom 仅允许 shuncom 用户访问
force user = shuncom 所有操作以 shuncom 身份执行,避免权限混乱

💡 如果你希望多个用户访问,可将 valid users = user1,user2,并为每个用户执行 smbpasswd -a


✅ 第五步:重启 Samba 服务

sudo systemctl restart smbd nmbd
sudo systemctl enable smbd nmbd  # 开机自启

✅ 第六步:配置防火墙(如果启用 UFW)

Ubuntu 24.04 默认可能启用 ufw,需放行 SMB 端口:

sudo ufw allow samba
# 或手动开放端口:
# sudo ufw allow 139/tcp
# sudo ufw allow 445/tcp

查看状态:

sudo ufw status

✅ 第七步:从 Windows 访问测试

在 Windows 文件资源管理器地址栏输入:

\\192.168.30.54\teleport_backup
  • 弹出登录框时,输入:
    • 用户名shuncom
    • 密码:你在 smbpasswd -a shuncom 时设置的 Samba 密码

📌 注意:不要用 Windows 的“记住凭据”,避免后续混淆。


🔍 故障排查

1. 无法访问?检查服务状态:

sudo systemctl status smbd

2. 权限被拒绝?

  • 确认 /home/shuncom 目录对其他用户有 执行权限(x)
    chmod o+x /home/shuncom
    

    否则 Samba 无法进入家目录。

3. 测试本地连接:

smbclient -L localhost -U shuncom

4. 查看日志:

sudo tail -f /var/log/samba/log.smbd

✅ 最终效果

  • Windows 访问:\\192.168.30.54\teleport_backup
  • 需输入用户名 shuncom + Samba 密码
  • 可读写,文件属主为 shuncom

💡 安全建议

  • 不要设置 guest ok = yes(除非内网可信)
  • 定期更新系统:sudo apt upgrade
  • 如仅限内网使用,可绑定 IP(在 smb.conf[global] 中加 interfaces = 192.168.30.54/24

完成以上步骤,你的 SMB 共享即可正常使用!