- 简介
Samba 是一个开源的跨平台文件共享服务,允许 Linux/Unix 系统与 Windows 系统实现文件和打印机的共享与互操作。其核心协议为 SMB/CIFS(Server Message Block / Common Internet File System),是 Windows 网络中的标准文件共享协议。
- Samba服务器的核心组件
- smbd:负责处理文件和打印共享请求,直接与 SMB/CIFS 协议交互。
- nmbd:提供 NetBIOS 名称解析(类似 Windows 网络中的计算机名发现)。
- winbindd:集成 Linux 系统与 Windows 域用户认证,支持统一身份管理。
- Samba服务器的优势(个人看法)
Samba服务器是可以跨Linux和Windows的服务器,而且是开源免费的,适合个人和企业;而且支持加密的方式,可以确保数据一定程度的安全性;
- 部署步骤
- 安装Samba服务 [root@node1 ~]# yum install -y samba samba-client
- 配置防火墙(如果是学习环境建议直接关闭) # 允许Samba服务器通过
[root@node1 ~]# firewall-cmd –permanent –add-service=samba
[root@node1 ~]# firewall-cmd –reload#直接关闭防火墙
[root@node1 ~]# systemctl stop firewall
[root@node1 ~]# systemctl disable firewall - 创建共享目录 # 创建共享目录
[root@node1 ~]# mkdir -p /samba/share# 调整权限(根据实际需求调整)
[root@node1 ~]# chmod -R 777 /samba/share/ - 配置Samba(!!!) # 备份配置文件,防止后面修改
[root@node1 ~]# cp /etc/samba/smb.conf /etc/samba/smb.conf.bak# vim配置smb.conf
[root@node1 ~]# vim /etc/samba/smb.conf#在文件的最后加上以下命令(注意和上面层级对齐):
[share]
comment = Samba Share # 对服务的描述(仅显示在客户端,不影响功能)
path = /samba/share # 共享目录的物理路径(就是我们上面创建的share文件)
browseable = yes # 是否在网络中可见(yes=可见,no=隐藏但可直连访问)
writable = yes # 是否允许写入
guest ok = no # 是否允许匿名访问,这里是no;
valid users = @smbusers # 允许的用户组 - 创建Samba用户 # a.创建系统用户组和用户;
[root@node1 ~]# groupadd smbusers
[root@node1 ~]# useradd -M -s /sbin/nologin -G smbusers sambauser
# -M:不创建用户主目录(如 /home/sambauser);
# -s /sbin/nologin:禁止用户通过SSH或者终端系统登录,提高安全性;
# -G:加入用户组(用户组必须真实存在);[root@node1 ~]# passwd sambauser
# b.直接将系统存在的用户加入到Samba用户数据库中
[root@node1 ~]# smbpasswd -a sambauser # 将用户加入Samba用户数据库中
- 配置SELinux(如果是学习环境建议直接关闭) # 添加 SELinux 文件上下文规则
[root@node1 ~]# semanage fcontext -a -t samba_share_t "/samba/share(/.*)?"
[root@node1 ~]# restorecon -Rv /samba/share# 直接永久关闭
[root@node1 ~]# vi /etc/selinux/config # 编辑配置文件
[root@node1 ~]# SELINUX=disabled # 修改为 disabled
# 保存重启生效
[root@node1 ~]# sudo reboot - 启动并启用服务 [root@node1 ~]# sudo systemctl enable smb nmb –now
[root@node1 ~]# sudo systemctl status smb nmb # 检查状态 - 测试
1.使用Windows打开CMD,输入自己的Samba的服务器的IP地址:\\\\IP地址;
2.这样我们就可以在Samba服务器上进行操作了(实现了两个不同的系统之间的互通);
我们都是小小服务器搭建高手,一起加油!!哈哈哈哈!!大佬别喷!!
评论前必须登录!
注册