Linux怎么配置Samba文件共享_Linux与Windows内网互传设置【指南】
发布时间 - 2026-01-29 00:00:00 点击率:次Samba是Linux与Windows内网文件互传的标准方案,需依次完成安装、配置全局及共享参数、创建共享目录并设权限、添加Samba认证用户、启动服务、配置防火墙、Windows端访问验证。
如果您希望在Linux服务器与Windows客户端之间实现内网文件互传,Samba是标准且兼容性良好的解决方案。以下是完成Samba文件共享配置的具体操作步骤:
一、安装Samba服务组件
Samba服务依赖核心软件包,需确保smbd和nmbd进程可运行。不同发行版使用对应包管理器安装。
1、对于基于RHEL/CentOS/Rocky Linux/AlmaLinux的系统,执行:
sudo yum install samba samba-client samba-common -y
2、对于Debian/Ubuntu系统,执行:
sudo apt update && sudo apt install samba samba-common-bin cifs-utils -y
3、验证安装结果:
sudo systemctl list-unit-files | grep smb
二、配置全局及共享段参数
编辑主配置文件可定义网络行为、安全模式与共享资源策略。关键项包括工作组名、安全级别、字符集及共享目录权限控制。
1、备份原始配置:
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
2、使用vi或nano打开配置文件:
sudo vi /etc/samba/smb.conf
3、在[global]段末尾添加以下基础设置:
workgroup = WORKGROUP
server string = Samba File Server
security = user
map to guest = bad user
log file = /var/log/samba/%m
max log size = 50
socket options = TCP_NODELAY IPTOS_LOWDELAY SO_RCVBUF=65536 SO_SNDBUF=65536
dns proxy = no
unix charset = UTF-8
dos charset = CP936
4、在文件末尾新增共享定义(以/shared为例):
[shared]
comment = Internal File Share
path = /srv/samba/shared
browsable = yes
writable = yes
guest ok = no
read only = no
valid users = @sambashare
三、创建共享目录并设置文件系统权限
Linux文件系统权限与Samba访问控制独立生效,必须同时满足二者才允许读写。目录需归属指定组且启用SGID确保新建文件继承组权限。
1、创建共享路径:
sudo mkdir -p /srv/samba/shared
2、创建专用用户组:
sudo groupadd sambashare
3、设置目录属组与权限:
sudo chgrp sambashare /srv/samba/shared
sudo chmod 2775 /srv/samba/shared
4、验证SELinux上下文(若启用):
sudo semanage fcontext -a -t samba_share_t "/srv/samba/shared(/.*)?"
sudo restorecon -Rv /srv/samba/shared
四、添加Samba认证用户
Samba用户必须是已存在的Linux系统用户,且需通过smbpasswd注册密码。该密码独立于系统登录密码,仅用于SMB协议认证。
1、创建系统用户(不分配shell,禁用登录):
sudo useradd -M -s /sbin/nologin alice
sudo useradd -M -s /sbin/nologin bob
2、将用户加入sambashare组:
sudo usermod -aG sambashare alice
sudo usermod -aG sambashare bob
3、为用户设置Samba密码:
sudo smbpasswd -a alice
sudo smbpasswd -a bob
4、确认用户已注册:
sudo pdbedit -L
五、启动并启用Samba服务
Samba由两个核心守护进程组成:smbd提供文件/打印服务(TCP 139/445),nmbd处理NetBIOS名称解析(UDP 137/138)。两者均需运行。
1、

