samba搭建实现匿名和非匿名共用共享

samba搭建实现匿名和非匿名共用共享

实现功能:搭建公司活动照片共享,普通员工可以查看和上传但不能修改和删除。人事部需要有管理照片权限,上传、添加和删除

搭建环境:centos6.5镜像+samba-3.6.9

yum安装samba服务

--------------------------------------------------------------

[root@localhost ~]# mkdir /mnt/cdrom && mount /dev/cdrom /mnt/cdrom

mount: block device /dev/sr0 is write-protected, mounting read-only

#新建名为cdrom的目录并且挂载centos6.5光盘镜像到该目录

[root@localhost ~]# ll /mnt/cdrom/

总用量 682

-r--r--r--. 2 root root     14 11月 29 2013 CentOS_BuildTag

dr-xr-xr-x. 3 root root   2048 11月 29 2013 EFI

-r--r--r--. 2 root root    212 11月 28 2013 EULA

-r--r--r--. 2 root root  18009 11月 28 2013 GPL

dr-xr-xr-x. 3 root root   2048 11月 29 2013 images

dr-xr-xr-x. 2 root root   2048 11月 29 2013 isolinux

dr-xr-xr-x. 2 root root 655360 11月 29 2013 Packages

-r--r--r--. 2 root root   1354 11月 28 2013 RELEASE-NOTES-en-US.html

dr-xr-xr-x. 2 root root   4096 11月 29 2013 repodata

-r--r--r--. 2 root root   1706 11月 28 2013 RPM-GPG-KEY-CentOS-6

-r--r--r--. 2 root root   1730 11月 28 2013 RPM-GPG-KEY-CentOS-Debug-6

-r--r--r--. 2 root root   1730 11月 28 2013 RPM-GPG-KEY-CentOS-Security-6

-r--r--r--. 2 root root   1734 11月 28 2013 RPM-GPG-KEY-CentOS-Testing-6

-r--r--r--. 1 root root   3380 11月 29 2013 TRANS.TBL

[root@localhost ~]# 

查看该挂载目录确定显示光盘内容

-------------------------------------------------------------

[root@localhost ~]# mkdir /etc/yum.bak && mv /etc/yum.repos.d/* /etc/yum.bak

[root@localhost ~]# 

#新建yum.bak目录用于备份默认yum配置文件,并且把原有yum.repos.d目录下所有系统默认配置文件移动到该备份目录

[root@localhost ~]# vim /etc/yum.repos.d/cdinstll.repo

#新建自定义名称为cdinstll.repo的yum配置文件

[cdinstall]

#自定义命名

name=cdinstall

#自定义命名

baseurl=file:///mnt/cdrom

#自定义路径,此路径为光盘挂载目录

enabled=1

#是否检查GPG-KEY,0为不检查,1为检查

gpgcheck=0

#是否启用yum源,0为不启用,1为启用

#配置完毕wq保存退出

yum clean all

#配置完成后要清除下yum缓存

[root@localhost yum.repos.d]# yum install samba

#yum安装samba服务

[root@localhost yum.repos.d]# rpm -qa | grep mba

samba-winbind-clients-3.6.9-164.el6.x86_64

samba-common-3.6.9-164.el6.x86_64

samba-3.6.9-164.el6.x86_64

samba-client-3.6.9-164.el6.x86_64

samba-winbind-3.6.9-164.el6.x86_64

samba4-libs-4.0.0-58.el6.rc4.x86_64

[root@localhost yum.repos.d]# 

#查看已经安装的samba服务

[root@localhost yum.repos.d]# chkconfig iptables off

#关闭防火墙

[root@localhost yum.repos.d]# vim /etc/selinux/config

#关闭selinux(SELINUX=disabled)需要重启服务器

[root@localhost yum.repos.d]# reboot

#重启下服务器

-------------------------------------------------------------------------------------------------

[root@localhost ~]# cp /etc/samba/smb.conf /etc/samba/smb.conf.bak

#备份下samba的配置文件

