服务器配置的Samba服务器,第1张

第1步,执行“应用程序”/“系统设置”/“服务器设置”/“Samba”菜单命令,将弹出“Samba服务器配置”对话框 。

第2步,在弹出的“Samba服务器配置”对话框中执行“首选项”/“服务器设置”命令,将弹出“服务器设置”对话框。在该对话框的“基本”选项卡中设置工具组名称,可与Windows操作系统工作组的名称相同,也可在“描述”文本框中填写计算机的描述语言,它将在网络中显示。

第3步,切换到“安全性”选项卡,在该选项卡中设置验证模式“共享”、加密口令为“否”、来宾账户“无来宾账户”,最后单击“确定”按钮完成服务器配置。

第4步,单击“Samba服务器配置”对话框中工具栏上“添加”按钮,将弹出“创建Samba共享”对话框,在“目录”文本框中输入需要共享的目录路径和目录名,在“共享名”文本框中输入网络中显示的名称,默认为共享目录名,也可在描述文本框中输入一些说明,在“基本权限”中可以选择用户是否有权限对共享目录进行写操作,若不需网络中的客户对共享的资源进行修改,则选择“只读”选项。

第5步,切换到“访问”选项卡,在该选项卡中选择“允许所有用户访问”选项,最后单击“确定”按钮完成服务器配置。

第6步,关闭“服务器配置”对话框,执行“应用程序”/“系统设置”/“服务器设置”/“服务”菜单命令,在该对话框的服务列表中选中“smb”,再单击工具栏中的“重启”按钮。

第7步,通过以上的配置,Samba服务器就配置完成了。在Windows操作系统中打开网上邻居,在网上邻居中即可看到Linux操作系统rho1的共享“cdrom”。

1,先查看安装情况:rpm -qa|grep samba

根据系统的安装情况选择下载或者通过光驱安装所缺的rpm包。

我的安装情况是:

使用命令:mount /dev/cdrom1 /mnt/cdrom1

通过mount把cdrom1挂载到系统临时目录/mnt/cdrom1,在Packets包下面使用命令:rpm -ivh sambarpm包安装。

切换到放置rpm文件的目录

[root@smb_server root]# rpm -ivh samba-common-369-151el6x86_64

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

[root@smb_server root]# rpm -ivh samba-369-151el6x86_64

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

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

[root@smb_server root]# rpm -ivh samba-client-369-151el6x86_64

2,安装samba的rpm包完成后

samba-common-369-151el6x86_64 //主要提供samba服务器的设置文件与设置文件语法检验程序testparm

samba-client-369-151el6x86_64 //客户端软件,主要提供linux主机作为客户端时,所需要的工具指令集

samba-swat-369-151el6x86_64 //基于https协议的samba服务器web配置界面

samba-369-151el6x86_64 //服务器端软件,主要提供samba服务器的守护程序,共享文档,日志的轮替,开机默认选项

Samba服务器安装完毕,会生成配置文件目录/etc/samba和其它一些samba可执行命令工具,/etc/samba/smbconf是samba的核心配置文件,/etc/initd/smb是samba的启动/关闭文件。

5、查看samba的服务启动情况

# service smb status

6、设置开机自启动

# chkconfig --level 35 smb on //在3、5级别上自动运行samba服务

7、配置smb服务

[global]

workgroup = WORKGROUP

server string = Samba Server Version %v

netbios name = ImgPath05

[ImgPath]

comment = Public stuff

path = /usr/local/nginx/html/img

public = yes

writeable = yes

browseable = yes

guest ok = yes

共享目录为:/usr/local/nginx/html/img,共享目录对外名称为:ImgPath 即在Windows看到的目录名称。

设置共享目录权限:chown -R nobody:nobody /usr/local/nginx/html/img/

8、启动或者重启smb服务

重启smb服务

测试smbconf配置是否正确

9 Windows访问共享目录,但是没有写权限,通过以下方式修改防火墙设置。

将Linux smb服务添加到防火墙的例外中 以root用户执行setup命令#setup弹出重启生效,如果不想重启,用命令#setenforce 0

之前使用samba服务的时候没有做好一些细节部分,现在把需要注意的内容记下来,人的记忆力有限啊!时刻提醒自己!

