Ubuntu上开通Samba网络共享

在Ubuntu上开通Samba网络共享需要完成以下步骤:

一、安装Samba服务

bash 复制代码
sudo apt update
sudo apt install samba samba-common-bin

二、创建共享目录

bash 复制代码
sudo mkdir -p /srv/samba/share
sudo chmod 777 /srv/samba/share  # 临时测试用权限,生产环境需更严格

三、配置Samba

  1. 备份原始配置

    bash 复制代码
    sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
  2. 编辑配置文件

    bash 复制代码
    sudo nano /etc/samba/smb.conf
  3. 在文件末尾添加共享配置

    ini 复制代码
    [UbuntuShare]                     # 共享名称(客户端看到的名称)
    path = /srv/samba/share           # 共享目录路径
    public = yes				       #权限公共,都可以访问
    writable = yes                     # 允许写入

四、创建Samba用户(如需密码访问)

  1. 添加系统用户(若不存在):

    bash 复制代码
    sudo adduser smbuser
  2. 添加Samba用户密码:

    bash 复制代码
    sudo smbpasswd -a smbuser

    (输入两次密码)

  3. 修改共享配置(取消匿名访问):

    ini 复制代码
    guest ok = no
    valid users = smbuser

五、重启Samba服务

bash 复制代码
sudo systemctl restart smbd nmbd

六、防火墙配置

bash 复制代码
sudo ufw allow samba

七、客户端访问方式

Windows客户端:
  1. 文件资源管理器地址栏输入:

    复制代码
    \\ubuntu_ip_address
  2. 输入用户名 smbuser 和密码

Linux客户端:
bash 复制代码
sudo apt install cifs-utils
sudo mkdir /mnt/ubuntu_share
sudo mount -t cifs //ubuntu_ip/UbuntuShare /mnt/ubuntu_share -o username=smbuser
macOS客户端:
  1. Finder > 前往 > 连接服务器

  2. 输入地址:

    复制代码
    smb://ubuntu_ip/UbuntuShare

八、高级配置选项(可选)

ini 复制代码
# 限制访问IP段
hosts allow = 192.168.1.0/24

# 隐藏共享(仍可通过路径访问)
browseable = no

# 设置共享注释
comment = Ubuntu File Server

# 只读共享
read only = yes
writable = no

# 用户组访问
valid users = @smbgroup

九、测试与排查

  1. 检查配置语法:

    bash 复制代码
    testparm
  2. 查看Samba状态:

    bash 复制代码
    sudo systemctl status smbd
  3. 查看共享列表:

    bash 复制代码
    smbclient -L localhost -U smbuser
  4. 实时日志监控:

    bash 复制代码
    sudo tail -f /var/log/samba/log.*

十、自动挂载(Linux客户端)

编辑 /etc/fstab 添加:

bash 复制代码
//server_ip/UbuntuShare  /mnt/ubuntu_share  cifs  credentials=/etc/samba/creds,uid=1000,gid=1000  0  0

创建凭据文件 /etc/samba/creds

ini 复制代码
username=smbuser
password=yourpassword

设置权限:

bash 复制代码
sudo chmod 600 /etc/samba/creds

重要安全建议

  1. 生产环境避免使用 777 权限,改用组权限:

    bash 复制代码
    sudo chown -R :smbgroup /srv/samba/share
    sudo chmod 770 /srv/samba/share
  2. 定期更新Samba:sudo apt upgrade samba

  3. 敏感共享应禁用匿名访问

  4. 使用专用用户而非系统管理员账户

完成上述步骤后,您的Ubuntu系统即可通过Samba协议提供网络文件共享服务,支持Windows、Linux和macOS客户端访问。

相关推荐
chlk12316 小时前
Linux文件权限完全图解:读懂 ls -l 和 chmod 755 背后的秘密
linux·操作系统
舒一笑17 小时前
Ubuntu系统安装CodeX出现问题
linux·后端
改一下配置文件17 小时前
Ubuntu24.04安装NVIDIA驱动完整指南(含Secure Boot解决方案)
linux
碳基沙盒18 小时前
OpenClaw 多 Agent 配置实战指南
运维
深紫色的三北六号1 天前
Linux 服务器磁盘扩容与目录迁移:rsync + bind mount 实现服务无感迁移(无需修改配置)
linux·扩容·服务迁移
SudosuBash1 天前
[CS:APP 3e] 关于对 第 12 章 读/写者的一点思考和题解 (作业 12.19,12.20,12.21)
linux·并发·操作系统(os)
哈基咪怎么可能是AI2 天前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️
linux·github
十日十行2 天前
Linux和window共享文件夹
linux
木心月转码ing3 天前
WSL+Cpp开发环境配置
linux
蝎子莱莱爱打怪4 天前
Centos7中一键安装K8s集群以及Rancher安装记录
运维·后端·kubernetes