[root@localhost ~]# cat /etc/samba/smb.conf.bak | grep -iv ^"#" | grep -iv ^"$" | grep -iv ";" > /etc/samba/smb.conf

#过滤下配置文件中的多余信息

[root@localhost ~]# cat /etc/samba/smb.conf

#查看配置文件过滤后的配置信息

[global]


    workgroup = MYGROUP

    server string = Samba Server Version %v



    # logs split per machine

    log file = /var/log/samba/log.%m

    # max 50KB per log file, then rotate

    max log size = 50


    security = user

    passdb backend = tdbsam



    # the login script name depends on the machine name

    # the login script name depends on the unix user used

    # disables profiles support by specifing an empty path


    load printers = yes

    cups options = raw

    #obtain list of printers automatically on SystemV


[homes]

    comment = Home Directories

    browseable = no

    writable = yes


[printers]

    comment = All Printers

    path = /var/spool/samba

    browseable = no

    guest ok = no

    writable = no

    printable = yes

[root@localhost ~]# 

#根据需求并没有要求打印 所以【printers】配置信息可以删除或注释掉


[global]

        workgroup = MYGROUP

        server string = Samba Server Version %v

        log file = /var/log/samba/log.%m

        max log size = 50

        security = user

        passdb backend = tdbsam

        load printers = yes

        cups options = raw

[homes]

        comment = Home Directories

        browseable = no

        writable = yes

#整理完毕wq保存退出,以上就是删除后需求的剩余配置信息,看起来简洁明了多了

[root@localhost ~]# vim /etc/samba/smb.conf

workgroup = workgroup

#工作组修改为workgroup与公司Windows系统默认工作组保持一致

security = share

#修改默认访问安全模式为匿名访问

browseable = yes

#浏览改为YES

[root@localhost ~]#

#修改配置文件信息使Windows员工客户机可以访问

[root@localhost ~]# service smb restart

关闭 SMB 服务:                                            [失败]

启动 SMB 服务:                                            [确定]

[root@localhost ~]# 

#修改完成后重启Samba服务,在确定服务器时间和客户机时间一致的情况下现在就可以匿名访问Samba服务器共享数据了,访问方式\\ip地址

spacer.gif

会看到一个名称为homes的文件夹但不能打开,因为还没有权限


------------------------------------------------------------------------------------------------

[root@localhost ~]# mkdir /smb-photo

[root@localhost ~]# mkdir /smb-photo/活动照片

[root@localhost ~]# mkdir /smb-photo/公司美女

[root@localhost ~]# mkdir /smb-photo/公司帅哥

[root@localhost ~]# mkdir /smb-photo/上传照片

#新建自定义名称为smb-pohoto的目录,里边分别新建要求所需的目录

[root@localhost smb-photo]# chmod 777 上传照片

#修改上传照片的目录权限为777,即任何人都可以把照片存放在该目录 其他目录普通用户则只有查看和执行权限并没有写入权限

[root@localhost smb-photo]# vim /etc/samba/smb.conf

[global]

        workgroup = workgroup

        server string = Samba Server Version %v

        log file = /var/log/samba/log.%m

        max log size = 50

        security = share

        passdb backend = tdbsam

        load printers = yes

        cups options = raw

[公司美女]

        comment = Home Directories

        #评语可随便写

        path = /smb-photo/公司美女

        #该目录所在系统路径

        public = yes

        #是否公共匿名可以访问

        browseable = yes

        #是否可以浏览

        writable = yes

        #是否可以写入(此处权限给写入是为了以后新建人事部管理用户的写入,不想公共匿名用户写入可以直接在系统目录775权限即可)

[公司帅哥]

        comment = Home Directories

        path = /smb-photo/公司帅哥

        public = yes

        browseable = yes

        writable = yes

[活动照片]

        comment = Home Directories

        path = /smb-photo/活动照片

        public = yes

        browseable = yes

        writable = yes

[上传照片]

        comment = Home Directories

        path = /smb-photo/上传照片

        public = yes

        browseable = yes

        writable = yes

[root@localhost smb-photo]# service smb restart

关闭 SMB 服务:                                            [确定]