ed Hat Linux 90,则系统会默认安装Samba组件。我们可以在终端命令窗口输入以下命令进行验证:

[root@ahpeng root] rpm -qagrep samba

如果结果出现以下所示的5个软件包,则表示已经安装:

samba-swat-227a-790

samba-227a-790

redhat-config-samba-104-1

samba-common-227a-790

samba-client-227a-790

如果没有安装过Samba软件包,则可以插入第1张安装光盘,然后鼠标依次单击“主菜单→系统设置→添加/删除应用程序”菜单项,打开“软件包管理”对话框,在该对话框中找到“Windows文件服务器”选项,确保该选项处于选中状态,然后单击“更新”按钮即可开始安装。

你也可以把第1张安装光盘插入光驱,然后在终端命令窗口输入以下命令:

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

[root@ahpeng RPMS]# rpm -ivh samba

[root@ahpeng RPMS]# rpm -ivh redhat-config-samba-104-1noarchrpm

二、Linux主机访问Windows主机

安装好Samba之后,就有了与Windows互相访问的基础。这里先介绍一下如何用字符命令方式访问Windows宿主机的共享资源。

1、查询宿主机的共享资源

可以使用“smbclient –L WindowsHostName”命令(此处的WindowsHostName用Windows主机名代替)。本例是要查询Windows主机Peter 上的共享资源,可以在终端窗口输入“smbclient –L Peter”命令,然后回车即可看到Windows主机的共享资源。

2、连接宿主机的共享目录

可以使用“smbclient //WindowsHostName/ShareName”命令来连接Windows主机上的某个共享文件夹,如果该共享文件夹需要用户名和密码,则可以使用“smbclient //WindowsHostName/ShareName –U UserName”命令。例如要连接Windows主机Peter上的共享目录Share,我们可以在终端窗口输入“smbclient //Peter/Share”命令然后回车即可。

如果连接成功,即可出现“smb:>”提示符,在该命令提示符下输入适当的命令,即可对所连接的共享目录进行操作。

Smb支持的命令有大约40个命令,可以很方便地对共享目录进行删除、重命名、切换目录等操作。如果要列出共享目录“Share”下的具体内容,可以使用ls命令。要删除其下的testtxt文件,可以使用“del testtxt”命令。共2页。

3、映射网络驱动器

我们知道,Windows下可以将共享目录映射为网络驱动器,这样就可以把共享目录当成本地文件夹来使用。在Linux下可以借助于 smbmount命令来实现,具体的命令参数是“smbmount //WindowsHostName/ShareName /mnt/smbdir”(此处的ShareName指代Windows共享资源名称,smbdir指代挂载点名称)。假设要将Windows主机 Peter下的共享文件夹Share映射为/mnt/WinShare目录,具体步骤是:

首先在/mnt目录下创建一个目录,假设为/mnt/WinShare;

然后打开终端命令窗口,运行“smbmount //Peter/Share /mnt/WinShare”即可。

现在再在文件管理器里打开/mnt/WinShare目录可以看到共享目录的内容,要卸载该映射目录,可以使用umount命令。

4、用Nautilus访问Windows主机

借助Gnome桌面下的文件管理器Nautilus,我们可以用图形界面来访问Windows主机,这里要注意的是Nautilus只是提供访问Windows主机的图形界面,具体的底层操作还是借助于Samba客户端来完成。

在Gnome桌面环境下,单击“主菜单→网络服务器”菜单项,即可用Nautilus文件管理器查看工作组列表。双击工作组名称,即可看到其下的Windows主机。

双击其中的某台Windows主机图标,即可看到该主机的共享文件夹,可以看到这和Windows下的网络邻居几乎一样。

由于Nautilus本身就是Red Hat Linux的文件管理器,所以我们可以任意往Windows共享目录里拷贝文件、删除文件、创建目录等等(对于windows 2000/XP主机还需要考虑该共享资源的权限设置)。

三、Windows主机访问Linux主机

要想让Windows宿主机能够访问Linux虚拟机,就必须在Linux虚拟机上启动Samba服务。在启动之前,还需要对Samba服务的属性进行配置,例如指定Linux虚拟机的共享目录、所在的工作组名称等。

1、配置Samba服务器

