【NAS】Samba基于security=user的匿名用户访问

    xiaoxiao2021-12-14  22

    基于参数Security= User,即用户需要登录认证才能访问共享资源,如何实现匿名用户直接访问文件资源。这种模式应该如何配置呢?

    1     服务器端配置

    1.1     配置文件

    1.1.1  配置参数

    源码如下:

    #======================= Global Settings=====================================

    [global]

    # ----------------------- Network-Related Options-------------------------

        workgroup= MYGROUP

        serverstring = Samba Server Version %v

    # --------------------------- Logging Options-----------------------------

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

        max logsize = 51200

    # ----------------------- Standalone Server Options------------------------

        security =user

        passdbbackend = tdbsam

    # ----------------------- Domain Members Options------------------------

    # ----------------------- Domain Controller Options------------------------

    # ----------------------- Browser Control Options----------------------------

    #----------------------------- Name Resolution-------------------------------

    # --------------------------- Printing Options -----------------------------

        loadprinters = yes

        cupsoptions = raw

    # --------------------------- File System Options---------------------------

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

    [yysmb02]

        comment =yynfs02

        path =/mnt/hyyfs/nfs02

        writeable= yes

        public =yes

        guest ok =yes

    1.1.2  检查配置参数

    使用testparm -v检测配置文件的正确性

    [root@node1 mnt]# testparm -v

    Load smb config files from /etc/samba/smb.conf

    rlimit_max: increasing rlimit_max (1024) to minimumWindows limit (16384)

    Processing section "[homes]"

    Processing section "[printers]"

    Processing section "[yysmb01]"

    Processing section "[yysmb02]"

    Loaded services file OK.

    Server role: ROLE_STANDALONE

     

    Press enter to see a dump of your servicedefinitions

     

    1.2     服务管理

    1. 启动服务

    [root@node1 mnt]# systemctl start smb

     

     

    2     Client端

    服务器端设置了Security = User,即用户需要登录认证才能访问共享资源

    但是,还有部分目录支持需匿名用户直接访问。这种模式应该如何配置呢。直接挂载如下报错

    [root@node2 ~]# mount -t cifs//192.168.192.91/yysmb02 /mnt/nfs/

    Password for root@//192.168.192.91/yysmb02:  ****

    mount error(13): Permission denied

    Refer to the mount.cifs(8) manual page (e.g. manmount.cifs)

     

    基于user验证级别的情况下,要实现一个目录匿名访问,有两种解决方案:

     

    2.1     挂载时关闭安全验证

    服务器端smb配置参数未设置map to guest参数。可以通过挂载参数关闭安全验证

    [root@node2 ~]# mount -t cifs -o sec=none//192.168.192.91/yysmb02 /mnt/nfs/

    [root@node2 ~]# df -h | grep yysmb02

    //192.168.192.91/yysmb02   60G 528M   60G   1% /mnt/nfs

    [root@node2 ~]# cd /mnt/nfs/

    [root@node2 nfs]# echo "1111" >test.log

    [root@node2 nfs]# ls

    test.log

    [root@node2 nfs]# cat test.log

    1111

    [root@node2 nfs]#

     

     

    2.2     方案二——设置map to guest参数

    2.2.1  服务器端配置更新

    服务器端smb配置参数设置map to guest参数。

    [root@node1 mnt]# grep "map to guest"/etc/samba/smb.conf

        map toguest = bad user

    [root@node1 mnt]#

    该参数,是将匿名用户映射为nobody用户。

    更新配置文件后,重新smb服务

    2.2.2  Smb客户端

    在要求输入密码时,直接回车

    [root@node2 mnt]# mount -t cifs //192.168.192.91/yysmb02/mnt/nfs/

    Password for root@//192.168.192.91/yysmb02:  <直接回车>

     [root@node2mnt]# df -h | grep yysmb02

    //192.168.192.91/yysmb02   60G 528M   60G   1% /mnt/nfs

     [root@node2mnt]# cd /mnt/nfs/

    [root@node2 nfs]# echo "22222" >test_2.log

    [root@node2 nfs]# cat test_2.log

    22222

    [root@node2 nfs]#

     

    ---轻轻地我走了,正如我轻轻地来---

    转载请注明原文地址: https://ju.6miu.com/read-968703.html

    最新回复(0)