启动 SMB 服务:                                            [确定]

[root@localhost smb-photo]# 

#修改配置文件为上图然后保存退出重启Samba服务

#之后再次用客户机访问就可以打开【公司美女】【公司帅哥】【活动照片】【上传照片】几个文件夹,并且任何客户端访问都有权限把照片上传到【上传照片】的文件夹,而其他文件夹则只有访问权限没有写入权限

------------------------------------------------------------------------------------------------


[root@localhost ~]# useradd smb-root

[root@localhost ~]# passwd smb-root

更改用户 smb-root 的密码 。

新的 密码:123456

无效的密码: 它基于字典单词

无效的密码: 过于简单

重新输入新的 密码:123456

passwd: 所有的身份验证令牌已经成功更新。

[root@localhost ~]# 

#新建管理Samba的系统用户

[root@localhost ~]# ll -d /smb-photo/

drwxr-xr-x 6 root root 4096 12月 21 15:58 /smb-photo/

[root@localhost ~]# chown smb-root.smb-root /smb-photo/

[root@localhost ~]# ll -d /smb-photo/

drwxr-xr-x 6 smb-root smb-root 4096 12月 21 15:58 /smb-photo/

[root@localhost ~]# 

#为了以后便于管理和权限分配 把新建的smb-photo目录的属主和属组修改为新建的samba管理用于,即smb-root

[root@localhost ~]# cd /smb-photo/

[root@localhost smb-photo]# chown smb-root.smb-root *

[root@localhost smb-photo]# ll

总用量 16

drwxr-xr-x 2 smb-root smb-root 4096 12月 21 15:57 公司美女

drwxr-xr-x 2 smb-root smb-root 4096 12月 21 15:57 公司帅哥

drwxr-xr-x 2 smb-root smb-root 4096 12月 21 15:57 活动照片

drwxrwxrwx 2 smb-root smb-root 4096 12月 21 15:58 上传照片

[root@localhost smb-photo]# 

#共享目录下的子目录也雷同

[root@localhost smb-photo]# smbpasswd -a smb-root

New SMB password:654321

Retype new SMB password:654321

Added user smb-root.

[root@localhost smb-photo]# 

#添加系统用户所对应的Samba用户

[root@localhost smb-photo]# vim /etc/samba/smb.conf

[照片管理]

        comment = Home Directories

        path = /smb-photo

        #用于照片管理路径

        public = no

        #关闭公共匿名访问

        browseable = yes

        #是否可以浏览

        writable = yes

        #是否可以写入

        valid users = smb-root

        #有效的登录用户

        write list = smb-root

        #写入用户列表

        directory mask =0775

        #该用户创建目录的权限

        create mask = 0775

        #该用户创建文件的权限

[root@localhost smb-photo]# 

#新增照片管理,目录为/smb-photo用于人事部照片管理


#此时就实现了人事部的需求,普通员工访问不需输入账户密码,只有打开【照片管理】时会弹出用户登录框,输入smb-root账户密码就可以登录了,且该目录对应的是/smb-photo,该目录下的所有子目录人事部都有新建修改和删除的权限,而普通用户对其他目录只有查看权限

#【以下为非匿名访问】

[root@localhost smb-photo]# vim /etc/samba/smbusers

root = administrator admin

nobody = guest pcguest smbguest

smb-root = rsb

#为了不让别人知晓系统用户smb-root把该用户映射成虚拟不存在的rsb用户进行访问

[root@localhost smb-photo]# vim /etc/samba/smb.conf

security = user

#安全验证方式更改为用户验证

username map = /etc/samba/smbusers

#全局配置加入用户名映射数据库文件指向

具体哪个用户可以访问哪个文件可以在smb.conf配置文件中的[]目录下写

如:想用123用户访问名称为abc的共享

[root@localhost smb-photo]# vim /etc/samba/smbusers

[abc]

         valid users = 123

         write list = 123

[root@localhost smb-photo]#

-------------------------------------------------------------------------------







你可能感兴趣的:(samba,匿名非匿名共用)