在以前版本的Red Hat Linux,我们必须直接修改Samba配置文件smbconf,或者使用SWAT对Samba进行全方位的设置。Red Hat Linux 90新引入了一个图形化的Samba服务器配置工具,可以让我们很方便地对Samba服务器进行配置。以root用户身份登录系统,单击“主菜单→系统设置→服务器设置→Samba服务器”菜单项,即可打开Samba服务器配置对话框。也可以在终端命令窗口输入“redhat-config- samba”,来访问Samba服务器配置对话框。

首先对Samba服务器的基本设置和安全选项进行配置,单击配置对话框上的“首选项→服务器设置”菜单项,即可打开服务器设置对话框。

基本设置:在对话框的“基本”标签页,我们可以指定Linux主机所在的工作组名称,需要注意的是,此处的工作组名称不一定非得与Windows主机所在的工作组名称一致。

安全设置:然后进行Samba服务器安全设置,这里一共有4个选项。

“验证模式”代表如果Windows主机不是位于NT域里,此处应该选择“共享”验证模式,这样只有在连接Samba服务器上的指定共享时才要求输入用户名、密码;“验证服务器”代表对于“共享”验证模式,无需启用此项设置;“加密口令”选项应该选择“是”,这样可以防止黑客用嗅探器截获密码明文;“来宾账号”代表当来宾用户要登录入 Samba 服务器时,他们必须被映射到服务器上的某个有效用户。选择系统上的现存用户名之一作为来宾Samba账号。当用户使用来宾账号登录入 Samba 服务器,他们拥有和这个用户相同的特权。

添加共享目录:单击Samba配置对话框工具栏上的“增加”按钮。在打开的对话框中的“基本”标签页上,指定(共享)目录为某个存在的目录,例如可以指定/tmp,再指定该目录的基本权限是只读还是读/写。在“访问”标签页上,可以指定允许所有用户访问、或者只允许某些用户访问。

2、启动Samba服务器

打开终端命令窗口,输入“/sbin/service smb start”命令,即可出现以下提示信息,表示Samba服务已经启动。

# /sbin/service smb start

启动SMB 服务 [确定]

启动NMB 服务 [确定]

接下来在Windows里打开“网络邻居”,就可以看到我们刚才设置的Samba服务器了

 下一步,我们需要使用带“-a”选项的smbpasswd命令,将用户添加到Samba,该选项指定随后用户名应添加到本地smbpasswd文件。系统会提示我们输入一个密码(该密码没必要与本地Unix帐户的密码一样):

  # smbpassword -a

  最后,我们将访问系统中用作Samba共享区的一个目录的权限授予用户xmodulo(如果需要的话,还可以将访问权限授予其他用户)。要完成这一步,只需用文件编辑器(比如Vim)打开/etc/samba/smbconf文件,浏览到文件末尾,使用描述性名称,创建一段代码(将名称括在方括号内),比如[xmodulo]:

  # SAMBA SHARE [xmodulo] path = /home/xmodulo available = yes valid users = xmodulo read only = no browseable = yes public = yes writeable = yes

  现在我们必须重启Samba;为了以防万一,使用testparm命令检查smbconf文件,查找有无语法错误:

  # service samba restart # testparm

  

  要是有什么错误,testparm结束运行后,就会如实报告。

  将Samba共享区映射为Windows 7 PC上的网络驱动器

  鼠标右击Computer(电脑),选择“Map network drive”(映射网络驱动器):

  键入安装有Samba的那台机器的IP地址,随后键入共享区的名称(这是smbconf文件中刮在单括号内的名称),并确保“Connect using different credentials”(使用不同的登录资料来连接)复选框已勾选:

  输入之前用“smbpasswd -a”设置的用户名和密码:

  进入到Computer(电脑),检查网络驱动器是否已正确添加上去:

  为了测试一下,不妨利用Samba的参考手册页创建一个PDF文件,并将它保存到/home/xmodulo目录中:

  下一步,我们可以证实该文件可以从Windows来进行访问:

  我们可以使用默认的pdf阅读软件打开该文件:

  最后,不妨看一下我们能否将来自Windows的一个文件保存到刚映射的网络驱动器。我们将打开changelog文件,该文件列出了Notepad++的功能特性:

  然后试着将它作为一个明文文件(txt扩展名)保存到Z:\;然后,不妨看一下该文件在Linux中是否能浏览:

  启用配额

  第一步,我们需要证实当前内核是不是已经过编译并支持配额:

  # cat /boot/config-$(uname -r) | grep -i config_quota

  每一个文件系统最多有五种配额限制可予以实施:用户软限制、用户硬限制、用户组软限制、用户组硬限制和宽限时间。

  现在我们将为/home文件系统启用配额,为此在/etc/fstab文件中对应/home文件系统的那一行,将usrquota和grpquota挂载选项添加到现有的defaults选项;为了让变更生效,我们将重新挂载文件系统:

  下一步,我们需要在/home中创建两个文件,它们将充当用户配额和用户组配额的数据库:分别是aquotauser和aquotagroup。之后,我们将针对启用配额的文件系统,创建当前磁盘使用表:

  # quotacheck -cug /home # quotacheck -avugm

  尽管我们已为/home文件系统启用了配额,但我们还没有对任何用户或用户组设置任何限制。检查现有用户/用户组的配额信息:

  # quota -u # quota -g

  最后,后几步包括:使用quotatool命令,为每个用户及/或每个用户组指定配额(注意:可以使用edquota来执行这项任务,但quotatool更直观简单,不太容易出错)。

  想为名为xmodulo的用户将软限制设置在4 MB、将硬限制设置在5 MB,并为xmodulo用户组将软限制和硬限制分别设置在10 MB和15 MB:

  # quotatool -u xmodulo -bq 4M -l '5 Mb' /home # quotatool -g xmodulo -bq 10M -l '15 Mb' /home

  我们可以在Windows 7中看到结果(400MB中398MB闲置):

