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

相关推荐
口袋物联1 天前
设计模式之工厂模式在 C 语言中的应用(含 Linux 内核实例)
linux·c语言·设计模式·简单工厂模式
qq_479875431 天前
X-Macros(1)
linux·服务器·windows
笨笨聊运维1 天前
CentOS官方不维护版本,配置python升级方法,无损版
linux·python·centos
ζั͡山 ั͡有扶苏 ั͡✾1 天前
EFK 日志系统搭建完整教程
运维·jenkins·kibana·es·filebeat
jun_bai1 天前
python写的文件备份网盘程序
运维·服务器·网络
Warren981 天前
Python自动化测试全栈面试
服务器·网络·数据库·mysql·ubuntu·面试·职场和发展
HIT_Weston1 天前
39、【Ubuntu】【远程开发】拉出内网 Web 服务:构建静态网页(二)
linux·前端·ubuntu
欢喜躲在眉梢里1 天前
CANN 异构计算架构实操指南:从环境部署到 AI 任务加速全流程
运维·服务器·人工智能·ai·架构·计算
weixin_537765801 天前
【容器技术】虚拟化原理与Docker详解
运维·docker·容器
胡斌附体1 天前
docker健康检查使用
运维·docker·依赖·健康检查