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客户端访问。

相关推荐
IT成长日记1 小时前
【自动化运维神器Ansible】Playbook调用Role详解:从入门到精通
运维·自动化·ansible·playbook·role
xiaok1 小时前
使用PM2之后,是不是xshell断开了跟服务器的连接,退出来了,nodejs服务一样在线的
linux
2302_799525741 小时前
【ansible】4.实施任务控制
linux·服务器·ansible
2401_831501731 小时前
Linux之Ansible自动化运维(二)
运维·自动化·ansible
pwj去战斗吧1 小时前
一、部署LNMP
linux·运维
Tim风声(网络工程师)2 小时前
DNS有关知识(根域名服务器、顶级域名服务器、权威域名服务器)
linux·运维·服务器
热爱跑步的恒川2 小时前
告别服务器!Amazon Lambda无服务开发实战指南
运维·服务器
拾心212 小时前
【运维进阶】Shell 函数的知识与实践
运维
you秀3 小时前
linux中的iptables的简介与常用基础用法
linux·运维·服务器
画中有画3 小时前
使用AI来实现拼多多自动化运营脚本
运维·人工智能·自动化·ai编程·rpa·自动化脚本