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 分钟前
Jenkins
运维·jenkins
学术小白人1 小时前
11月即将召开-IEEE-机械制造方向会议 |2025年智能制造、机器人与自动化国际学术会议 (IMRA 2025)
运维·人工智能·机器人·自动化·制造·rdlink研发家
LCG元1 小时前
Crontab定时任务从入门到精通:教你如何实现日志切割、证书自动续期等十大实用场景
linux
王者鳜錸1 小时前
JAVA后端结合网页搜图+阿里万相2.5实现自动化修图与返回
运维·自动化·图片优化·图片大模型编辑·图片修改
金仓拾光集2 小时前
告别“凭感觉”告警,金仓数据库替换MongoDB让运维更精准
运维·数据库·mongodb·kingbase·数据库平替用金仓·金仓数据库·kingbasees·
叽里咕噜怪2 小时前
VMware-三种网络模式
linux·运维·服务器
scriptsboy2 小时前
可用 Docker (DockerHub) 国内镜像源加速列表 - 长期维护(截至 2025 年 06 月 15 日)
运维·docker·容器
matrixlzp2 小时前
Jenkins Pipeline 快速开始
运维·jenkins
艾莉丝努力练剑2 小时前
【Linux权限 (二)】Linux权限机制深度解析:umask如何决定默认权限与粘滞位的妙用
大数据·linux·服务器·c++·ubuntu·centos·1024程序员节