linux 与WINDOWS搭建局域网,第1张

一步一学Linux与Windows 共享文件Samba (v02b)

作者:北南南北,正在增加中 需要您的参与;

来自:LinuxSirOrg

简介:本文只是讲一讲我们最常用的Linux与Windows共享文件,主要是为新手指一指路。如何建立最简单的Samba服务器,并讲述遇到问题应该从何处寻找解决方案;正在更新之中,希望您的参加 谢谢;

目录

0、架设Samba 服务器的前提;

01 查看文件内容和编辑文件的工具;

02 关于文件和目录相关;

03 用户和用户组相关;

04 进程管理;

1 Samba 简介

2 Samba 功能和应用范围

3 Samba 两个服务器相关启动程序、客户端及服务器配置文件等;

31 Samba 有两个服务器,一个是smbd,另一个是nmbd;

32 查看Samba 服务器的端口及防火墙;

33 查看Samba 服务器的配置文件;

34 Samba 在Linux 中的一些工具(服务器端和客户端);

35 在Linux 中的常用工具,Windows查看Linux共享的方法 ;

351 在Linux系统中查看网络中Windows共享文件及Linux中的Samba共享文件;

352 在Windows中访问Linux Samba服务器共享文件的办法;

353 smbfs文件系统的挂载;

4 由最简单的一个例子说起,匿名用户可读可写的实现;

第一步: 更改smbconf

第二步:建立相应目录并授权;

第三步:启动smbd和nmbd服务器;

第四步:查看smbd进程,确认Samba 服务器是否运行起来了;

第五步:访问Samba 服务器的共享;

5、复杂一点的用户共享模型(适合10人左右的小型企业);

51 共享权限设计实现的功能;

52 在服务器上创建相应的目录;

53 添加用户用户组,设置相应目录家目录的权限;

531 添加用户组;

532 添加用户;

533 添加samba用户,并设置密码;

534 配置相关目录的权限和归属;

54 修改Samba配置文件;

55 关于客户端访问;

551 Windows客户端访问;

++++++++++++++++++++++++++++++++++++++++++++++++

正文

++++++++++++++++++++++++++++++++++++++++++++++++

0、架设Samba 服务器的前提;

Linux是一个多用户的操作系统,对任何服务器的架设与都用户、用户组及权限相关,这是操作的基础。Samba服务器也不例外,对这些知识的掌握也是极为重要的。在Windows系统上虽然也能架共享文件服务器,但它的权限控制实在令人不敢恭维。如果我们用Windows系统来架网络共享文件系统,就是点鼠标也能把我们点迷糊了。但在Linux中,我们可以轻松的改一改配置文件,不到几分钟就能建好自己的Samba服务器。哪个更容易,只有你知道;

对于Samba服务器的架设,有的弟兄简单的认为,只要把改一下配置文件,创建好相应的目录就行了。其实并不是这样的,还要深入的工作,比如目录的权限和归属,也就是说能让哪个用户和用户组有读写权。只有把配置文件和共享目录的权限结合起来,才能架好Samba服务器;

下面是常用的基础知识,我们在本文中所涉及的内容都可以在下面的列表中找到相应的解释;

01 查看文件内容和编辑文件的工具;

《Linux 文件内容查看工具介绍》

《文件编辑器 vi》

02 关于文件和目录相关;

《Linux 文件类型 及文件的扩展名》

《Linux 文件和目录管理之列出、删除、复制、移动及改名》

《Linux 文件和目录的属性》

《简述Linux文件搜索》

03 用户和用户组相关;

《Linux 用户(user)和用户组(group)管理概述》

《用户(User)和用户组(Group)配置文件详解》

《Linux 用户管理工具介绍》

《Linux 用户(User)查询篇》

04 进程管理;

《Linux 进程管理》

1 Samba 简介

Samba(SMB是其缩写) 是一个网络服务器,用于Linux和Windows共享文件之用;Samba 即可以用于Windows和Linux之间的共享文件,也一样用于Linux和Linux之间的共享文件;不过对于Linux和Linux之间共享文件有更好的网络文件系统NFS,NFS也是需要架设服务器的;

大家知道在Windows 网络中的每台机器即可以是文件共享的服务器,也可以同是客户机;Samba 也一样能行,比如一台Linux的机器,如果架了Samba Server 后,它能充当共享服务器,同时也能做为客户机来访问其它网络中的Windows共享文件系统,或其它Linux的Sabmba 服务器;

