Samba
1 samba的简介
Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。
SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。
SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。通过设置“NetBIOS over TCP/IP”使得Samba不但能与局域网络主机分享资源,还能与全世界的电脑分享资源。
2 samba的安装
2.1 yum源安装
yum -y install samba samba-client
2.2 配置部分
2.2.1 添加认证组
groupadd gp1
2.2.2 添加认证用户
useradd user1 -s /sbin/nologin useradd user2 -s /sbin/nologin -G gp1 useradd user3 -s /sbin/nologin -G gp1 smbpasswd -a user1 smbpasswd -a user2 smbpasswd -a user3
注:
– useradd命令的-s参数是禁止用户的shell登录权限
– useradd命令的-G参数是将用户添加到附加组gp1
– smbpasswd命令-a参数指定变更samba密码的用户名
2.2.3 建立配置文件夹
mkdir /data/files
另外,你可以通过以下方式授予用户或组的权限,
setfacl -m u:user1:rwx /data/files/ setfacl -m g:gp1:rwx /data/files/
2.2.4 设置smb的文件夹权限
vim /etc/samba/smb.conf
文件末尾加入如下配置,
[files] path = /data/files valid users = user1, @gp1 write list = user1, @gp1
以上分别通过用户与组两种方式授予三个用户同等的读写权限,修改后的配置文件如下,
[global] workgroup = MYGROUP server string = Samba Server Version %v log file = /var/log/samba/%m.log max log size = 50 security = user passdb backend = tdbsam load printers = yes cups options = raw [files] path = /data/files valid users = user1, @gp1 write list = user1, @gp1
2.2.5 启动服务和配置服务自动启动
/etc/init.d/smb start chkconfig smb on
2.2.6 关闭SELinux
setenforce 0 sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
2.2.7 配置防火墙
vim /etc/sysconfig/iptables
加入如下配置:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 139 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 445 -j ACCEPT
配置完成后,我们需要通过重启服务使配置生效,
/etc/init.d/iptables restart
没有评论