CentOS上搭建Samba服务器
2022-06-23 本文已影响0人
voidFan
前言:Samba是在Linux系统上实现SMB协议的一个服务软件,SMB可以实现在局域网上共享文件和打印机,SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。客户机通过该SMB协议可以访问服务器上的共享文件系统、打印机及其他资源
Step One : 安装samba服务
yum install samba samba-client # 安装samba服务
cp /etc/samba/smb.conf /etc/samba/smb.conf.bak # 备份配置文件
Step Two : 编辑smb.conf文件
[global]
workgroup = WORKGROUP # 工作组的名称为WORKGROUP
server string = Samba Server Version %v
log file = /var/log/samba/log.%m
max log size = 500
security = user # share, user, domain三选一, user为用户名密码登陆
passdb backend = tdbsam
cups options = raw
[data_security]
path = /datadisk_security/
read only = No
writable = yes
create mode = 0770
directory mode = 0770
guest ok = no
valid user = @security
Step Three
# 如果CentOS服务器有开启SELINUX的话,建议关闭掉
vi /etc/selinux/config
# 将SELINUX=enforcing 改成SELINUX=disabled,然后reboot重启生效
getenforce # 重启后查看SELINUX状态为Disabled
# 创建用户组及目录
groupadd security # 创建一个security 用户组
mkdir /datadisk_security/ #创建data_security目录
chgrp security /datadisk_security/
chmod 770 /datadisk_security/
# 添加系统用户secadmin(测试账号) 用户组权限改为security用户组
useradd secadmin
usermod -G security secadmin
# secadmin系统账号测试加入到smb用户里,并设置smb密码
smbpasswd -a secadmin # 输入两次密码
chkconfig smb on # 设置samba的两个服务smb和nmb服务开机启动
chkconfig nmb on
service nmb start # 并手动启动这两个服务
service smb start
Step Four 防火墙配置,若有开启防火墙,需要加入一下规则
iptables -I INPUT 5 -p tcp -m state --state NEW -m multiport --dports 139,445 -j ACCEPT
iptables -I INPUT 5 -p udp -m state --state NEW -m udp --dport 137 -j ACCEPT
验证
- Windows主机网上邻居或资源管理器访问\{IP}
- 提示输入帐号密码 secadmin / *****
另外Linux上挂载Linux Samba共享目录的命令如下:
mount -t cifs //{IP}/data_security /mnt/cifs -o username=secadmin,password=XXX
df -f # 查看情况