Ftp服务器、 Samba服务器、NFS服务器的区别

根据使用的方式来看,可以分为3种类别的文件服务器:ftp服务器(ftp/tftp)、 Samba服务器、NFS服务器。ftp的客户可以是任意平台,samba是专门针对windows客户,而NFS则是面向linux/unix用户的。下面是三种服务器的对比情况:

各个服务器的配置

NFS服务器:

NFS是SUN Microsystem公司开发的网络文件系统,它是一种基于远程过程调用(RPC)的分布式文件系统架构。与Samba相比较,NFS的数据吞吐能力更强。

1、用命令 # rpm --qa | grep nfs检查软件包NFS是否安装 ,如果输出没有输出,表明没有被安装,请自行安装之。

2、 配置NFS服务器。用任何文本编辑器配置文件/etc/exports,来确定需要给客户共享的目录。它的基本格式为Directory Host(options) # comments ,这3个字段/列要在一行,directory与host(options)之间要有间隙,# comments 可有可无。主机选项主要是给与挂接用户什么样的权限。目录directory表示要共享出去的目录,值得注意的是,在启用NFS服务以前,系统管理员应该仔细一些,比如不小心共享了根目录/,并且给与用户读写权限,这是十分糟糕的问题。因此,尽可能少的共享目录和赋予较小的访问权限。主机名host是一个很灵活的项目,可以是单个的主机名称(由/etc/hosts得到),主机ip地址,由域名服务器解析的主机名称,IP网络---网络号和子网掩码中间用 "/"连接,NIC等。下面列举一个例子。

/data/skyboy skyboy(rw) #把目录/data/skyboy共享给主机skyboy,并且主机对目录#/home/skyboy有读写权限

/tmp 192.168.222.129(ro) #主机192.168.222.129对目录/tmp具备只读共#享权限

/media/cdrom 192.168.222.0/255.255.255.0(ro) #整个网络有读取挂接在NFS #服务器上的光驱光盘的读取权限

3、启用NFS服务。分两步:首先启用portmap,然后启用NFS服务。#service portmap start; #注意老版本使用的的方式

service nfs start。其中portmap的功能是启用远程过程调用,有时启用NFS不能成功,不妨检查一下portmap服务是否启动(# ps aux | grep portmap)。

4、在客户端挂接NFS共享出来的目录。先在客户端创建一个挂接点,如 # mkdir /mnt/nfs ,而后使用命令把nfs服务器共享出来的目录挂接上,以第2步那个共享为例,我们挂接目录 /tmp , # mount --t nfs 192.168.222.129:/tmp /mnt/nfs //假定nfs服务器的ip地址是192.168.222.129

5、访问NFS共享资源。接上步,改变文件目录 # cd/mnt/nfs就方便地实现了对nfs服务器目录/tmp的远程访问。

6、卸载NFS文件系统。在客户端执行命令 # umount/mnt/nfs 就卸下了第4步挂接的NFS文件系统。

Samba服务器

这个世界既非只有linux/unix,也不是由microsoft windows 独霸天下的格局。也许出于linux/unix与windows既竞争又共存的事实,人们开发了 linux给windows用户提供文件共享的工具Samba,这应该算得上linux的开放精神吧!

1、检查是否安装samba软件包。# rpm --qa | grep smb ,如果没有则自行安装samba。

2、修改配置文件/etc/samba/smb.conf。早期的linux版本的配置文件smb.conf的安全选项"security=share",这个默认值是个安全隐患,不过现在流行的linux版本的安全选项的默认值是"security=user"。如果只想用户对他的目录拥有只读权限,就把选项"writeable=yes"改成"read only=yes"。其他的选项根据自己的要求更改即可。对于一般的应用而言,基本上不用修改这个文件。

3、添加系统账户。由于smb的访问是使用系统账号进行的,因此添加账号是必不可少的。这个比较简单,用命令 # useradd sery , # passwd sery,就可以依次添加若干系统账号。

4、建立Samba用户密码文件。虽然samba的用户是系统用户,但出于安全考虑,samba用户的密码并非创建系统用户时设定的用户密码。为了生成smb所需的密码,应该进行下面的操作:

smbpasswd -a skyboy //为系统用户设置smb口令

5、启用Samba服务器。# service smb start

6、windows客户端访问 Samba服务器共享目录。在windows环境下,右键点击"网上邻居"图标,然后左击"搜索计算机",把Samba服务器的IP地址填写在"计算机名"搜索栏,点击立即搜索。找到后双击图标,然后输入在Samba服务器上预先设定的用户名和密码,就能合法访问Samba服务器设定的共享资源。为了方便使用,可以把Samba服务器提供的共享目录映射成本地驱动器。

7、其他。上述配置的samba服务器,用户的访问共享目录是系统账号的主目录。要想把共享目录设置到其他位置,修改Samba 的配置文件/etc/samba/smb.conf文件即可。

FTP服务器

在linux 环境下,有三个主要的FTP服务器:vsftpd、proftpd和wu-ftpd。因为安全方面的原因,vsftpd目前已经牢牢的占据了主导地位。从字面上我们就可以理解vsftpd所具备的主要特征---very secure(非常安全之ftp)。资料表明:1、使用ASCII方式下载文件,在1G以太网上的下载速度可以达到86M/s。2、vsftpd可以支持 15000个并发用户的访问。

1、检查是否安装vsftp包。# rpm --qa | grep vsftpd。如果没有则安装它。

2、 修改配置文件。Vsftpd的配置文件为/etc/vsftpd/vsftpd.conf,如果不打算提供匿名访问的话,需要修改配置文件 /etc/vsftpd/vsftpd.conf的项"anonymous_enable=Yes"为"anonymous_enable=No"。

3、启用vsftpd服务。#service vsftpdstart。

4、客户端连接访问。可以是专用的ftp客户端工具,也可以使用浏览器。用工具访问vsftpd服务器的速度要比用浏览器快很多。

5、vsftpd服务器的用户。Vsftpd服务器支持三种类型的拥护:本地用户(拥有系统账号)、虚拟用户(guest)、匿名账号;系统管理员应该根据安全需求来确定vsftpd服务器的用户访问策略

相关推荐
程序猿进阶2 分钟前
深入解析 Spring WebFlux:原理与应用
java·开发语言·后端·spring·面试·架构·springboot
qq_433618444 分钟前
shell 编程(二)
开发语言·bash·shell
charlie11451419118 分钟前
C++ STL CookBook
开发语言·c++·stl·c++20
袁袁袁袁满19 分钟前
100天精通Python(爬虫篇)——第113天:‌爬虫基础模块之urllib详细教程大全
开发语言·爬虫·python·网络爬虫·爬虫实战·urllib·urllib模块教程
ELI_He99925 分钟前
PHP中替换某个包或某个类
开发语言·php
小林熬夜学编程29 分钟前
【Linux网络编程】第十四弹---构建功能丰富的HTTP服务器:从状态码处理到服务函数扩展
linux·运维·服务器·c语言·网络·c++·http
Hacker_Fuchen31 分钟前
天融信网络架构安全实践
网络·安全·架构
m0_7482361132 分钟前
Calcite Web 项目常见问题解决方案
开发语言·前端·rust
上海运维Q先生34 分钟前
面试题整理15----K8s常见的网络插件有哪些
运维·网络·kubernetes
倔强的石头10640 分钟前
【C++指南】类和对象(九):内部类
开发语言·c++