sudo systemctl start smb nmb
2、设为开机自启:
sudo systemctl enable smb nmb
3、检查服务状态:
sudo systemctl status smb nmb
4、测试配置语法是否正确:
sudo testparm
六、配置防火墙放行Samba端口
默认防火墙会阻止Samba通信,必须显式开放对应服务或端口。推荐使用service方式,避免硬编码端口。
1、对于firewalld(RHEL系):
sudo firewall-cmd --permanent --add-service=samba
sudo firewall-cmd --reload
2、对于ufw(Debian/Ubuntu):
sudo ufw allow 'Samba'
3、验证规则生效:
sudo firewall-cmd --list-services | grep samba
七、Windows客户端访问验证
Windows资源管理器原生支持SMB协议,无需额外安装客户端。访问时需使用正确的UNC路径格式,并确保凭据匹配Samba用户。
1、在Windows运行框中输入:
\\
2、当提示凭据时,输入:
用户名格式为:服务器主机名\用户名(如:centos8\alice)或直接填用户名alice
3、若首次访问失败,尝试在Windows中启用“SMB 1.0/CIFS 文件共享支持”(控制面板→程序→启用或关闭Windows功能)
4、挂载为网络驱动器(可选):
右键“此电脑”→“映射网络驱动器”→选择盘符→输入\\
# linux
# centos
# node
# windows
# 编码
# 防火墙
# 电脑
# 端口
# ubuntu
# unix
# proxy
# ios
# String
# 继承
# internal
# var
# udp
# debian
# 客户端
# 文件系统
# 配置文件
# 内网
# 文件共享
# 如果您
# 首次
# 设为
# 推荐使用
# 右键
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
php 三元运算符实例详细介绍
如何解决hover在ie6中的兼容性问题
Laravel Admin后台管理框架推荐_Laravel快速开发后台工具
PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据)
详解Nginx + Tomcat 反向代理 如何在高效的在一台服务器部署多个站点
如何制作一个表白网站视频,关于勇敢表白的小标题?
laravel怎么实现图片的压缩和裁剪_laravel图片压缩与裁剪方法
Laravel怎么使用Collection集合方法_Laravel数组操作高级函数pluck与map【手册】
学生网站制作软件,一个12岁的学生写小说,应该去什么样的网站?
bootstrap日历插件datetimepicker使用方法
如何确认建站备案号应放置的具体位置?
重庆市网站制作公司,重庆招聘网站哪个好?
5种Android数据存储方式汇总
Laravel PHP版本要求一览_Laravel各版本环境要求对照
在线制作视频网站免费,都有哪些好的动漫网站?
浅谈Javascript中的Label语句
如何利用DOS批处理实现定时关机操作详解
为什么要用作用域操作符_php中访问类常量与静态属性的优势【解答】
如何用手机制作网站和网页,手机移动端的网站能制作成中英双语的吗?
使用PHP下载CSS文件中的所有图片【几行代码即可实现】
JavaScript如何实现错误处理_try...catch如何捕获异常?
合肥制作网站的公司有哪些,合肥聚美网络科技有限公司介绍?
Laravel模型事件有哪些_Laravel Model Event生命周期详解
Laravel队列任务超时怎么办_Laravel Queue Timeout设置详解
Laravel辅助函数有哪些_Laravel Helpers常用助手函数大全
Laravel策略(Policy)如何控制权限_Laravel Gates与Policies实现用户授权
北京网页设计制作网站有哪些,继续教育自动播放怎么设置?
Python文本处理实践_日志清洗解析【指导】
广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?
node.js报错:Cannot find module 'ejs'的解决办法
百度浏览器如何管理插件 百度浏览器插件管理方法
laravel怎么配置和使用PHP-FPM来优化性能_laravel PHP-FPM配置与性能优化方法
Android GridView 滑动条设置一直显示状态(推荐)
如何正确选择百度移动适配建站域名?
韩国网站服务器搭建指南:VPS选购、域名解析与DNS配置推荐
专业商城网站制作公司有哪些,pi商城官网是哪个?
Laravel怎么连接多个数据库_Laravel多数据库连接配置
Laravel如何实现模型的全局作用域?(Global Scope示例)
如何用西部建站助手快速创建专业网站?
中国移动官方网站首页入口 中国移动官网网页登录
Laravel如何监控和管理失败的队列任务_Laravel失败任务处理与监控
哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?
Laravel怎么实现一对多关联查询_Laravel Eloquent模型关系定义与预加载【实战】
HTML5空格在Angular项目里怎么处理_Angular中空格的渲染问题【详解】
Laravel集合Collection怎么用_Laravel集合常用函数详解
Python自然语言搜索引擎项目教程_倒排索引查询优化案例
Python图片处理进阶教程_Pillow滤镜与图像增强
Laravel如何使用Facades(门面)及其工作原理_Laravel门面模式与底层机制
JavaScript如何实现路由_前端路由原理是什么
nodejs redis 发布订阅机制封装实现方法及实例代码

