zoukankan      html  css  js  c++  java
  • samba简单配置

    Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。SMB

    (Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它

    为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。

    samb启动的进程

      nmbd  NetBIOS服务
      smbd

    监听端口
        早些版本的TCP139 445
              UDP 137和138

        我这里用的samba4没有找到UDP端口,只开放了139和445端口

    如果系统自带可以先卸载,rpm -e smba-common samba-client  --nodeps

    yum install samba samba-client samba-swat samba-common

    有依赖关系的包samba-winbind-clients、libsmbclient将自动安装上去。

    服务脚本
     /etc/rc.d/init.d/smb

    配置文件
     /etc/samba/
        smb.conf
        [globle]  全局定义
        
        [shared name]                共享名称    
        comment =                     //注释内容
        path =                                  //定义指定共享的目录
        browseable =    Yes/No                //目录是否可浏览
        public =    Yes/No             //是否允许所有人访问            
        read only = Yes/No            //是否只读
        writable =  Yes/No            //是否可写
        write list = user1, user2              //定义可写用户列表
                 @group1, +group2          //用@或者+加组名定义某些组可写
        valid user =                          //白名单,定义共享哪些用户访问
        invalid user =                        //黑名单

    testparm    专门测试/etc/samba/samba.conf是否有语法错误


    smaba的用户都是系统用户,但密码不是系统密码
    smbpasswd
        -a          添加系统用户为samba用户,密码最好不要和系统用户密码一样
        -d        启用samba账户
        -e          禁用samba账户
        -x          删除samba账户
        
           

    windows访问linux/unix使用UNC路径  格式 \ipsharednmae   可以在浏览器直接输入,也可以映射到本地



    linx访问windows使用命令smbclient,使用的也是系统用户,密码为系统用户密码
     smbclient
        -L  指定IP
        -U  指定用户
     
        smbclient -L 192.168.136.135
        smbclient UNC 路径 -U                //UNC路径不是反斜杠
        smbclient  //192.168.136.131/test

     
    挂载windows目录到本地
        -o指定额外挂载选项,以test用户挂载test到本地
        mount -t cifs //192.168.136.131/test    /mnt/test -o username=test
    开机自动挂载编辑/etc/fstab,为了安全,credentials指定挂载时使用的username和password

    //192.168.136.131/test   /mnt/test     cifs   credentials=/etc/samba/cred.pass 0 0


    操作文件命令类似于FTP
        lcd  切换linux本机路径
        cd   切换共享目录路径
        put   上传
        get   下载


    用户的权限是共享权限和文件系统权限的交集

    samba访问控制

      1. iptables139,445

      2.主配置文件中的hosts allow,指定某些主机,或者某些网络,空格隔开

    linux上配置samba
    1.在samba主配置下面添加共享配置

      [samba]
    
      comment = test
      path = /samba
      public = yes
      writable = yes
      write list = @samba


    2.测试文件有没有语法错误testparm  

    [root@localhost /]# testparm
    Load smb config files from /etc/samba/smb.conf
    rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
    Processing section "[homes]"
    Processing section "[printers]"
    Processing section "[samba]"
    Loaded services file OK.
    Server role: ROLE_STANDALONE
    Press enter to see a dump of your service definitions
    
    [global]
            workgroup = MYGROUP
            server string = Samba Server Version %v
            log file = /var/log/samba/log.%m
            max log size = 50


    3.查看端口是否开启TCP139端口,netstat -ntlup



    4.添加samba用户,可以自己事先创建的系统用户
     smbpasswd -a samba
    5.window访问linux共享
     如果访问不成功,检查selinxu是否关闭,防火墙是否允许

    右击windows设备计算机,添加网络驱动器然后添加地址

      然后输出添加samba账户是设定账户和密码

    如果没有写权限,则要检查,配置时是否可写,登录的用户(对应的系系统用户)是否对共享目录可写。必须两者同时满足才可写。

    配置samba4-swat    samba独立的web服务器
        yum install samba4-swat会安装依赖xinetd,
        xinetd是swat的超级守护进程(独立守护进程),为哪些平时不经常启动的服务(非独立守护进程,瞬时进程,短暂进程),监听端口。如果有请求  服务,xinetd为转交给对应的服务,服务完成后,瞬时进程关闭。

        启动swat服务只需要启动xinetd服务即可,超级守护进程(独立守护进程)有运行级别(--level),瞬时守护进程没有运行级别。
        每一个非独立守护进程在/etc/xinet.d/ 下面有配置文件

        启动瞬时进程两个方法
        1.chkconfig swat on
        2.编辑/etc/xinet.d/ 下面的配置文件,修改disable=yes 改为no

    /etc/xinet.d/swat配置

    service swat
    {
            port            = 901                              //监听端口
            socket_type     = stream                //套接字类型,STREAM是TCP协议
            wait            = no                  //是否允许多个请求
            only_from       = 127.0.0.1              //默认只允许本机访问,可以修改
            user            = root                  //访问时使用的账户,第一次登陆必须为root
            server          = /usr/sbin/swat            //启动的程序
            log_on_failure  += USERID                //如果错误记录USERID
            disable         = no                    //no表示允许    
    }
    ~      

    重启swat   service xinetd restart,查看901端口

                        LISTEN      2187/smbd           
    tcp        0      0 :::2049                     :::*                        LISTEN      -                   
    tcp        0      0 :::901                      :::*                        LISTEN      3111/xinetd         
    tcp        0      0 :::59303                    :::*                        LISTEN      -                   
    [root@localhost ~]# 

    windows访问192.168.136.135:901输入root账号和密码

    如果事先没有启动nmb服务,需要启动nmb服务

  • 相关阅读:
    Log4net使用总结,防止自定义的logger和root重复写入日志
    如何实现asp.net中FileUpload文件类型过滤功能
    C# 中 SerialPort.GetPortNames 获取串口号错误的问题及解决方法
    GOF 设计模式 [转载]
    CSS常用字体属性(多出的文本隐藏,或者以省略号的形式显示)和背景样式以及背景图的2个不常用属性:backgroundorigin和backgroundclip
    关于CSS各种选择器,还有各种引入样式表的区别,import导入样式表,在介绍一些伪类选择器
    MV*详解
    简易刮刮乐源码
    Gulp开发教程
    小程序的那些坑
  • 原文地址:https://www.cnblogs.com/kankanhua/p/4676737.html
Copyright © 2011-2022 走看看