Debian搭建smb服务器
发布时间:2025-07-27 00:04       
Debian搭建SMB服务器专业指南 🖥️
一、环境准备与安装
-
更新系统:
sudo apt update && sudo apt upgrade -y
📌 确保系统为最新状态(推荐Debian 12+)
-
安装Samba核心组件:
sudo apt install samba smbclient cifs-utils -y
samba
:SMB协议主服务smbclient
:SMB客户端工具cifs-utils
:挂载工具
-
验证安装:
samba --version # 输出应显示4.17+版本
二、基础配置
- 备份原始配置:
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
- 编辑主配置文件:
sudo nano /etc/samba/smb.conf
- 全局设置([global]节添加):
[global] workgroup = WORKGROUP # 与Windows工作组同名 server string = Debian Samba Server security = user # 用户密码认证 map to guest = bad user # 匿名访问处理 dns proxy = no # 禁用DNS代理 log file = /var/log/samba/log.%m # 分设备日志 max log size = 1000 # 日志大小(MB)
三、创建共享目录
- 建立共享文件夹并授权:
sudo mkdir -p /srv/samba/shared sudo chmod 2770 /srv/samba/shared # SGID保持组权限 sudo chown nobody:nogroup /srv/samba/shared # 匿名访问权限
- 添加共享配置(追加到smb.conf):
[PublicShare] path = /srv/samba/shared browseable = yes # 在网络中可见 writable = yes # 允许写入 guest ok = yes # 允许匿名访问 create mask = 0775 # 新文件权限 directory mask = 0775 # 新目录权限
四、用户认证配置(安全共享)
-
创建系统用户:
sudo useradd -M -s /usr/sbin/nologin samba_user # -M不创建家目录 sudo passwd samba_user # 设置系统密码
-
添加Samba用户:
sudo smbpasswd -a samba_user # 设置SMB专用密码(可与系统密码不同)
🔐 密码策略:长度12位+大小写数字组合
-
创建私有共享配置:
[PrivateShare] path = /srv/samba/private valid users = samba_user # 仅允许指定用户 browseable = yes writable = yes guest ok = no # 禁止匿名访问
-
目录权限控制:
sudo mkdir /srv/samba/private sudo chown samba_user:samba_user /srv/samba/private sudo chmod 1770 /srv/samba/private # Sticky位防用户互删
五、服务管理
-
启动服务并设自启:
sudo systemctl enable --now smbd nmbd
smbd
:文件共享服务nmbd
:NetBIOS名称解析
-
检查服务状态:
sudo systemctl status smbd | grep Active # 正常输出:Active: active (running)
-
重载配置(免重启):
sudo smbcontrol all reload-config
六、防火墙配置
sudo apt install ufw -y
sudo ufw allow samba # 自动开放端口
# 或手动开放端口:
sudo ufw allow 139/tcp # SMB会话
sudo ufw allow 445/tcp # SMB直连
sudo ufw allow 137/udp # NetBIOS名称
sudo ufw allow 138/udp # NetBIOS数据报
sudo ufw enable
七、客户端连接测试
- Linux客户端挂载:
mkdir ~/samba_mount sudo mount -t cifs //debian_ip/PublicShare ~/samba_mount -o guest # 私有共享需认证: sudo mount -t cifs //debian_ip/PrivateShare ~/private_mount -o username=samba_user
- Windows客户端访问:
文件资源管理器地址栏输入: \\debian_ip\PublicShare
- 命令行验证:
smbclient -L //debian_ip -U samba_user # 输入密码后显示可用共享列表
八、高级配置技巧
- 多用户权限控制:
[DepartmentShare] path = /srv/samba/dept valid users = @samba_group # 用户组控制 writable = yes inherit permissions = yes # 继承父目录ACL
- 创建用户组:
sudo groupadd samba_group sudo usermod -aG samba_group user1 user2 sudo smbpasswd -a user1 sudo smbpasswd -a user2 sudo chgrp -R samba_group /srv/samba/dept sudo chmod 2770 /srv/samba/dept
- 日志监控:
tail -f /var/log/samba/log.* # 实时查看访问日志
- 回收站功能:
[SharedWith