zoukankan      html  css  js  c++  java
  • Samba文件服务器详细配置步骤

    准备安装

    环境:CentOS 6.3_x64bit

    安装:Minimal(最小)

    1、配置IP地址

    2、挂载:[root@localhost ~]# mount -t iso9660 /dev/cdrom /etc/mnt

    3、安装YUM

    4、查看Samba软件包

    [root@localhost ~]# rpm -qa | grep samba*

     package samba-3.0.33-3.7.el5.i386.rpm is not installed          //samba服务器的所有文件

     package samba-client-3.0.33-3.7.el5.i386.rpm is not installed   //samba客户机的所有文件

     package samba-common-3.0.33-3.7.el5.i386.rpm is not installed   //服务器和客户机都需要的公共文件夹

     package samba-swat-3.0.33-3.7.el5.i386.rpm is not installed     //redhat公司为图形界面编辑的文件

     安装 Samba(方法一)#yum install samba (推荐使用)

      安装 Samba(方法二)使用RPM包安装

       #rpm -ivh samba-3.0.33-3.7.el5.i386.rpm            //samba服务器安装的所有文件

       #rpm -ivh samba-client-3.0.33-3.7.el5.i386.rpm     //samba客户机安装的所有文件   

    5、创建共享文件夹:#mkdir /data/share/public caiwu yanfa jishu 

                             #chmod 777 public caiwu yanfa jishu 

    6、创建三个用户组:

       #groupadd caiwu yangfa jishi

       创建用户:(添加到相应的组里)

       #useradd user1 -g caiwu

       #smbpasswd -a user1

       小提示:

       smbpasswd -a 添加 user 

                 -x 删除

                 -e 启用

                 -d 禁用

    7、备份Samba 配置文件

         备份:cp /etc/samba/smb.conf  /etc/samba/smb.confbak

         恢复:cp /etc/samba/smb.confbak  /etc/samba/smb.conf 

    8、配置vi /etc/samba/smb.conf

     ======================= Global Settings =====================================

        [global] //设置samba服务整体环境

        workgroup = WORKGROUP //设置工作组名

        server string = Samba Server //服务器名说明

        hosts allow = 192.168.1. 192.168.2. 127. //限制可访问此服务的IP范围,默认是全部允许的,要是想设设置去掉前面的";"

        printcap name = /etc/printcap //打印机配置文件

        load printers = yes //是否共享打印机

        # bsd, sysv, plp, lprng, aix, hpux, qnx, cups

        printing = cups //打印机的类型.标准打印机类型包括以上几种.

        guest account = pcguest //pcguest为用户名.可改去掉前边的";"让用户以

        pcguest身份匿名登录,但保证/etc/passwd中有此人.

        log file = /var/log/samba/%m.log //为登录服务器的用户建立不同的日志文件.

        max log size = 0 //日志文件的大小,"0"代表无限制

        //以下是smb.conf文件对服务器安全级别的设置

        security = user //安全性的级别共四种.share:不验证(不推荐)、user:验证用户名和密码 (推荐)、server:服务器验证、domain:windows域验证

        password server = 密码验证服务器.

        password level = 8 //密码级别

        username level = 8

        encrypt passwords = yes //用户密码加密,当然也可以不加密

        smb passwd file = /etc/samba/smbpasswd //将密码服务器设置为samba server.需要这个东东来指定验证文件.这个是文件的路径,如果samba server是指定的winserver这个不需要

        ssl CA certFile = /usr/share/ssl/certs/ca-bundle.crt

        unix password sync = Yes

        passwd program = /usr/bin/passwd %u

        passwd chat = *New*password* %n *Retype*new*password* %n

        *passwd:*all*authentication*tokens*updated*successfully*

        pam password change = yes

        username map = /etc/samba/smbusers   //如果每个windows用户在samba服务器中有帐户这个可以不设

        include = /etc/samba/smb.conf.%m

        obey pam restrictions = yes

        interfaces = 192.168.12.2/24 192.168.13.2/24 如果多网段要在这里列出

        remote announce = 192.168.1.255 192.168.2.44

        local master = no

        os level = 33

        domain master = yes

        preferred master = yes

        domain logons = yes

        logon script = %m.bat

        logon script = %U.bat

        logon path =

        \%LProfiles\%U

        wins support = yes //wins server支持

        wins server = w.x.y.z

        wins proxy = yes //wins 代理设置

        dns proxy = no //dns代理设置

        preserve case = no

        short preserve case = no

        default case = lower

        case sensitive = no

        #============================ Share Definitions ===========================

    [public]                             //设置共享文件夹名称

         comment = public                //注释

         path = /data/share/public       //samba服务器共享目录路径

         public = yes                    //所有人公开共享

         write list = yanghw             //可写用户或组       

         create mode = 0777              //建立文件时所给的权限

         directory mode = 0777           //建立文件时所给的权限

    [技术部]                             //设置共享文件夹名称

         comment = 技术部资料            //注释

         path = /data/share/jishu        //samba服务器共享目录路径

         public = no                     //禁止共享,指定的用户共享

         valid users = @jisji,user2     //设定只有此名单内的用户才能访问共享资源(拒绝优先)(用户名/@组名

         write list = @jishu             //可写用户或组

         create mode = 0775              //建立文件时所给的权限

         directory mode = 0775           //建立目录时所给的权限

    注释说明:

    #============================== Share Definitions =============================

    [homes]

    comment = Home Directories

    browseable = no

    writable = yes

    valid users = %S

    使用者本身的"家"目录,当使用者以samba使用者身份登入samba server 后,

    samba server 底下会看到自己的家目录,目录名称是使用者自己的帐号

    [分享的资源名称]

    <指令1>; = (参数)

    <指令2>; = (参数)

    ..........................

    要提供分享资源时,须先把欲分享的资源以 [ ] 符号括住,底下通常会带指令和参数来表示此资源的设定和存取权限等,详情如下:

    [    ]  --------- 共享文件夹名称

    Comment = XXX---------注释说明

    Path = /data/share/public------------分享资源的完整路径名称,除了路径要正确外,目录的权限也要设对

    Browseable = ------是yes/否no在浏览资源中显示共享目录,若为否则必须指定共享路径才能存取

    Printable = -------是yes/否no允许打印

    hide dot ftles = --是yes/否no隐藏隐藏文件

    Public = ----------是yes/否no公开共享,若为否则进行身份验证(只有当security = share 时此项才起作用)

    guest ok = --------是yes/否no公开共享,若为否则进行身份验证(只有当security = share 时此项才起作用)

    read only = -------是yes/否no以只读方式共享当与writable发生冲突时也writable为准

    Writable = --------是yes/否no不以只读方式共享当与read only发生冲突时,无视read only

    vaild users = -----设定只有此名单内的用户才能访问共享资源(拒绝优先)(用户名/@组名)

    invalid users = ---设定只有此名单内的用户不能访问共享资源(拒绝优先)(用户名/@组名)

    read list = -------设定此名单内的成员为只读(用户名/@组名)

    write list = ------若设定为只读时,则只有此设定的名单内的成员才可作写入动作(用户名/@组名)

    create mask = -----建立文件时所给的权限

    directory mask = --建立目录时所给的权限

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

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

    allow hosts = -----设定只有此网段/IP的用户才能访问共享资源

    allwo hosts = 网段 except IP

    deny hosts = ------设定只有此网段/IP的用户不能访问共享资源

    allow hosts = 本网段指定IP指定IP

    deny hosts = 指定IP本网段指定IP

    9、重启:

       #chkconfig smb on        //设置 Samba开机自动启动 

       #service smb restart      //启动 重启 停止samba服务器

       #service nmb restart

       #testparm                              //测试smb.conf文件是否有语法错误

    10、关闭防火墙

      #iptables -F

    11、开启Samba 端口:

      # vim /etc/sysconfig/iptables

      -A INPUT -m state --state NEW -m tcp -p tcp --dport 137 -j ACCEPT

      -A INPUT -m state --state NEW -m tcp -p tcp --dport 138 -j ACCEPT

      -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   

      # service iptables restart

       iptables:清除防火墙规则:                                 [确定]

       iptables:将链设置为政策 ACCEPT:filter                    [确定]

       iptables:正在卸载模块:                                   [确定]

       iptables:应用防火墙规则:                                 [确定]

    12、XP访问:

          \0.0.0.0       

    Samba如何隐藏用户目录

    如下(前面添加注释“;”):

    #============================ Share Definitions ==============================

    ;[homes]

    ;       comment = Home Directories

    ;       browseable = no

    ;       writable = yes

    ;       valid users = %S

    ;       valid users = MYDOMAIN\%S

    注意:

    SELinux关闭

    1 永久方法 – 需要重启服务器

    修改/etc/selinux/config文件中设置SELINUX=disabled ,然后重启服务器。

    2 临时方法 – 设置系统参数

    使用命令setenforce 0

    LINUX关闭防火墙

    1 重启后永久性生效:

    开启:chkconfig iptables on

    关闭:chkconfig iptables off

    2 即时生效,重启后失效:

    开启:service iptables start

    关闭:service iptables stop

    需要说明的是对于Linux下的其它服务都可以用以上命令执行开启和关闭操作。

    在开启了防火墙时,做如下设置,开启相关端口,

    修改/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

       -A INPUT -m state --state NEW -m udp -p udp --dport 137 -j ACCEPT

       -A INPUT -m state --state NEW -m udp -p udp --dport 138 -j ACCEPT

       

    service iptables restart  重启防火墙,使规则生效

    或者:

    /etc/init.d/iptables status 会得到一系列信息,说明防火墙开着。

    /etc/rc.d/init.d/iptables stop 关闭防火墙

    最后:

    在根用户下输入setup,进入一个图形界面,选择Firewall configuration,进入下一界面,选择Security Level为Disabled,保存。重启即可。

    (2)、server 身份验证 samba帐号库(其他服务器)

    举例

      共享名    物理路径    权限

      public      /abc                                  任何人 ro

      smbzs    /zouyunxia      zouyunxia  rw

      smbls    /lisi                  lisi              rw

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

    root@zyx ~]# service smb restart  //重启服务

    [root@zyx ~]# mkdir /abc /zouyunxia /lisi  //建立文件目录

    [root@zyx ~]# ll -d /abc /zouyunxia /lisi    //查看文件目录

    [root@zyx ~]# useradd zouyunxia  //建立帐号zouyunxia

    [root@zyx ~]# useradd lisi  //建立帐号lisi 

    [root@zyx ~]# chown zouyunxia.zouyunxia /zouyunxia/  //修改文件所属组

    [root@zyx ~]# chown lisi.lisi /lisi/  //修改文件所属组

    [root@zyx ~]# ll -d /abc /zouyunxia /lisi //查看文件目录

    注:为了区分三个文件目录,在三个文件目录下分别各建一个文件

    [root@zyx ~]# cd /abc/

    [root@zyx abc]# touch f1.public

    [root@zyx abc]# cd /zouyunxia/

    [root@zyx zouyunxia]# touch f1.zouyunxia

    [root@zyx zouyunxia]# cd /lisi/   

    [root@zyx lisi]# touch f1.lisi   

    [root@zyx lisi]# smbpasswd -a zouyunxia  //给帐号设置密码

    New SMB password:

    Retype new SMB password:

    Added user zouyunxia.

    [root@zyx lisi]# smbpasswd -a lisi    //给帐号设置密码   

    New SMB password:

    Retype new SMB password:

    Added user lisi.

    root@zyx ~]# service smb restart    //重启服务

    访问服务器

    用账号zouyunxia登录

    成功登录到服务器

    打开zouyunxia的文件目录

    新建文件夹

    给文件重命名

    删除文件

    从服务器上下载文件

    用帐号李四登录到服务器

    http://www.linuxidc.com/Linux/2012-10/72584p6.htm

    .t 粘作位

    操作对象:目录的权限是777

    作用:在一个公共的文件夹内自己只能删除自己的东西

    chmod o+t /tmp

    chmod 1777 /tmp

    #samba用户信息查询 ##条件:必须在穿件用户前 修改 /etc/samba/smb.conf 文件 #将注释掉 passwdb backend = tdbsam //backen 阻碍 #添加一行新的代码 smb password file = /etc/samba/smbpasswd

    ###查看方式。进入文件 smbpasswd 查询或者用命令 pdbedit —L查询

  • 相关阅读:
    重写保存按钮save事件
    隐藏列获取不到值,表格选中行提示未选中
    前后台获取上下文context
    editGrid分录表格
    通用查询-高级查询
    js保留位和取整
    在Visual Studio中使用C++创建和使用DLL
    Lua中的一些库(1)
    Lua中的面向对象编程
    Lua中的模块与包
  • 原文地址:https://www.cnblogs.com/zajsky/p/3446068.html
Copyright © 2011-2022 走看看