CentOS 7.9 基础配置与 Samba 文件共享搭建

📅2026/7/13 15:12:03 👁️次浏览
CentOS 7.9 基础配置与 Samba 文件共享搭建
在搭建企业内网环境时CentOS 7.9 配合 Samba 服务实现跨平台文件共享是绝对绕不开的基础技能。今天这篇笔记我将带大家从系统初始化、YUM源配置一路走到 Samba 权限隔离的实战配置。全程干货建议收藏备用一、 系统初始化与网络配置1. 检查磁盘分区状态拿到一台新服务器第一步永远是摸清它的“家底”。推荐使用lsblk命令它能以直观的树状图展示磁盘及其挂载情况lsblk2. 配置静态 IP 地址服务器必须使用静态 IP。编辑对应的网卡配置文件如ifcfg-eno1vi /etc/sysconfig/network-scripts/ifcfg-eno1将BOOTPROTO改为static并补充IPADDR、NETMASK、GATEWAY和DNS等参数保存后重启网络服务systemctl restart network。二、 挂载本地 YUM 源与基础工具安装在没有外网的环境下本地 YUM 源是我们的“救命稻草”。1. 挂载并配置本地源# 备份原有 repo 文件 mkdir /opt/yum.bak cd /etc/yum.repos.d/ mv * /opt/yum.bak/ # 提取本地介质源配置 mv /opt/yum.bak/CentOS-Media.repo . # 编辑配置文件确保 baseurl 指向正确的挂载点如 /mnt/cdrom vi CentOS-Media.repo2. 刷新缓存并安装常用工具yum clean all yum makecache yum repolist # 安装日常运维必备工具 yum install tree vim net-tools -y注CentOS 7 默认没有ifconfig命令需通过安装net-tools解决。三、 安全加固关闭防火墙与 SELinux为了避免后续测试时遇到莫名其妙的网络拦截建议在实验环境中关闭安全限制生产环境请按需配置规则。# 关闭并禁用 firewalld systemctl stop firewalld systemctl disable firewalld # 永久关闭 SELinux vi /etc/selinux/config # 将 SELINUXenforcing 修改为 SELINUXdisabled # 重启生效或临时执行 setenforce 0四、 核心实战Samba 文件共享搭建1. 安装 Samba 并创建专用用户为了安全我们创建一个无法通过 SSH 登录系统的 Samba 专用账号yum install samba -y # 创建系统用户禁止登录 shell useradd -s /sbin/nologin zhangsan # 将用户加入 Samba 数据库并设置密码 pdbedit -a zhangsan2. 创建共享目录与权限分配mkdir -p /home/share # 赋予目录基本的执行权限允许用户进入目录 chmod -R gx /home/share chmod -R ox /home/share3. 配置 Samba 主文件编辑/etc/samba/smb.conf在文件末尾添加共享模块vi/etc/samba/smb.conf[share] comment company share path /home/share browseable yes #所有人所见即使没权限也可以看到 guest ok no writable yes4. 精细化权限控制 (ACL)如果不想修改整个目录的属主推荐使用 ACL 进行精准授权setfacl -m u:zhangsan:rwx /home/share/5. 启动服务并设置开机自启systemctl start smb systemctl enable smb五、 进阶玩法管理员全局只读视图在实际企业场景中我们可能需要一个管理员账号如admin能够浏览/home下所有员工的家目录但只有查看权限没有删除和修改权限。在smb.conf中追加以下配置[homeall] path /home valid users admin browseable no read only yes说明browseable no表示该共享不会在网络邻居中直接显示只有知道确切路径或输入\\IP\homeall才能访问增强了隐蔽性。admin用户访问别的目录的文件时提示没权限六、 访问提示“没有权限”怎么办如果在 Windows 客户端访问时疯狂提示“拒绝访问”请依次排查以下三点文件系统权限确认ls -ld /home/share的权限是否允许目标用户读写。SELinux 拦截CentOS 的 SELinux 默认禁止 Samba 访问非标准目录。执行chcon -R -t samba_share_t /home/share赋予上下文或者干脆setenforce 0测试。防火墙拦截如果开启了防火墙务必放行 Samba 服务firewall-cmd --permanent --add-servicesamba firewall-cmd --reload寄语Samba 的配置看似简单但往往在权限和 SELinux 上容易翻车。大家在实操时一定要养成先看日志/var/log/samba/再改配置的好习惯。