在Linux平台,以二进制程序包和源代码两种方式安装samba服务器,并整理相关配置文件,并给出基本应用操作。

步骤:

1机器上已经存在的samba服务,版本为3021b,这是通过使用rpm命令得到的。如下:

# rpm –qa | grep samba

Samba-client-3021b-2

Samba-common-3021b-2

2将上面的samba-client-3021b-2卸载。使用命令:rpm –e samba-client-3021b-2。

3用rpm –e samba-common-3021b-2来卸载common,因为依赖关系,不成功。

4下载二进制程序包:

samba-common-3023c-4i386rpm,

samba-client-3023c-4i386rpm,

samba-doc-3023c-4i386rpm,

samba -3023c-4i386rpm。

5安装这些程序包。分别使用命令:

rpm –Uvh samba-common-3023c-4i386rpm

rpm –ivh samba-client-3023c-4i386rpm

rpm –ivh samba-3023c-4i386rpm

rpm –ivh samba-doc-3023c-4i386rpm

使用选项Uvh来安装common是因为原来的common没有被卸载,因此应进行升级安装(U)。

6安装完毕后,可以使用rpm –qa samba来确认。会输出samba-3024c-4。

7下面开始对samba服务进行配置。

8首先,修改/etc/samba/lmhosts文件。加入一行,为本机上的Windows系统IP地址和主机名。这样才可以通过Windows来访问Unix的samba服务。

9创建目录/export/sambadir作为共享目录。

命令:mkdir –p /export/sambadir

chmod 777 /export/sambadir

10修改/etc/samba/smbconf文件。这是samba的配置文件。

Security = user

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

Path = /export/sambadir

11使用testparam来测试修改结果。

12加入一个用户,并修改其密码。

13使用chkconfig命令来设置在启动级别5中启动samba。命令如下:

Chkconfig –list | grep smb

Chkconfig –level 5 smb on

Chkconfig –list | grep smb

14重新启动网络服务:

/etc/rcd/initd/cups stop

/etc/rcd/initd/smb restart

15然后就可以在Windows系统中通过12步中设定的用户名和密码来访问Linux。

16使用源代码的安装方式:下载samba-3023ctargz源代码包,解压。

Cd samba-3023c/source

/autogensh

/configure –prefix=/usr –localstatedir=/var –with-configdir=/etc/samba –with-privatedir=/etc/samba –with-fhs –with-quotas –with-smbmount –enable-cups –with-pam_smbpass –with-syslog –with-utmp –with-swatdir=/usr/share/swat –with-shared-modules=idmap_rid –with-libsmbclient