我们在Windows网络中,看到共享文件功能知道,我们直接就可以把共享文件夹当做本地硬盘来使用。在Linux的中,就是通过Samba的向网络中的机器提供共享文件系统,也可以把网络中其它机器的共享挂载在本地机上使用;这在一定意义上说和FTP是不一样的。

Samba 用的netbios协议,如果您用Samba 不成功,

Linux与Windows 、Linux 和 Linux

2 Samba 功能和应用范围

Samba 应该范围主要是Windows和Linux 系统共存的网络中使用;如果一个网络环境都是Linux或Unix类的系统,没有必要用Samba,应该用NFS更好一点;

那Samba 能为我们提供点什么服务呢?主要是共享文件和共享打印机;

3 Samba 两个服务器相关启动程序、客户端及服务器配置文件等;

31 Samba 有两个服务器,一个是smb,另一个是nmb;

smb 是Samba 的主要启动服务器,让其它机器能知道此机器共享了什么;如果不打开nmb服务器的话,只能通过IP来访问,比如在Windows的IE浏览器上打入下面的一条来访问

肯定访问不到,纳闷你都可以架设一个web服务器,连这点最基本的网络常识都不知道吗

建议你看一下CCNA之类的书,了解一下网络基础知识。

至于你的情况希望公网访问到内网的服务器,最常用的方法就是通过NAT网络地址转换。

你可以在公网接入处配置一个NAT端口转发,把公网访问80端口的数据转发到你内网

这台web服务器的80端口上。具体技术的实现自己百度以下NAT相关资料吧。

192168110 那种方式是局域网的ip地址。只适用于局域网内

你使用路由的话,应该是路由与外网相连,你的局域网内的红帽主机是没有公网IP的

但是如果你的路由拥有公网IP地址的话,还是能够连接的

一个方式是如果你的路由比较高级,有ssh服务器的话,那么你先ssh登录路由,然后在上面再使用ssh登录你的服务器。

另外还有一种方式是端口映射,把路由上的端口映射到局域网的服务器主机上的服务端口上。我没操作过,如果你需要的话就自己查方法吧。

如果没有公网ip的话,上面两种方式都是不可行的。

另外还有种方式,是通过中介来操作。比如即时聊天工具。 你在局域网内部的服务器上运行一个即时聊天的消息处理程序,获取来自管理员聊天帐号的消息,然后作为指令执行,再把输出结果通过即时聊天软件发送出去。这种方式不需要公网ip,但是借助了即时聊天的工具,而且发送的是明文,有安全风险,如果你的服务器只是用来玩的,倒还可以试试,不然就不推荐使用了。

要实现这种方式,只需要有一个能处理即时聊天服务的程序,据我所知,借助 IRC作为中介的即时聊天平台很简单,编程实现不复杂,另外使用Gtalk,飞信等等的开放协议的即时聊天工具也可以。 中介操作的方式还有邮件方式等,但是都不安全。

文件共享是重要的网络需求,特别在企业环境中这种需求显得非常迫切。我们知道Windows主机间的文件共享非常简单,可以通过网上邻居实现。但是企业环境中主机的操作系统比较复杂,其中不乏Linux、Unix这样的系统。那如何实现Windows与Linux之间的文件共享呢一个有效的解放方案是,在Linux平台上部署SAMBA即可实现此类共享需求。下面笔者搭建环境,实例演示在Linux中部署SAMBA的详细技术细节。

环境描述

Linux系统:Red Hat 90

Windows系统:Windows XP sp2

一、SAMBA服务部署

1、samba安装

(1)验证

samba是Linux系统集成的一个工具,在安装Linux的过程中用户可以选择安装。验证系统是否安装了samba可以通过如下命令进行查看:

[root@localhost root]# rpm -qa |grep samba

如果如下面所示,就说明已经安装了samba:

samba-swat-227a-790

samba-227a-790

redhat-config-samba-104-1

samba-common-227a-790

samba-client-227a-790

从图1可以看到笔者的Linux已经安装了samba。(图1)

(2)安装

如果上述命令没有任何显示,就说明没有安装。要安装samba非常简单。将RedHat 90的第一张安装盘放入光驱,系统会自动挂接。如果没有挂接可输入mount /mnt/cdrom进行挂载,然后按照下面的操作进行安装:

