CentOS 6.8安装Samba 4做Windows共享服务器

   2016-09-09 0
核心提示:在某些情况下为了实现Windows多台服务器负载均衡,需要使用共享来做图片及附件的上传空间。这个时候就需要使用到Samba、IIS虚拟目录等相关技术Web服务器使用upload作为上传的目录,现在需要使用2台服务器做负载均衡,后台使用一台Samba服务器作为文件共享存储

在某些情况下为了实现Windows多台服务器负载均衡,需要使用共享来做图片及附件的上传空间。

这个时候就需要使用到Samba、IIS虚拟目录等相关技术

Web服务器使用upload作为上传的目录,现在需要使用2台服务器做负载均衡,后台使用一台Samba服务器作为文件共享存储

1.建立Samba文件服务器

卸载旧的samba组件,CentOS 6默认安装的是3.6的版本

for a in `rpm -qa|grep samba`; do rpm -e --nodeps $a;done

2.安装Samba 4

yum -y install samba4 samba4-common samba4-client

3.建立共享用户

说明:由于Windows在IIS中站点下是不能直接通过磁盘映射的方式作为站点路径,必须使用原始的\\192.168.10.2\sns\upload这样的目录,而此时访问共享的用户就是应用程序池的用户。

这个时候就可以2种选择:

a.samba使用匿名访问可读写

b.修改站点应用程序池用户为访问samba用户

第一种:使用匿名方式访问共享

为共享创建系统用户及组

groupadd -g 8800 smbgroup

useradd -g smbgroup -s /sbin/nologin -d /dev/null smbuser

创建共享目录

mkdir /data/share

chown -R smbuser.smbgroup /data/share

chmod -R 755 smbuser.smbgroup /data/share

4.配置Samba

/etc/samba/smb.conf

[global]
        workgroup = WORKGROUP
        server string = FileServer
        #hosts allow = 127. 192.168.10
        log file = /var/log/samba/log.%m
        max log size = 50
        
        security = user
        passdb backend = tdbsam
        map to guest = bad user
        guest account = smbuser
        
        create mask = 0775
        force create mode = 0775
        directory mask = 0775
        force directory mode = 0775
        
        unix charset = cp936
        dos  charset = cp936
        
        use sendfile=yes
        write raw = yes
        read raw = yes
        max xmit=65535
        aio read size = 16384
        aio write size = 16384
[upload]
        comment = sns
        path = /var/www/html/upload
        browseable = no
        guest ok = yes
        writable = yes
        #valid users = @smbgroup

说明:在samba 4版本里面security这个值已经废弃了share,server。因此配置匿名访问就需要

        security = user
        map to guest = bad user

5.测试samba

[root@gz17img40 samba]# testparm
Load smb config files from /etc/samba/smb.conf
Processing section "[upload]"
Loaded services file OK.
Server role: ROLE_STANDALONE

Press enter to see a dump of your service definitions

# Global parameters
[global]
        dos charset = cp936
        unix charset = cp936
        server string = FileServer
        security = USER
        map to guest = Bad User
        guest account = smbuser
        log file = /var/log/samba/log.%m
        max log size = 50
        max xmit = 65535
        idmap config * : backend = tdb
        create mask = 0775
        force create mode = 0775
        directory mask = 0775
        force directory mode = 0775
        aio read size = 16384
        aio write size = 16384
        use sendfile = Yes


[upload]
        comment = sns
        path = /var/www/html/upload
        read only = No
        guest ok = Yes
        browseable = No

6.设置启动服务及开机启动

/etc/init.d/nmb start
/etc/init.d/smb start
chkconfig nmb on
chkconfig smb on

第二部分:Windows IIS使用共享作为路径

举例:

我需要在站点的SignPDF路径下建立PDF虚拟路径

1.点击“站点”--》对应的SignPDF目录,右击“SignPDF”,选择“建立虚拟目录”

CentOS 6.8安装Samba 4做Windows共享服务器

2.输入别名,我们这里输入“PDF”,然后选择对应的物理路径。

CentOS 6.8安装Samba 4做Windows共享服务器

