已阅读5页,还剩7页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Linux环境架设Samba服务器 实现网络互访Windows可以通过网上邻居访问局域网主机,而在Linux下则可以通过Samba客户端访问局域网内的Windows主机,也可以通过Samba服务器给Windows主机提供文件、打印机等服务。本文就给大家介绍一下如何在Linux环境下架设和配置Samba服务器,为了方便讲述,这里假设Windows主机的计算机名为Peter,设Linux主机的名称为RedHat。一、安装Samba组件如果选择完全安装Red Hat Linux 9.0,则系统会默认安装Samba组件。我们可以在终端命令窗口输入以下命令进行验证:rootahpeng root rpm -qa grep samba如果结果出现以下所示的5个软件包,则表示已经安装:samba-swat-2.2.7a-7.9.0samba-2.2.7a-7.9.0redhat-config-samba-1.0.4-1samba-common-2.2.7a-7.9.0samba-client-2.2.7a-7.9.0如果没有安装过Samba软件包,则可以插入第1张安装光盘,然后鼠标依次单击“主菜单系统设置添加/删除应用程序”菜单项,打开“软件包管理”对话框,在该对话框中找到“Windows文件服务器”选项,确保该选项处于选中状态,然后单击“更新”按钮即可开始安装。你也可以把第1张安装光盘插入光驱,然后在终端命令窗口输入以下命令:rootahpeng root# cd /mnt/cdrom/RedHat/RPMSrootahpeng RPMS# rpm -ivh samba*rootahpeng RPMS# rpm -ivh redhat-config-samba-1.0.4-1.noarch.rpm二、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命令。要删除其下的test.txt文件,可以使用“del test.txt”命令。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配置文件smb.conf,或者使用SWAT对Samba进行全方位的设置。Red Hat Linux 9.0新引入了一个图形化的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服务器了。简单介绍samba服务器的配置基础.samba的核心是两个守护进程smbd和nmbd程式,在服务器启动到停止期间持续运行。Smbd和nmbd使用的全 部配置信息全都保存在smb.conf文档中。Smb.conf向smbd和nmbd两个守护进程说明输出什么以便共享, 共享输出给谁及如何进行输出。Smbd进程的作用是处理到来的SMB软件包,为使用该软件包的资源和 Linux进行协商,nmbd进程使其他主机(或工作站)能浏览Linux服务器。 假如安装时用rpm安装,那么启动samba不用service smb start,用service nmbd start,service smbd start也能够的。 在smb.conf文档中,注释行以“#”开头,同时每项中英文字母不区分大小写,在一行最后字符尾加 “”,可将一行分成多行。用“;”开头的行,是可改变的配置,将“;”去掉时,该配置将取作用。 global(全局参数的配置,他对samba的功能具备很大的影响,主要用来配置整个系统规则。 workgroup= 这是您在windows中的域。 server string= 这是在windows中看到您的samba的解释。 netbios name =最好是您的机器名,假如把改句注消,默认的是您LINUX机器名,但是,最好还是自己填上 dos charset=cp936 unix charset=cp936 加上这二句就能够正确显示中文了。 hosts allow 允许登录的linux-samba的主机名单,用IP地址给出,多个IP地址用空格分开,不在名单中的主机将不能得到samba提供的服务,这也是网络安全的一个方面。 printcap name 指定printcap文档地址,通常为/etc/printcap,包含了linux打印机的配置信息。 load printers 允许使用共享打印机时,默认值为yes。 printing 假如使用的打印机是非标准的,那么应该指出打印机系统类型。 log file = /usr/local/samba/var/log.%m max log size = 0 上面这两行则是Samba日志的相关定义。其记录文档的位置是放在/var/log/samba/%m.log,安装目录不相同,日志可不相同,后面的一条是定义日志记录文档的大小,单位是KB,假如是0的话就不限大小。 guest acount 来宾帐户,表示用哪一个Linux用户作为所要的客户连接,定义Samba缺省的用户账号,这个账号必须在/etc/passwd中。 security 指定安全模式。大多数用户使用user级的安全模式,samba用本地linux口令文档验证。 security = security_level 定义Samba的安全级别,按从低到高分为四级:share,user,server,domain。他们对应的验证方式如下: share:没有安全性的级别,任何用户都能够不要用户名和口令访问服务器上的资源。 user:samba的默认配置,需要用户在访问共享资源之前资源必须先提供用户名和密码进行验证。 server:和user安全级别类似,但用户名和密码是递交到另外一个服务器去验证,比如递交给一台NT服务器。假如递交失败,就退到user安全级。 domain:这个安全级别需要网络上存在一台Windows的主域控制器,samba把用户名和密码递交给他去验证。 后面三种安全级都需要用户在本linux机器上也要系统帐户。否则是不能访问的 smb passwd file=/etc/samba/smbpasswd (配置smb密码文档的位置) username map =/etc/smbusers encrypt passwords =no 采用的时明文密码验证,假如是加密的,就改为yes 记得某月的某一天,我下定决定安装任何软件包只用源码,不用rpm。虽然很麻烦,但是对于了解linux内部有些帮助。 首先我们创建一个文档,边安装配置samba,边写教程。 从下载samba最新源码包,我下载的是samba-3.0.7.tar.gz,把他放在我的目录的中/root/lova/samba下。 tar -zxvf samba-3.0.7.tar.gz 解压得到samba-3.0-7 cd samba-3.0.7 cat README 先看说明,可惜E文太差,不太懂,直接安装吧。 find . -name configure ./source/configure 原来藏在这 cd source/ mkdir /usr/local/samba 创建安装目录 ./configure -prefix=/usr/local/samba/ 安装到/usr/loca/samba make & make install cd /usr/local/samba/ 到安装目录看看 ls bin include lib man private sbin swat var 安装成功,怎么没有etc目录和smb.conf文档呀,那我自己创建一个 root-/usr/local/sambamkdir etc root-/usr/local/sambacp /love/samba/samba-3.0.7/examples/smb.conf.default ./etc/smb.conf 好了现在看看我们的目标。 一、有一个共享目录,只能够读,不能够做任何改变。 二、有一个共享目录,任何人都能够做任何改变,包括添加目录文档,删除目录文档。 三、每个用户能够看到自己的主目录,其他用户不能够看到,当然不能够作改变。 四、有一个共享目录,组A中的人能够做任何改变,组B中的人只能够读,组C中的人看不到。 五、每个用户登录后都能够使用打印机。(没有成功)。 目标1方法1 root-cd /usr/local/samba/etc/ root-/usr/local/samba/etccp smb.conf beifen 备份一下免得改错了。 修改smb.conf, workgroup = MSHOME 改为您linux所在的工作组 security = share 开放共享 在smb.conf最后加上 read1 comment = read1 path = /home/read1 public = yes guest ok = yes writable = yes 创建共享目录 whoami root umask 0022 mkdir /home/read1 cd !$ cat linux hi linux ll /home/read1/ 总用量 4 -rw-r-r- 1 root root 9 10月 24 11:20 linux 644嘛 adduser nxgz ; passwd !$ ; 创建系统用户 root-/usr/local/samba/bin/smbpasswd -a nxgz 再把这个用户添加为samba用户 Cant load /usr/local/samba/lib/smb.conf - run testparm to debug it 怎么出错了,似乎没有在lib下没有smb.conf,那我就加上吧 root-cp /usr/local/samba/etc/smb.conf /usr/local/samba/lib/samba服务器的配置RHEL4系统中默认安装了samba服务器和客户机的所有软件包,如果需要可以使用rpm命令进行安装,在第2张光盘中RHEL4提供了如下4个与samba服务相关的软件包。1、samba-common-3.0.10-1.4E.i386.rpm:此软件包提供了samba服务器和客户机中都必须使用的公共文件,因此该软件包必须在samba服务器和客户机软件包之前安装。2、samba-3.0.10-1.4E.i386.rpm:此软件包包括了samba服务器程序的所有文件。3、samba-client-3.0.10-1.4E.i386.rpm:此软件包提供了samba客户机的所有文件。4、system-config-samba-1.2.21-1.noarch.rpm:该软件包中提供了Red Hat公司专门为samba服务器管理编写的图形界面的管理程序,该程序是Red Hat系统工具中的一部分。首先给samba服务器配置一个静态永久ip地址# vi /etc/sysconfig/network-scripts/ifcfg-eth0DEVICE=eth0BOOTPROTO=staticIPADDR=22NETMASK=GATEWAY=ONBOOT=yesTYPE=Ethernet重启配置文件使之生效# /etc/init.d/network restartShutting down interface eth0: OK Shutting down loopback interface: OK Setting network parameters: OK Bringing up loopback interface: OK Bringing up interface eth0: OK 然后查看samba相关软件包是否被安装# rpm -qa | grep sambasamba-common-3.0.10-1.4Esamba-client-3.0.10-1.4E如果没安装就挂载第2张光盘,把软件包安装上去# mount /dev/cdrom /media/cdrom# cd /media/cdrom/RedHat/RPMS/# rpm -ivh samba-3.0.10-1.4E.i386.rpm warning: samba-3.0.10-1.4E.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60ePreparing. # 100% 1:samba # 100%# rpm -ivh system-config-samba-1.2.21-1.noarch.rpm warning: system-config-samba-1.2.21-1.noarch.rpm: V3 DSA signature: NOKEY, key ID db42a60ePreparing. # 100% 1:system-config-samba # 100%# rpm -qa | grep sambasamba-3.0.10-1.4Esamba-common-3.0.10-1.4Esystem-config-samba-1.2.21-1samba-client-3.0.10-1.4E建立系统用户和samba用户账号# useradd qq# smbpasswd -a qq# useradd ww# smbpasswd -a ww# cat /etc/samba/smbpasswdqq:503:CCF9155E3E7DB453AAD3B435B51404EE:3DBDE697D71690A769204BEB12283678:U :LCT-4A1B72DA:ww:504:2ECDB8ACB87B6D97AAD3B435B51404EE:5A420E7750B39BE09FA29D314FA4B51C:U :LCT-4A1B732F:配置共享目录,在samba服务器的默认设置中没有公共目录的设置,需要手动添加。在对smb.conf文件进行设置之前需要先建立公共目录在linux系统中的录/home/public,并设置该目录的属主和属组为nobody。# mkdir /home/public# chown nobody.nobody /home/public# ls -ld /home/publicdrwxr-xr-x 2 nobody nobody 4096 May 26 12:44 /home/public下面修改配置文件# vi /etc/samba/smb.confpublic /为共享目录的名称path=/home/public /为共享目录对应的linux系统目录comment = software /设置对该共享目录的说明性的文字public=yes /设置为yes时表示该目录对于所有samba用户时可见的only guest=yes /设置为yes时表示所有用户在使用该共享目录时的用户身份都是guest,即linux系统用户nobodywritable=yes /设置为表示该共享目录对于用户可写在对smb.conf文件完成所有的配置以后,可以使用testparm命令对该配置文件进行测试,testparm命令是samba服务器软件包中提供的配置文件测试工具,可以对smb.conf配置文件的语法进行检测,并显示当前配置的清单。# testparmLoad smb config files from /etc/samba/smb.confProcessing section homesProcessing section printersProcessing section publicLoaded services file OK.Server role: ROLE_STANDALONEPress enter to see a dump of your service definitions# Global parametersglobal workgroup = MYGROUP server string = Samba Server log file = /var/log/samba/%m.log max log size = 50 socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192 printcap name = /etc/printcap dns proxy = No idmap uid = 16777216-33554431 idmap gid = 16777216-33554431 cups options = rawhomes comment = Home Directories read only = No browseable = Noprinters comment = All Printers path = /var/spool/samba print
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 智能制造生产线优化方案
- 数据分析报告质量承诺书(8篇)
- 推进新产品研发进度协调函(8篇)
- 心理健康:小学生情绪管理与情绪表达小学主题班会课件
- 企业资产购置审批与成本控制模板
- 企业财务报表精准编制指南
- 手术裂开病人的早期识别与处理
- 室内外装饰设计风格与施工工艺指南
- 天文观测数据可靠保证承诺书7篇
- 汽车传感器检测与更换技术
- 翻译服务劳务合同范本
- 社会工作综合能力(初级)课件
- 成人癌性疼痛护理-中华护理学会团体标准2019
- 马原第七章共产主义崇高理想及其最终实现
- 培训testlab中文手册modal impact1 Test Lab模态锤击法软件布局
- 安徽华塑股份有限公司年产 20 万吨固碱及烧碱深加工项目环境影响报告书
- GB/T 22237-2008表面活性剂表面张力的测定
- 十一 英语的搭配
- 业财一体化财务对接解决方案
- 《动物病理》课程设计课件
- 《高级计量经济学》-上课讲义课件
评论
0/150
提交评论