Make

Make install

17其余步骤与7之后相同。

这是我实验时写的,平台是redhat 9

零:场景:

| 共享名 | 路径 | 权限 |

| SHAREDOC | /smb/docs | 所有人员包括来宾均可以访问 |

| RDDOCS | /smb/tech | 仅允许特定组的用户进行读写访问 |

特定组的组名为RD,目前的Alice、Jack、Tom三个人

一、 安装Samba

//或者使用rpm安装

//查看安装版本信息

Tips:也之前的SAMBA 3有一个重大的变化是:security不再支持share

WARNING: Ignoring invalid value 'share' forparameter 'security'

二、 配置Samba服务器

1创建共享目录(假设共享/smb目录下的文件)

2配置内核参数

3配置smbconf文件

1)备份原配置文件:

2)删除原有所有内容,添加如下内容:

[global]

workgroup=BIGCLOUD

netbios name=ZZSRV2

server string=Samba Server

security=user

map to guest = Bad User

[SHAREDOCS]

path=/smb/docs

readonly=yes

browseable=yes

guest ok=yes

[RDDOCS]

path = /smb/tech/

public = no

writable = yes

write list = @RD

validusers = @RD

三、 创建用户并分配权限

1创建操作系统用户

2修改用户的组

uid=1000(alice) gid=1000(alice)groups=1000(alice),1003(RD)

3创建SAMBA用户

4修改目录权限

5查看服务状态

drwxrwx--- 2 RD RD 4096 Aug 11 17:08 /smb/tech/

smbservice - Samba SMB Daemon

Loaded: loaded(/usr/lib/systemd/system/smbservice; enabled)

Active: active (running) since Tue2014-08-12 11:38:29 CST; 14s ago

Main PID: 16807 (smbd)

Status: "smbd: ready to serveconnections"

CGroup: /systemslice/smbservice

16807 /usr/sbin/smbd

16808 /usr/sbin/smbd

systemd[1]:Starting Samba SMB Daemon

smbd[16807]:[2014/08/12 11:38:29255341, 0]/lib/util/become_daemonc:136(daemon_ready)

systemd[1]:Started Samba SMB Daemon

smbd[16808]:STATUS=daemon 'smbd' finished starting up and ready to serve connectionsfailedto retrieve printCCESSFUL

Hint:Some lines were ellipsized, use -l to show in full

四、 测试连通性

1Linux上测试

Domain=[BIGCLOUD] OS=[Unix] Server=[Samba 411]

Domain=[BIGCLOUD] OS=[Unix] Server=[Samba 411]

2Windows上测试

1)使用虚拟机(如VMware)安装Linux(如Ubuntu)系统时,为方便Windows和Linux文件互通方便(主要是Windows下访问Linux文件了),一般都会在LINUX下安装Samba服务器。

在XP下,可以通过[//1921683104](file://1921683104/)(Linux系统IP)进行访问其共享文件,但在WIN7或VISTA下却不行,因为Samba只支持NTLM认证,而WIN7或VISTA则采用NTLMv2认证,因此必须经过一些设置才行,具体设置如下:

开始->运行->secpolmsc->本地策略->安全选项->网络安全:LAN管理器身份验证级别->发送 LM 和 NTLMv2 ,如果已协商,则使用NTLMv2 (会话安全 &)->完成设置。(如下图所示)

这时,再使用[//1921683104](file://1921683104/)(Linux系统IP)就可以访问Linux共享文件了 _

2)C:>netuse /del

您有以下的远程连接:

继续运行会取消连接。

您想继续此操作吗 (Y/N) [N]: y

命令成功完成。

C:>netuse \19216818812 P@ssw0rd /U:alice

命令成功完成。

3)打开资源管理器进行写入测试

4)如果windows下登录samba服务器后无法访问linux下共享目录,提示没有权限。则检查:

a、确保linux下防火墙关闭或者是开放共享目录权限;

b、确保samba服务器配置文件smbconf设置没有问题,可网上查阅资料看配置办法 ;

c、确保setlinux关闭,可以用setenforce 0命令执行。 默认的,SELinux禁止网络上对Samba服务器上的共享目录进行写操作,即使你在smbconf中允许了这项操作。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 服务器配置的Samba服务器

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情