注意:

  1. 这里的物理路径,如果使用共享的话,不能使用磁盘映射的路径,比如我将共享映射为Z盘,这里选择Z盘是无效的,必须使用共享的全路径

  2. 如果Samba不是使用匿名访问的话,这里就需要选择“连接为”,设置对应的用户及密码,这里的用户需要自行到Windows系统中进行添加,并且用户名密码可访问共享。

第二种:采用用户名和密码的方式访问共享

为共享创建系统用户及组

groupadd -g 8800 smbgroup

useradd -g smbgroup -s /sbin/nologin -d /dev/null smbuser

创建共享目录

mkdir /data/share

chown -R smbuser.smbgroup /data/share

chmod -R 755 smbuser.smbgroup /data/share

创建smb访问账号及密码,smb账号要在系统中有同名账号,否则创建失败

smbpasswd -a smbuser

输入密码123456

4.配置Samba

/etc/samba/smb.conf

[global]
        workgroup = WORKGROUP
        server string = FileServer
        #hosts allow = 127. 192.168.10
        log file = /var/log/samba/log.%m
        max log size = 50
        
        security = user
        passdb backend = tdbsam
        #map to guest = bad user
        #guest account = smbuser
        
        create mask = 0775
        force create mode = 0775
        directory mask = 0775
        force directory mode = 0775
        
        unix charset = cp936
        dos  charset = cp936
        
        use sendfile=yes
        write raw = yes
        read raw = yes
        max xmit=65535
        aio read size = 16384
        aio write size = 16384
[upload]
        comment = sns
        path = /var/www/html/upload
        browseable = no
        #guest ok = yes
        writable = yes
        valid users = @smbgroup

这里对比上面匿名访问的注释了

                #map to guest = bad user
        #guest account = smbuser
        
        在共享的时候修改了
        #guest ok = yes
                valid users = @smbgroup

5.测试samba

[root@gz17img40 samba]# testparm
Load smb config files from /etc/samba/smb.conf
Processing section "[upload]"
Loaded services file OK.
Server role: ROLE_STANDALONE

Press enter to see a dump of your service definitions

# Global parameters
[global]
        dos charset = cp936
        unix charset = cp936
        server string = FileServer
        security = USER
        log file = /var/log/samba/log.%m
        max log size = 50
        max xmit = 65535
        idmap config * : backend = tdb
        create mask = 0775
        force create mode = 0775
        directory mask = 0775
        force directory mode = 0775
        aio read size = 16384
        aio write size = 16384
        use sendfile = Yes


[upload]
        comment = sns
        path = /var/www/html/upload
        read only = No
        browseable = No
        valid users = @smbgroup

这个时候就可以通过访问\\192.168.10.20\upload,输入用户名密码smbuser,123456

6.设置启动服务及开机启动

/etc/init.d/nmb start
/etc/init.d/smb start
chkconfig nmb on
chkconfig smb on

第二部分:Windows IIS使用共享作为路径

举例:

我需要在站点的SignPDF路径下建立PDF虚拟路径

1.在系统中创建smbuser,密码一定要与上面创建的smbuser的密码一致也为123456

2.点击“站点”--》对应的SignPDF目录,右击“SignPDF”,选择“建立虚拟目录”

CentOS 6.8安装Samba 4做Windows共享服务器

3.输入别名,我们这里输入“PDF”, 然后选择对应的物理路径,并点击“连接为”,输入账号smbuser密码123456

CentOS 6.8安装Samba 4做Windows共享服务器

4.现在就可以正常访问共享里的文件及内容了,但是你会发现无法上传。这是因为需要在web.config中定义用户名密码,在<system.web>下增加

<identity impersonate="true" userName="smbuser" password="123456" />

现在就可以正常上传图片了

问题:

1.在配置Samba后发现在A节点建立的目录,B节点无法写入,这是因为2个用户是一致的但是用户的组不一致。比如A服务器主机名为ServerA,B服务器的主机名为ServerB,因此在Samba中的A节点对应的权限就是ServerA\smbuser,B服务器对应的权限就是ServerB\smbuser,这就是造成2台服务器权限不一致的问题。

在smb.conf中添加

        create mask = 0775
        force create mode = 0775
        directory mask = 0775
        force directory mode = 0775

再重启服务即可

2.根据上面处理后仍然无法写入,就可能是对.NET临时目录没有设置写入权限

将上面的smbuser给下列目录

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files
C:\Windows\Microsoft.NET\Framework64\v2.0.50727\Temporary ASP.NET Files