# cd /mnt/cdrom/RedHat/RPMS

# rpm -ivh samba-common-227a-790i386rpm

# rpm -ivh samba-227a-790i386rpm

# rpm -ivh samba-client-227a-790i386rpm

这样我们就安装好了samba,然后输入命令进行查看:

# ls /etc/samba

可以看到有三个文件分别为lmhosts、smbconf、smbusers。

(图2)

(4)下面需要配置smbusers文件,设置用户访问权限。用vi打开smbusers文件,然后将

root = administrator admin

nobody = guest pcguest smbguest

修改为

root = admin

gslw = 11

nobody = guest pcguest smbguest

保存并退出。

(图4)

配置完成后,我们输入命令testparm进行对samba配置文件的测试,如图5所示,测试正常。(图5)

3、创建共享文件夹

作为测试,我们运行命令mkdir /home/gslw创建共享文件夹,然后输入命令ls /home可以看到文件夹创建完成。

4、添加用户

要访问该共享文件夹,还需要添加用户。输入命令smbpasswd -a root,将root用户添加进来,并为其设置访问密码。同样的我们输入命令smbpasswd -a gslw,将gslw用户添加进来并为其设置密码。诸如此类,大家可以根据需要添加相应的用户。(图6)

5、设置权限

设置共享目录的访问权限,比如我们设置为完全控制可输入命令即可chmod 777 /home/gslw。权限设置完毕后需要重新启动服务,输入命令service smb restart即可。(图7)

6、访问测试

(1)linux访问

我们先在linux下访问SAMBA共享文件夹进行测试。输入命令smbclient //192168216133/gslw -U root

,然后输入密码可以看到访问成功。进入smb命令行,我们输入ls命令查看共享目录中的文件,当然也可以通过mkdir命令创建目录。然后用gslw登录samba服务器,可以利用ls查看共享目录中的文件,然后用mkdir创建文件夹,可以看到没有成功,这是因为我们在samba的配置文件设置了gslw用只有读权限,没有赋予其写权限。通过上面的测试,说明我们的samba服务器创建成功,在linux下访问成功。(图8)

(2)Windows XP访问

下面我们测试在XP中是否可以访问samba服务器中的共享文件夹。打开“我的电脑”,在地址栏中输入samba服务器的IP地址。我们输入\\192168216133回车后弹出登陆框,输入登录用户名admin密码test168,可以看到成功登录samba服务器,可以看到我们在samba的命令行下刚才创建的目录。(图9)

总结:Samba是一个网络服务器,用于Linux和Windows共享文件之用。上面演示的利用samba服务实现Linux与Windows直接的文件共享,涉及了samba的设置几个重要方面。其实,在实际应用中我们可以根据自己的需要进一步深入设置,只有把配置文件和共享目录的权限结合起来,才能使Samba服务发挥更大的作用。

首先配置一下网卡:vi /etc/sysconfig/network-scripts/ifcfg-eth0(其中DEVICE=eth0 是设置那块网卡的、BOOTPROTO=dhcp的话就是自动获得ip,=static的话是静态ip,MACCADDR=00:0C:11:22:33:12 mac地址,如果BOOTPROTO设置dhcp的话 下面就不用配了,如果是static就要手动添加ip地址IPADDR=你要设置的ip NETMAST=子网掩码 GATEWAY=网关) 如果要连外网 还要设置一下dns ,vi /etc/resolvconf 添加nameserver= 你的DNS

应该可以帮到你 不行在找我

把所有电脑连起来,分配好IP,保证能相互Ping通。

用其中的一台做FTP服务器。比如win用ser-U,搭一个FTP的站就可以。最好装一个win2003的系统。

这样就可以用任何的机子直接连接FTP上传下载文件了。

匿名用户一般是映射到系统的ftp用户,用下面的命令查看ftp用户的家目录

cat /etc/passwd | grep ftp

假设是在/var/ftp,需要赋予这个目录的写权限匿名用户才能写,最好是把拥有者直接赋予给ftp

chown ftp:ftp /var/ftp && chmod u+wx /var/ftp

另外就是vsftpdconf的设置了,按照楼上fyzq2008说的设置就对了

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » linux 与WINDOWS搭建局域网

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情