您的位置:首页 > 运维架构 > Linux

samba服务配置

2012-03-01 17:42 676 查看
标签:linux 配置 服务 samba
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://chenbin.blog.51cto.com/945033/346288

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测试权限:




本文出自 “放飞梦想” 博客,请务必保留此出处http://chenbin.blog.51cto.com/945033/346288

同样,没有权限。测试一下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前有两个-,后面是启动的级别。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  linux 职场 samba