写入权限即可

 
标签: Samba 服务器
反对 0举报 0 评论 0
 

免责声明:本文仅代表作者个人观点,与乐学笔记(本网)无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
    本网站有部分内容均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,若因作品内容、知识产权、版权和其他问题,请及时提供相关证明等材料并与我们留言联系,本网站将在规定时间内给予删除等相关处理.

  • 如何在Fedora或CentOS上使用Samba共享
    如何在Fedora或CentOS上使用Samba共享
    如今,无论在家里或者是办公场所,不同的电脑之间共享文件夹已不是什么新鲜事了。在这种趋势下,现代操作系统通过网络文件系统的方式使得电脑间数据的交换变得简单而透明。如果您工作的环境中既有微软的Windows又有Linux,那么,一个共享文件及目录的方式便是
    02-10
  • Debian设置samba共享 linux添加samba用户
    Android手机可以通过局域网共享来访问PC上的数据,Android连接到路由器的无线网络就可以与PC复制相片音乐等,相比于再连接一根USB,无线网络方便多了。在winxp下共享设置很方便,Linux下需要使用samba。1. 安装软件包sudo apt-get install samba samba-common
    02-10
  • 无法访问Fedora的samba共享 samba访问不了共享
    配置好samba服务后,却发现windows无法访问。经过多次试验与fedora的防火墙有关系。关闭防火墙:#service iptables stop或清空规则:#iptables -Fwindows都能够访问samba。经打开iptables,发现:[root@localhost user]# vi /etc/sysconfig/iptables# Firewal
    02-10
  • ubuntu安装配置Samba ubuntu安装配置hadoop
    一、安装Samba  apt-get install samba二、配置  方案一、最大权限配置  任何用户可对共享文件夹读写  1、建立共享文件夹      mkdir /home/wangyx/share    chmod 777 /home/wangyx/share   2、修改Samba配置    cp /etc/samba/smb.
    02-10
  • linux centos7--linux和window共享文件(samba)
    linux centos7--linux和window共享文件(samba
    这里以VMWARE与主控真机来做实现实现由于SMB在centos中自带,所以,无需像网上说的样子,要这删除,那卸载,直接搜索是否存在SAMBA的安装文件一 查询包是否存在[root@localhost ~]# rpm -qa|grep sambasamba-client-libs-4.4.4-9.el7.x86_64samba-common-lib
    02-09
  • CentOS 6.10 安装及配置 Samba 4.x
    安装samba服务器#yum install samba4查看samba服务安装位置#whereis samba临时或永久关闭SELinux临时关闭:#getenforceEnforcing#setenforce 0#getenforcePermissive永久关闭:临时关闭:[root@localhost ~]# getenforceEnforcing[root@localhost ~]# setenfo
    02-09
  • DEBIAN配置samba及固定IP地址设置 debian系统配
    先来设置固定IP地址:#vim /etc/networks     #auto lo                -------------------------原始设置项,系统回环ping 127.0.0.1用的,在文件/etc/networks里面有如下内容(                            defa
    02-09
  • debian 11   开启  samba  共享文件夹
    debian 11 开启 samba 共享文件夹
    安装apt-get install   samba  安装时,提示搜索不到 此包时解决办法1:apt-get update  更新源解决办法2:更改镜像源,可以采用阿里云,网易云等镜像站里提供的镜像源使用帮助设置完成后记得 也需要执行 apt-get update通过 apt search  samba 进行检索 sa
    02-09
  • debian下samba配置 Debian samba
    服务器端配置过程: 1.apt-get install samba2.修改/etc/samba/smb.conf文件3.添加用户并设置samba访问密码  smbpasswd -a username4.重启一下samba服务:  /etc/init.d/smb restart 1.apt-get install samba (安装) debconf(选择) workgroup(随便输入
    02-09
  • [原创] Debian9上配置Samba
    Samba概述Samba是一套使用SMB(Server Message Block)协议的应用程序,通过支持这个协议,Samba允许Linux服务器与Windows系统之间进行通信,使跨平台的互访成为可能。Samba采用C/S模式,其工作机制是让NetBIOS( Windows 网上邻居的通信协议)和SMB两个协议运行于
    02-09
点击排行