SAMBA综合配置实例
配置samba服务器,要求如下
要求一:
1、该服务器的主机名为:rhel2,IP为:192.168.100.204
2、工作组名为redhat,服务器的netbios为samba,服务器的描述信息为:file share server
3、接口绑定在eth0上
4、netbios别名为:smbserver,sambaserver
5、指定来宾用户账号为nobody
6、允许192.168.100.0网段的机器访问,但不允许192.168.100.1,192.168.100.100访问
7、定义最大日志大小为5M
8、同一个客户端打开的文件最大数目为15个
要求二:
设某公司有财务,技术,领导3个部门,我们分别为3个部门建立3个用户组为caiwu,network,jingli; 三个部门里各有2个用户,我们建用户分别为caiwu01,caiwu02,network01,network02,jingli01,jingli02,具体如下:
1. 首先服务器采用用户验证的方式,每个用户可以访问自己的宿主目录,并且只有该用户能访问宿主目录,并具有完全的权限,而其他人不能看到你的宿主目录
2. 建立一个caiwu的文件夹,希望caiwu组和jingli组的人能看到,network02也可以访问,但只有caiwu01有写的权限
3. 建立一个lindao的目录,只有领导组的人可以访问并读写,还有network02也可以访问,但外人看不到那个目录
4. 建立一个文件交换目录exchange,所有人都能读写,包括guest用户,但每个人不能删除别人的文件
5. 建立一个公共的只读文件夹public,所有人只读这个文件夹的内容
配置步骤:
配置主机名这里省略。(因为修改主机名还要重启,就用现在这个)
配置IP地址:
[root@rhel2 ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
IPADDR=192.168.100.204
NETMASK=255.255.255.0
[root@rhel2 ~]# service network restart
安装软件:
[root@rhel2 ~]# mount /dev/cdrom /mnt //挂载
[root@rhel2 ~]# rpm -ivh /mnt/Server/samba-common-3.0.33-3.7.el5.i386.rpm
[root@rhel2 ~]# rpm -ivh /mnt/Server/perl-Convert-ASN1-0.20-1.1.noarch.rpm
[root@rhel2 ~]# rpm -ivh /mnt/Server/samba-3.0.33-3.7.el5.i386.rpm
安装这个软件之前要先安装上面那个软件。
编辑配置文件:
[root@rhel2 ~]# vi /etc/samba/smb.conf
#======================= Global Settings =======================
[global]
# ----------------------- Network Related Options -------------------------
workgroup = redhat //工作组名称。
server string = file share server //描述信息。
netbios name = samba //NetBios名称。
netbios aliases = smbserver sambaserver //netbios别名。
interfaces = eth0 //绑定的接口。
hosts allow = 192.168.100. //允许的网段。
hosts deny = 192.168.100.1,192.168.100.100 //拒绝的主机。
guest account = nobody //指定来宾用户为nobody。
max open files = 15 //每个用户最大打开的文件数。
# --------------------------- Logging Options -----------------------------
max log size = 6120
# ----------------------- Standalone Server Options ------------------------
security = user
#============================ Share Definitions ================
[homes]
comment = Home Directories
browseable = no
writable = yes
valid users = %S
create mode = 664
directory mode = 775
上面满足要求二的第1个要求。
[caiwu]
comment = caiwu
path = /home/caiwu
public = no
valid users = @caiwu,@jingli,netwoek02
write list = caiwu01
上面满足要求二的第2个要求。
[exchange]
comment = exchange
path = /home/exchange
public = yes
guest ok = yes
writeable = yes
上面满足要求二的第3个要求。但还要添加一句,才能真正实现不能删除别人创建的文件。使用一个粘着位:
[root@rhel2 home]# chmod -R 1777 /home/exchange/
[public]
comment = public
path = /home/public
public = yes
read only = yes
上面满足要求二的第4个要求 。
接下来创建用户和组。
[root@rhel2 ~]# groupadd caiwu
[root@rhel2 ~]# groupadd jingli
[root@rhel2 ~]# groupadd network
[root@rhel2 ~]# useradd caiwu01 -g caiwu
[root@rhel2 ~]# useradd caiwu02 -g caiwu
[root@rhel2 ~]# useradd network01 -g network
[root@rhel2 ~]# useradd network02 -g network
[root@rhel2 ~]# useradd jingli01 -g jingli
[root@rhel2 ~]# useradd jingli02 -g jingli
接下来使用smbpasswd –a 添加samba用户。(略)
创建目录和修改权限:
[root@rhel2 ~]# cd /home/
[root@rhel2 home]# mkdir caiwu
[root@rhel2 home]# mkdir jingli
[root@rhel2 home]# mkdir network
[root@rhel2 home]# mkdir public
[root@rhel2 home]# mkdir exchange
[root@rhel2 home]# chmod 777 caiwu
[root@rhel2 home]# chmod 777 network
[root@rhel2 home]# chmod 777 jingli
[root@rhel2 home]# chmod 777 exchange
[root@rhel2 home]# chmod 777 public
[root@rhel2 ~]# service smb restart
测试:
使用caiwu01登录:
进入public文件夹测试一下权限,新建文件时出现如下提示:
进入exchange文件夹:
新建一个文件。
现在换一个用户登录测试一下:
先清除一下缓存:
使用network01登录:
登录后的界面:
进入public测试权限:
同样,没有权限。测试一下exchange的权限:
删除不了caiwu01创建的文件,测试一下写入的权限:
写入是可以的,也就达到了目的。
每次登录后所能看到的文件夹也是不同的,这也是权限的问题,如每个用户登录后会有一个以用户名命名的文件夹,这就是:
这里的配置起的作用。
最后测试一下在linux系统下访问windows系统的共享文件:
首先,windows的IP地址为192.168.100.111,共享文件已经设置好(怎么设置这里省略)
然后在linux上先挂载再访问:
[root@rhel2 home]# mount.cifs //192.168.100.111/share /mnt -o user=administrator
Password:
[root@rhel2 home]# ls /mnt
windows.txt
windows share[root@rhel2 home]# vi /mnt/windows.txt
windows share
在linux引导时启动Samba服务:
[root@rhel2 home]# chkconfig --level 345 smb on
注意:在level前有两个-,后面是启动的级别。