`
xiangxingchina
  • 浏览: 523693 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Samba服务器的安装配置和应用

阅读更多
随着计算机网络的发展,实现不同操作系统的文件和打印 共享成为一个必然的趋势。用过Windows的用户都知道,网上邻居是一个可以方便地访问其他Windows计算机资源的共享方式。为了使Windows 用户以及Linux用户能够互相访问彼此的资源,Linux提供了一套资源共享的软件——Samba服务器。 
4.1 SMB 协议和 Samba 简介  
4.1.1 SMB 协议  
为了使Windows 主机间的资源能够共享,微软于1980年开发了SMB(Server Message Block)通信协议,并通过SMB通信协议,使网络上各台主机之间能够共享文件、打印机等资源。目前类似这种资源共享的通信协议还有NFS、 Appletalk、Netware等。 
4.1.2 Samba 简介  
这些年来,Windows 和Linux 操作系统各自拥有自己的用户群和市场。然而在一般的公司或学校里,可能同时有Windows 和Linux 操作系统的主机。Windows 主机彼此间可利用“网上邻居”来访问共享的资源,NFS也能使Linux 主机之间实现资源共享。但如何能使Windows 主机和Linux主机之间实现资源共享呢? 
微软的“网上邻居(就是Windows 上利用SMB通信协议实现资源共享的程序)”一经推出,便广受用户的好评,大家突然觉得原来要在网上共享资源尽是那么简单,有鉴于此,便有一些Linux 爱好者开始在Linux 主机上实现SMB通信协议,后来这个实现了SMB功能的软件既被称为 Samba ,它使得Windows 主机和Linux主机之间实现了资源共享。 
 4.1.3 Samba 软件的功能  
由于SMB通信协议采用的是 Client/Server架构,所以Samba 软件可以分为客户端和服务器端两部分。通过执行Samba 客户端程序,Linux 主机便可以使用网络上Windows 主机所共享的资源;而在Linux 主机上安装Samba 服务器,则可以使Windows 主机访问Samba 服务器共享的资源
Samba 提供了以下功能: 
  (1)共享Linux 的文件系统
(2)共享安装在Samba 服务器上的打印机
(3)使用Windows 系统共享的文件和打印机 
(4)支持 Windows 域控制器和Windows 成员服务器对使用Samba 资源的用户进行认证 
(5)支持WINS名字服务器解析及浏览

    ( 6 )支持 SSL 安全套接层协议

 

4.2 安装和启动 Samba

Samba 软件安装在 Linux 一端。目前主要由一个 20 人左右的 Samba 团队负责维护及开发,用户可以在 http://www.samba.org/ 站点获得 Samba 的详细信息。同时,也可以在网页上下载 Samba 的最新版本  

4.2.1 安装 Samba 服务器  

如果用户在安装 Linux 时已经安装了 Samba ,就无需再安装了可以通过下列命令确定是否已经安装了 Samba  

[root@ smb_server  root]# rpm  –qa | grep  samba

samba-commom -2.2.7a-7.9.0

samba-2.2.7a-7.9.0

samba-client-2.2.7a-7.9.0

redhat-config-samba-1.0.4-1

samba-swat-2.2.7a-7.9.0

若出现这 5 个软件包,则表示已经安装了 Samba ,否则必须安装 Samba  

[root@smb_server  root]# mount  /dev/cdrom  /mnt/cdrom  

将光盘挂载到 /mnt/cdrom 目录 ]

[root@smb_server  root]# cd  /mnt/cdrom/RedHat/RPMS 

切换到放置 rpm 文件的目录  

[root@smb_server  root]# rpm  -ivh samba-commom -2.2.7a-7.9.0i386.rpm

这是 Samba 必备的程序,必须安装  

[root@smb_server  root]# rpm  -ivh samba-2.2.7a-7.9.0.i386.rpm

安装 Samba 服务器程序,可以使我 Windows 主机访问 Samba 服务器共享的资源。  

如果需要使 Linux 主机访问 Windows 主机上的共享资源,则还应该安装 Samba 客户端程序。  

[root@smb_server  root]# rpm  -ivh samba-client-2.2.7a-7.9.0.i386.rpm

4.2.2 Samba 的全局参数的配置  

Samba 最主要的配置文件是 /etc/samba/smb.conf,其中有很多选项可以设置,但作为初学者,只需要掌握其中一小部分选项的设置就可以配置所需要的Samba服务器 了。在了解基本配置的基础上,就能很快架设一个基本的Samba服务器。在基本配置文件中,也只用到其中一小部分命令选项。

全局参数的配置在[global]字段中,没有出现(或被注释)的参数,Samba 采用的是默认配置。

# This is the main Samba configuration file. You should read the

# smb.conf(5) manual page in order to understand the options listed

# here. Samba has a huge number of configurable options (perhaps too

# many!) most of which are not shown in this example

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

[global]

# 这是配置文件中关于全局参数的设置部分。  

…………

   workgroup = SMBGROUP

# 这是设置服务器所要加入的工作组的名称,会在 Windows 的“网上邻居”中能看到 MYGROUP 工作组,可以在此设置所需要的工作组的名称。  

netbios name=smb-server

# 设置出现在“网上邻居”中的主机名。默认情况下,则使用真正的主机名。  

   server string = Samba Server

# 这是设置服务器主机的说明信息,当在 Windows 的“网上邻居”中打开 Samba 上设置的工作组时,在 Windows 的资源管理器窗口,会列出“名称”和“备注”栏,其中“名称”栏会显示出 Samba 服务器的 NetBios 名称,而“备注”栏则显示出此处设置的“ Samba Server ”。当然,可以修改默认的“ Sambe Server” ,使用自己的描述信息。  

 hosts allow = 192.168.1. 127

# 这里是设置允许什么样的 IP 地址的主机访问 Samba 服务器。默认的情况下, hosts allow 选项被注释,表示允许所有 IP 地址的主机访问。  

  guest account = pcguest

# 设置当访问那些被设置了“ guest ok=yes ”参数的资源时所要使用的帐号名。默认的帐号为 ”nobody” ,如果不想用默认的值,则应该去掉注释用的分号,用你想要的帐号(如 pcguest zhangsan  ),然后,你必需将这一新帐号加入到 /etc/passwd 文件中去。  

client  code  page=950

设置客户端访问 Samba 服务器时所使用的字符编码表( code page ),默认值为 850 ,如果 Samba 服务器要使用年中文名称来来命名共享的资源,要将此值改为 950 

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

# 这一选项要求 Samba 服务器为每一个连接的机器使用一个单独的日志文件,指定文件的位置,名称。 Samba 会自动将 %m 转换成连接主机的 NetBios 名。  

   max log size = 0

指定日志文件的最大容量 ( KB 为单位 ) ,设置为 0 ,表示没有限制。默认值为 5000  

max disk size =1000

# 设置能够共享的最大磁盘空间,单位为 MB ,默认值为 0 ,表示不作任何限制。  

max open file =100

# 设置同一客户端最多能打开文件的数目,默认值为 10000 个。  

   security = user

# 设置 Samba 服务器的安全等级。默认情况下,使用 user 等级。  

#Samba 服务器一共有四种安全等级。  

share: 使用此等级,用户不需要帐号及密码可以登陆 Samba 服务器。  

user:  使用此等级,由提供服务的 Samba 服务器检查用户帐号及密码。  

server: 使用此等级,检查帐号及密码的工作可指定另一台 Samba 服务器负责。

domain: 使用此等级,需要指定一台 Windows NT/2000/XP 服务器(通常为域控制器),以验证用户输入的帐号及密码。  

;   password server = <NT-Server-Name>

# 如果安全等级为“ server ”或“ domain ”,则使用此选项指定要验证密码的主机名。  

  password level = 8

  username level = 8

# 设置当验证用户口令和帐号时最多允许几个大小写字不同。默认值为 0  

   encrypt passwords = yes

# 设置当 Samba 客户端将帐号及密码传送到服务器端时,是否采取密码加密的方式。客户的操作系统如果是 Windows 95 OSR2 NT SP3 以后的版本,应该将此选项的值设为 yes, 默认值为 no  

   smb passwd file = /etc/samba/smbpasswd

# 设置在 Samba 服务器上存放加密的密码文件的位置(注意: Samba 服务器与 Linux 采用不同的密码文件)。  

 

4.2.3 设置 Samba 密码文件  

smb.conf 文件中有“ smb password file =/ect/samba/smbpassword ”一行设置项,现在就要创建该设置项所指定的 /ect/samba/smbpassword 密码文件(若是用 Windows NT/2000Server 来验证密码,则可以跳过此段内容)。以 root 帐号登录,然后按下列步骤进行:  

[root@smb_server  root]#cat /etc/passwd | mksmbpasswd.sh  >  /etc/samba/smbpasswd

[root@ smb_server  root]# chmod  500  /etc/samba

[root@ smb_server  root]# chmod  600  /etc/samba/smbpasswd

 

此步骤是将未加密的 /etc/passwd 文件转换成加密的 smbpasswd 文件。基于保密的原则,将 /etc/samba 目录的权限设为 500 ,该文件的权限设为 600 ,以避免他人取得密码文件。  

完成之后再利用 smbpasswd 命令,设置 /ect/samba/smbpassword 文件中每个帐号所使用的密码。(下面以 fred 为例。注意:此处设置的密码是 fred 要访问 Samba 服务器的密码,并非登录 Linux 主机的密码 , 默认设置 ”UNIX password  sync=YES”, 则登录 Linux 主机的密码将改变 , Samba 服务器的密码一致 , 如果希望这两个密码不一致 , 则设置 ”UNIX password  sync=NO”  

[root@smb_server  root]# smbpasswd fred

New SMB password: 此处输入密码  

Retype SMB password: 重新输入密码  

Password  changed  for user  fred  看到这一句表示密码设置成功。  

 

4.2.4 启动 Samba 服务器  

可以执行下面的命令来启动 Samba 服务器:  

[root@ smb_server  Root]#   service smb start

当能看到下面的显示,就表示启动成功。  

Starting  SMB  service          [ 确定 ]

Starting  NMB  service          [ 确定 ]

 

如果要暂停或重新启动 Samba 服务器,只要将上面命令中的 start 改为 stop restat 就可以了。  

也可以让系统在每次开机时就启动 Samba 服务器。执行 ntsysv 命令,进入 Service 设置画面,选择 smb 选项,单击确定即可。  

4.2.5 测试 Samba 配置文件  

设置好 smb.conf 文件之后,执行下面的命令测试 smb.conf 的设置语法是否正确。  

[root@smb_server  root]#  testparm

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

Processing section "[homes]"

Processing section "[printers]"

Processing section "[tmp]"

Processing section "[public]"

Processing section "[fredsdir]"

Loaded services file OK.

Press enter to see a dump of your service definitions

表示正确。  

检查正常后,一定要记得执行  

[root@smb_server  root]#   service smb  restart

命令,重新启动 Samba 服务器。

4.3 配置 Samba 文件共享  

完成了全局环境的设置之后,可以设置共享的资源(包括共享的文件和打印机)了。先来介绍如何配置Smb.conf,实现文件的共享。

4.3.1 设置共享资源参数  

   comment

#针对共享资源所作的说明、注释部分

  browseable

#设置用户是否可以看到此共享资源。默认值为yes,若将此参数设置为no,用户虽然看不到此资源,但是拥有权限的用户仍可直接输入该资源的网址来访问该资源。

  writable

#设置共享的资源是否可以写入。若共享资源是打印机,则不需设置此参数

#设置可访问的用户。系统会自动将%S转换成登录帐号。

   create mode

# 设置文件的访问权限,默认值为0744。

   directory mode

设置目录的访问权限,默认值为0755。

path

#若共享资源是目录,则指定目录的位置;若为打印机,则指定打印机队列的位置。

read only

#设置共享资源是否只读或可以写入,默认值为yes。若共享资源为打印机时,此参数无任何意义。这一项与writable相反。

Public

#等同于guest ok选项,表示是否允许用户不使用帐号和密码便能访问此资源。如果起用此功能,当用户没有帐号和密码时,则会利用“guest account=”所设置的帐号名登录。该选项默认值为no,即不允许没有帐号即密码的用户使用此资源。

avalible

#设置是否启用此共享资源。默认值为yes。若将此参数设置为no,则不管其他参数设置为什么,所有人均不得使用此资源。

 valid users

 

4.3.2 配置 Samba 文件共享举例  

以下通过配置3个不同的共享目录为例,可以知道 配置 Samba 文件共享的一般方法。  

[global]

…………  

#采用前面的 [global]配置

[homes]

#用来配置用户访问自己的目录

   comment = Home Directories

#注释

   browseable = no

#用户私人目录,不给别人浏览(并不是不允许别人访问)

   writable = yes

#允许用户写入自己的目录

   valid users = %S

#可访问的用户局限于用户自己。%s会被自动转换为登录帐号。

  create mode = 0664

#文件的访问权限

   directory mode = 0775

#目录的访问权限

# This one is useful for people to share files

[tmp]

#这个部分为所有用户提供临时共享的方式

   comment = Temporary file space

#注释文字

  path = /tmp

#指定位置 

read only = no

#可以读写 

public = yes

#允许用户不用帐号和密码访问

 [public]

#  这个部分为所有用户提供可以共同访问的目录。允许staff组用户写入,但其他用户只可访问,不能写入。

 comment = Public Stuff

   path = /home/samba

   public = yes

   writable = yes

   printable = no

   write list = @staff

# write list参数是用来设置具有写权限的用户列表。这里只允许staff组的成员有写的权限

 [fredsdir]

#这个部分用来设置某一用户fred的访问权限。

  comment = Fred s Service

  path = /usr/fred/private

  valid users = fred

#只有fred可以访问(注意:即使security=share,也不代表用户登录Linux 主机后可以访问任意资源。)该共享目录

  public = no

  writable = yes

  printable = no

 

说明:配置文件修改后,要重新用 testparm 测试配置文件,重新启动 Samba 服务器程序。  

4.3.3 使用共享的目录  

现在以 Windows 2000 为例,介绍 fred 用户如何读取 Linux 所共享的资源。  

1 .以 fred 帐号登录 Windows ,然后在“网上邻居”  中找到前面所设置工作组 smbgroup 。如图 4-1 所示  

 

                               图4-1

 

2 .双击工作组 smbgroup 图标,将看到 Samba 服务器 smb_server ,如图 4-2 所示  

 

                                          4-2

3 .双击服务器 smb_server 图标,若在 Windows 中使用的密码与 Linux 的用户密码相同 , 即可以看到服务器上所共享的资源(表示登录 Linux 主机成功),如图 4-3 所示。  

     4 .若在 Windows 中使用的密码与 Linux 的用户密码不同,则会出现“输入网络密码对话框”,如图 4-4 所示,输入 st1 SMB 中设置的用户密码(由于设置了 ”unix password sync=YES” ,所以此处输入的密码一定要是 smb 密码),正确的密码输入后,会出现图 4-3 所示的窗口。  

 

                                         图4-3

 

                                         4-4

5 .在图 4-3 的资源管理器窗口中,双击所要访问的共享目录(如 fredsdir ),出现图4-5 所示“输入网络密码”窗口,输入 fred 的密码(因为 fredsdir 共享目录只允许 fred 访问,所以在此要输入 fred smb 密码) 结果如图 4-6 所示


                       图4-5


                     图4-6

4.4 配置 Samba 打印共享  

4.4.1 Samba 中的打印共享  

Samba 中涉及打印共享的参数主要有以下几个  

1.  [glo

分享到:
评论

相关推荐

    Samba服务器配置及访问Samba共享

    * 使用Samba服务器配置工具来管理Samba共享、用户和基本服务器设置 * 配置服务器的基本设置,包括工作组和服务器简短描述 * 配置安全服务器设置,包括验证模式、加密口令和来宾账号 三、Samba服务器访问 * 从Linux...

    linux课程设计 samba服务器的配置

    通过本次课程设计,不仅加深了对Linux操作系统及其Samba服务器配置的理解,还提高了实践操作能力。Samba作为一个重要的工具,在跨平台文件共享方面发挥着重要作用。通过学习和实践,我们掌握了Samba的配置方法,为...

    Samba服务器的配置与管理.docx

    此外,还需要为 Samba 服务器配置适当的存储设备、网络接口卡和打印机等硬件。在配置过程中,可以按照以下步骤进行: 1. 安装适合服务器硬件的操作系统,如 Ubuntu 或 CentOS。 2. 安装 Samba 软件包及其相关的工具...

    samba服务器配置实验

    Samba 服务器配置实验报告 本实验报告的主要目的是学习和掌握 Samba 服务器的配置...Samba 服务器配置实验对于深入理解 Samba 服务器的配置和使用非常重要,为我们在实践中应用 Samba 服务器提供了有益的经验和知识。

    Samba的安装配置

    Samba 安装配置 ...Samba 安装配置需要我们了解基础知识、Samba 的功能和应用范围、Samba 的客户端及服务器配置文件等,我们需要了解 Samba 的启动程序和配置文件等,然后才能架好 Samba 服务器。

    Linux案例教学之samba服务器配置.pdf

    Linux 案例教学之 Samba 服务器配置 Linux 操作系统是当前最流行的服务器架设解决方案之一,其在架设服务器方面性能优越。但是,普通用户大多使用 Windows 操作系统,因此 Linux 系统与 Windows 系统的资源共享变...

    samba服务器配置案例

    在IT领域,Samba服务器是一种广泛使用的工具,它允许Linux/Unix系统与Windows网络无缝集成,提供文件和打印机共享服务。在这个配置案例中,我们将深入理解如何为不同部门配置Samba服务器,确保每个部门的用户只能...

    SAMBA服务器配置实验报告.doc

    SAMBA服务器配置实验可以应用于实际工作和生活中,例如,在企业中,需要共享文件和资源时,可以使用SAMBA服务器配置实验的方法来实现文件共享和访问。同时,在个人生活中,也可以使用SAMBA服务器配置实验的方法来...

    Samba服务器配置入门手册.pdf

    总之,Samba服务器配置入门手册旨在引导初学者掌握Samba的基本概念、安装流程、关键配置以及常用命令的使用,为构建高效、稳定的跨平台资源共享系统奠定了坚实的基础。无论是个人用户还是企业级应用,Samba都提供了...

    Samba服务的配置与应用

    Samba服务的配置与应用.ppt ,实用型参考

    ubuntu_Samba服务器配置

    ### Ubuntu 下 Samba 服务器配置详解 #### 一、Samba 概述 Samba 是一个免费软件,它能够在 Linux 和 UNIX 系统上实现 SMB(Server Message Block)协议,从而使得 Windows 用户能够轻松地访问局域网中的 Linux ...

    第03章 Samba服务的配置与应用.ppt

    【Samba服务的配置与应用】 Samba是一个在Linux和UNIX系统中实现SMB协议的软件,使得Linux系统能够与Windows环境无缝集成,提供文件和打印机共享服务。SMB(Server Message Block)协议最初由Microsoft和Intel开发...

    Samba 服务器配置-hp.ppt

    总结起来,Samba服务器配置是一项关键的技术,它使得跨平台的文件和打印资源共享成为可能。通过理解和熟练掌握Samba的配置,IT管理员能够在多元化的IT环境中创建一个高效且灵活的工作环境,促进不同操作系统间的协同...

    Linux配置samba服务器

    #### 四、安装和启动Samba服务器 安装Samba服务器通常涉及以下几个步骤: 1. **检查已安装的Samba组件**: - 使用`rpm -qa | grep samba`命令来查看当前系统中是否已经安装了Samba服务及其相关组件。 2. **安装...

    Samba服务器配置.pdf

    Samba服务器配置 本文主要讲述了在Linux系统中架设Samba服务器,并实现Linux和Windows系统之间的资源共享。以下是从文本中提炼的知识点: 一、Samba服务器的安装 * Samba服务器可以使用yum命令进行安装,命令为:...

    Linux中samba服务器配置方法课程设计报告.doc

    以下将详细讲解Samba服务器的配置方法,包括安装、用户管理以及配置文件的设置。 首先,安装Samba服务器是整个配置流程的第一步。在Red Hat Enterprise Linux或者类似的发行版中,可以通过包管理器来安装Samba及其...

    Linux下Samba服务器的搭建——实现LINUX与WINDOWS之间文件共享.pdf

    本文还讲解了Samba服务器的安装和配置过程,包括检查是否安装了Samba服务器软件、安装Samba服务器软件、配置SMB.CONF文件等步骤。通过这些步骤,可以实现Linux与Windows之间的文件共享,提高工作效率和生产力。 ...

Global site tag (gtag.js) - Google Analytics