RHEL5samba

简介

  samba是一个工具套件,在Unix上实现SMB(Server Message Block)协议,或者称之为NETBIOS/LanManager协议。SMB协议通常是被windows系列用来实现磁盘和打印机共享。需要注意的是,NetBIOS是基于以太网广播机制的,没有透明网桥是不能跨越网段的,也许用WINSLMHOSTS可以,但我没试过。我感觉samba是把SMB绑定到TCP/IP上实现的,samba只在IP子网内广播(很多时候我不得不指定IP地址:-()。所以在win95上与samba通讯既要装NetBEUI协议,也要装tcp/ip协议。 

samba的主要部分

两个守护程序: smbd 和 nmbd(对客户端提供NetBIOS名服务 配置文件:/etc/smb.conf使用工具smbclient,smbstatus,smbmount,smbumount,smbprint,smbprint.sysv,smbrun   samba的启动脚本在/etc/rc.d/init.d/smb   BTW,不要把smbsmp(对称多处理器)搞混了,更不要把NetBIOS名与DNS里的主机名搞混淆了! samba缺省 是把主机名设置成NetBIOS,这样通常会超出NetBIOS名的长度限制(16个字符).

smb.conf文件常用配置项

workgroup:设置服务器所在的工作组名称,例如WORKGRUOP(windows主机默认工作组名)

server string:设置服务器的说明文字,用于描述samba服务器

cecurity:设置服务器的安全级别,可设为以下四个值中的一个:share(可匿名访问)user(需由本服务器验证用户名及密码)server(由另一台服务器验证用户名及密码)、domain(windows域控制器验证用户名及密码)

log file:设置samba服务器的日志文件,默认设置为/var/log/samba/%m.log%m表示客户端主机名或IP地址

max log size:设置日志文件的最大容量,默认为50,表示50KB

comment:设置对应共享目录的注释、说明信息

path:设置对应共享目录在服务器中的文件夹路径

browseable:设置该共享目录在网上邻居中是否可见,设置为no时相当于隐藏共享目录

guest ok / public:设置是否所有人都可以访问共享目录

writable:设置该共享目录是否可写

read only:设置该共享目录是否只读

valid users:哪些用户可以访问共享目录

invalid users:哪些用户不能访问共享目录

write list:哪些用户有写入权限

read list:哪些用户只有读取权限

directory mask:设置共享目录中的写入的目录的权限

create mask:设置共享目录中的写入的文件的权限

force group:指定存取资源时须以此设定的群组使用者进入才能存取(用户名/@组名)

force user:指定存取资源时须以此设定的使用者进入才能存取(用户名/@组名)

host allow:设置仅允许访问共享的网段或IP

host deny:设置仅拒绝访问共享的网段或IP

User模式共享:

实验要求:

创建SaleCaiwuPublic3个文件夹;使用户User1gsamba组可以只读方式访问Sale,以读写方式访问Public;使用户User2gsamba组可以只读方式访问,以读写方式访问PublicPublic下的文件只有create ower才有权限删除。

1.yum install samba*

2.mkdir -p /tsamba/Sale /tsamba/Caiwu /tsamba/Public

3.将这3个文件夹授予完全访问权限 chmod 1777 文件夹啊

4.创建用户 useradd user1 ; useradd user2useradd gsamba(默认gsamba组)

5.修改/etc/samba/smb.conf文件,先做个备份 cp smb.conf smb.conf.bk

6.service smb restart 

7.netstat -an | grep 139

8.添加smb用户:user1user2gsamba

9设置iptable开启smb端口

10.设置selinux

实验结束!!!

Samba的高级应用

要求:Check文件夹只有BOSS可以看见 其他用户都看不见

*本实验的配置基于上个实验

1.创建check文件夹

2.创建用户boss

3.基于上个实验smb.conf 做修改:

4.添加用户配置文件:

cp /etc/samba/smb.conf.bk /etc/samba/smb.conf.boss

5.修改用户配置文件:

6.service smb restart

试验完成!!!

测试:

User1登录:

BOSS登录: