Linux架设FTP服务器之一((精选5篇))由网友“Clementine”投稿提供,下面是小编为大家整理后的Linux架设FTP服务器之一,供大家参考借鉴,希望可以帮助到有需要的朋友。
篇1:Linux架设FTP服务器之一
一、什么是FTP:文件传输协议原理
互联网文件传输协议(File Transfer Protocol ,FTP) 标准是在RFC959说明的,该协议定义了一个从远程计算机系统和本地计算机系统之间传输文件的一个标准。一般来说,传输文件的用户需要先经过认证以后才能登录网站,然后方能访问在远程服务器的文件。而大多数的FTP服务器往往提供一个GUEST的公共帐户来允许没有远程服务器的用户可以访问该FTP服务器。
一个FTP会话通常包括五个软件元素的交互。
用户接口 提供了一个用户接口并使用客户端协议解释器的服务
客户 PI 客户协议解释器,其项远程服务器协议机发送命令并且驱动客户数据传输过程
服务器PI 服务器协议解释器,响应客户协议机发出的命令并驱动服务器端数据传输过程
客户 DTP 客户数据传输过程,其负责完成和服务器数据传输过程及客户端本地文件系统的通信
服务DTP 服务器数据传输过程,其负责完成和客户数据传输过程及服务器端文件系统的通信
在RFC 959中,一般使用用户这个名词来指代客户。RFC 959定义了客户PI和服务器PI交互的方式和规范。用户接口与PI和DTP交互的机理都并不是协议标准的一部分。PI和DTP往往通常是在同一个程序模块中实现的。
在FTP会话中,一共会存在有两个独立的网络连接,一个是由两端的PI使用的,另一个是由两端的DTP使用的。PI之间的连接一般被称作控制连接(control connection),DTP之间的连接被称做数据连接(data connection)
使用TCP服务的控制和数据连接
通常情况下,FTO服务器监听端口号21来等待控制连接建立请求。而数据连接端口号的选择依赖于控制连接上命令。通常是客户发送一个控制消息来指定客户监听并等待服务器端发送数据连接建立请求的端口号。
对数据传输和控制命令传输来使用不同的独立连接有如下优点:两个连接可以选择不同的合适服务质量,如:对控制连接来说高需要更小的延迟时间,对数据连接来说需要更大的数据吞吐量;而且可以避免实现数据流中的命令的通明性及逃逸。
当传输建立时,总是由客户端首先发起。然而客户和服务器都可能是数据发送者。除了传输用户请求下载文件,数据传输过程同样在客户端请求列服务器端目录结构时建立。
1.命令选择
当一个传输建立时,一般通常需要指定四个方面的属性:
文件类型
该属性指定如何将文件的数据匹配成适于传输的格式,一共有四种可能的选择:
ASCII文件类型
在发送端,文件从本地文本文件格式转换为 NVT ASCII格式,每行结束有一个CR/LF对来标识。 在接收端,再被转换为本地的文本格式。
这说明了为什么Unix主机之间传输文本文件为何传输的数据量要大于文件的实际大小。若传输一段端或传输两端都不使用ASCII文本编码,则是应该由数据传输过程来实现本地编码和NVT ASCII 编码之间的转换。
EBCDIC文件类型
类似于ASCII,区别仅仅上使用EBCDIC字符编码
图象 (或二进制)文件类型
文件以本地传输内容传输,在远端以同本地完全相同的内容存储,
本地文件系统
用在字节大小不是8位的环境下。没字节位数由发送者指定。
在实际应用中,只有ASCII和图象格式使用的较多。
格式控制
该属性是和将文本文件最后传送到打印设备相关的,其中有多种方式来实现将垂直格式信息编码到文件中,包括指示一个新页开始的方式。有如下方式可供选择:
无须打印格式控制,这是缺省值 Telnet打印控制,在telnet协议中定义的控制字符包含在数据流中。. Fortran打印控制, 该属性在实际中很少使用。
结构
文件可以拥有内部结构,在传输中该结构被保留。由数据传输过程来负责在传输中的结构及本地结构之间相互匹配,有三种可能性:
文件结构 这实际上意味着文件被看作没有内部结构的连续的字节流。
记录结构 文件是有一系列记录组成的结构。这只适用于文本文件。
页面结构 也可以称做块结构。每一页都伴随一个页号来传输,从而以顺序的方式来完成传输。 页面结构很少在实际中遇到。记录结构也不是很常见。对于文本文件使用ASCII文件类型可以获得相同的效果。
传输模式
该属性可以取三个不同的值:
流模式 文件的以字节流的方式传输。
块模式 文件以一个块连接一个块的方式传输,每个块的开头都有一个头。
压缩模式 一个简单的运程长度压缩编码被应用,来压缩连续的相同的字节。
实际中,一般只有流模式被使用。而压缩一般通过使用各种其他的工具程序来获得。
当一次传输被建立,客户端一般指定一个或多个前面说明的属性。若服务器端不能支持某个选项,服务器将用一个错误信息来响应客户端,并不具有协商机制。
FTP提供了充足的命令来使用户和远程建立连接并访问远程文件系统。
2.命令格式
命令以NVT ASCII串的格式被传输。每个命令以三个或四个大写的NVT ASCII字符开始,后面带有选项参数和一个CR/LF对来标识命令结束
应答由三个NVT ASCII数字及一个选项消息组成。
一个长的应答也许会有多个消息组成,第一个消息的三个数字后带有一个破折号,最后的消息不带有破折号。中间的消息无须携带三个数字,但是如果带了三个数字,则也需要破折号。
下面是所有的命令的列表。带有星号的命令一般很少使用,所以往往在具体实现中不支持。
String Meaning
ABOR 放弃传输
*ACCT 某些系统将帐号和用户与文件系统相关联
*ALLO 为即将传送的文件分配空间。后面携带的参数来确定字节数
*APPE 将文件附加到已经存在的文件后面
CDUP 在远程系统上将当前目录切换到上级父目录
CWD 改变远程系统的工作目录
DELE 删除远程系统的文件
HELP 读取服务器的帮助信息,如:支持的命令的列表
篇2:FTP服务器架设管理篇
正文:
架设好FTP服务器后,怎样才能更好地管理自己的FTP,使它性能稳定并合理占用机器资源和分配带宽呢?不同的FTP服务器软件提供的管理方式、功能有所不同。
一、IISFTP服务器的管理
IIS虽然安装简单,但管理功能不强,只有简单的账户管理、目录权限设置、消息设置、连接用户管理。
1.账户管理
与Serv-U不同,IIS对账户的管理按照Windows用户账户方式进行。如果要给FTP服务器添加一个用户名和密码均为dys的授权账户,首先得在Windows中添加该账户。
1)在“管理工具”中打开“计算机管理”,找到“本地用户和组”下的“用户”,右击鼠标,选择“新用户”。
2)在弹出的“新用户”窗口中输入用户名和密码,确定后Windows就会创建该用户。
3)在“管理工具”中打开“Internet信息服务”,进入“默认FTP站点”的“属性”设置窗口,在“安全账户”选项卡中找到“FTP站点操作员”。在这里可以看到,系统已经默认“Administrators”组所有成员为授权账户。如果你用的是Windows2000服务器版,可以点旁边的“添加”按钮,将dys账户添加进去,如果不是,则“添加”和“删除”按钮为灰色,不可选。能不能将dys账户添加进去呢?当然可以。
4)回到“计算机管理”,右击刚才创建的用户名,打开“属性”设置,在“隶属于”选项卡中先将默认的“Users”组删除,再点“添加”,在弹出的“选择组”窗口中点“高级→立即查找”,在搜索结果中选择“Administrators”组,然后确定就可以了。
5)要删除某个账户,直接在“计算机管理”中删除即可。
提示:这样做的缺点在于如果不是Windows2000服务器版,则你每添加一个账户,该账户就自动拥有系统管理员“Administrator”的所有权限。可以想象,一旦账户密码失窃将带来很大的安全隐患。
2.目录管理
1)设置虚拟目录
很多时候,上传的文件多了,架设服务器当初设定的主目录所在盘空间往往就不够了,怎么办?这就需要设置虚拟目录。虚拟目录就是将其他目录以映射的方式虚拟到该FTP服务器的主目录下,这样,一个FTP服务器的主目录实质上就可以包括很多不同盘符、不同路径的目录,而不会受到所在盘空间的限制了。当用户登录到主目录下,还可以根据该账户的权限对它进行相应的操作,就像操作主目录下的子目录一样。如果用户被锁定在主目录下,这项功能将允许他们访问主目录之外的其它目录。
这里我们假设要将D\MTV目录设危\Ftp目录下的虚拟目录Music。在“Internet信息肺瘛敝杏一鳌澳认FTP站点”,选“新建→虚拟目录”进行设置。在“虚拟目录别名”中填入“Music”,在“FTP站点内容目录”中选择“D\MTV”T凇胺梦嗜ㄏ蕖敝薪“读取”和“写入”打上钩,完成后退出。以dys的账户登录到FTP看看,是不是多了个“Music”的目录?接下来就可以往该目录里上传或下载文件了。
2)读写权限设置
IIS的权限设置比较简单,对每个目录只提供了三种权限:读取、写入和记录访问。对主目录可以在“默认FTP站点”的属性中设置,对于虚拟目录可以在虚拟目录的“属性”中设置。
提示:主目录设置的权限如果与虚拟目录的权限发生冲突,则以主目录权限为准。比如主目录设置的权限为读取和写入,而Music的权限只设置为读取,则Music权限将会被主目录权限覆盖掉,自动拥有写入权限。
3.消息设置
进入“默认FTP站点”属性中的“消息”选项卡,可以设置用户登录和退出服务器时在FTP客户端软件的状态窗口显示消息。其中,“标题”和“欢迎”将在用户登录时出现,“退出时”是当用户退出服务器时显示的告别信息。
4.连接用户管理
在“FTP站点”选项卡中可以简单地管理连接用户。“限制为”用来设置服务器允许同时连接的最大连接数,如果不是Windows2000服务器版,不仅“无限制”选项不可选,而且最大连接数不能超过10个。“连接超时”可以设置当连接用户空闲多少秒时会被服务器自动踢出,这可以有效防止用户浪费服务器最大连接数。点右下角的“当前会话”可以看到在线连接用户所用的账户及当前状态,选择其中某个用户再点“断开”可以将该用户踢除出服务器。
二、Serv-U服务器的管理
比起IIS来,Serv-U的管理功能强大得多,而且设置也很方便。需要特别注意的是每进行任何一次设置或改动,都要点击界面左上角工具条的“保存”按钮才能生效
1.账户管理
Serv-U对账户的管理相当方便,不仅可以对单个账户进行管理,还可以将具有相同权限的多个账户设置成组,进行统一管理。
1)添加/删除单个账户
在左边窗口中找到“用户”,右击,选“新建用户”,依次设置“用户名称”、“密码”、“主目录”、“锁定用户于主目录”即可完成一个新账户的创建。有时我们要建一批具有相同主目录的账户,比如A1、A2、A3……如果一个个地去新建,就比较麻烦,这时可以使用“复制用户”的功能。先创建A1用户,再右击账户“A1”,选“复制用户”,依此而为,然后再将复制后的账户名改为A2、A3等。这样创建的账户除了名称不同外,其余包括密码在内的设置都是一样的。
2)添加/删除组
如果有一批账户,如A1、A2、A3,拥有相同的访问主目录及IP访问规则,就可以将这些账户设成一个组,统一管理,对组做的任何设置都将同时对该组所有账户成员生效。右击“组”,选“新建组”,输入组的名称就可以建立新组。新建的组并不拥有任何账户成员,还需要将这些成员账户一一添加到组中。选中要添加的账户,在右边窗口中的“组”中选择要加入的组,除Anonymous账户外,任何一个账户均可同时加入一个或多个组。要将此账户从该组中删除,留空此处即可。要删除某个组,在组名上点右键,再点“删除组”即可。同样,组和单个账户一样,也可以复制,方法是选择某个组后点右键,再点“复制组”。
3)设置账户的有效期
如果某些账户违反了你制定的规矩,可以通过禁止该账户一段时间以示惩诫,在此期间,任何用户用此账户登录服务器都将被拒绝。你只要选中该账户,在右边“账号”选项卡上将“禁用账号”选中即可,若要解禁,将“√”去掉。对于一些临时性的账户,如果等到期后再一个个地去删除,对你的记性显然是一大考验。Serv-U提供了一个解决办法,可以到期自动删除该账户。选中“自动删除账号于日期”,在后面的下拉框中设置好到期的日子,系统就会按指定日期自动删除该账户。
2.设置虚拟目录
与IIS一样,Serv-U也提供了虚拟目录设置功能。假设我们要将“G\电影\DVD影啤蹦柯加成涑桑疲裕兄髂柯枷碌摹埃模郑摹蹦柯迹点击“设置”,在“常规”选项卡下有个“虚拟路径映射”,点“添加”,在“物理路径”中输入“G\电影\DVD影啤保“映射物理路径”中输入“%HOME%”或FTP主目录的绝对路径,“映射的路径名称”填进“DVD”,完成后如图4。最后,进入用户的“目录访问”选项卡,将“G\电影\DVD影啤蹦柯继砑咏去。以该账户登录FTP,就可以看到多了一个DVD目录。
3.设置目录权限
与IIS不同,Serv-U基于账户来设置不同的访问目录。每个账户在创建时都要选择好登录后所处的目录位置,不同的账户可以不同。每个目录有如下权限可供设置:
1)文件操作
读取:允许用户从服务器下载文件;
写入:允许用户上传文件到服务器,但不允许修改、删除和重命名;
追加:允许向存在的文件附加内容或者进行续传,只有选中此项,该目录才允许续传;
删除:允许用户修改文件、重命名和删除;
执行:通过FTP执行命令,这个权限要小心使用,否则可能会导致安全问题。
2)目录操作
列表:允许用户取得该目录下的文件列表,不选,则用户什么也看不到;
创建:允许用户在该目录下创建新的子目录,很多上传用户在上传文件时往往都是将整个目录上传,如果此项未被选中,则用户只能上传一个个文件,而不能按目录来上传;
删除:允许用户删除目录。
3)子目录操作
继承:父目录的访问规则自动应用到子目录上。
作为站长,不仅要详细了解这些权限,还要学会合理设置每个目录的不同用户的权限。一般来说,对于普通或匿名用户,最好只赋予读取和目录列表权限,以方便管理和提高FTP服务器的安全性。对于上传用户,应当开设专门的账号并赋予读取、写入、追加、目录列表及创建权限,对于特殊用户,尽量少赋予更多的权限,尤其是“执行”权限。要设置权限,进入每个用户或组的“目录访问”选项卡,根据自己的需要自行设置。
4.消息设置
使用CuteFTPPro登录某个FTP时,有时会在状态窗口中看到一些诸如“欢迎来到本站”之类的信息,这就是消息。很多FTP站长并不重视登录/退出/更改目录的消息设置,其实如果设置得当,不仅会方便用户尤其是上传用户的访问,而且能使你的FTP看起来更加个性化和专业化。
选中“设置”,在右边窗口找到“消息”选项卡。“服务器响应信息”由系统默认,一般不须修改。注意下边的四个选项才是我们需要设置的:
“开始标记信息”:指定包含当用户登录成功时出现的欢迎信息的文件位置;
“关闭标记信息”:指定包含当用户断开连接时显示信息的文件位置;
“更改消息文件的主目录”:指定当用户更改所处目录时显示信息的文件位置;
“更改消息文件的次目录”:指定当用户更改目录且文件并未找到主文件时显示信息的文件位置。
以制作登录成功时显示的欢迎信息为例。先建一个名为“logon”的文本文件,打开,在里面输入如下信息:
欢迎来到×××的个人FTP服务器
你的IP地址是:%IP
目前服务器所在的时间是%time
已经有%u24h个用户在最近24小时访问过本FTP
本FTP服务器已经运行了%ServerDays天%ServerHours小时,
服务器运行情况:
所有登录用户数量:%loggedInAlltotal
当前登录用户数量:%Unow
用户已用空间配额:%QuotaUsedKB
剩余可用空间配额:%QuotaLeftKB
用户当前剩余空间:%DFreeKB
最大可用磁盘空间:%QuotaMaxKB
其中,以%开头的都是一些变量,×××可以改成你的名字,也可以加上一些你喜欢的文字,但每行以不超过70个英文字符为宜。在“开始标记信息”中输入logon.txt文件的地址,保存后用CuteFTP登录.这样,对于要上传文件的用户来说,服务器还剩余多少空间可供上传就一目了然了。
提示:对于每个账户也可以设置当该用户用此账户登录时出现的提示信息。在此账户的“常规”选项卡中找到“登录消息文件”,选择好消息文件目录即可。这样的好处在于:我们可以设置一个专门用来上传的账户,然后只将有关上传方面的相关详细信息设置成消息文件,供上传账户用户参考。
5.上传/下载率的设置
每个用户的设置选项中都有一个“上传/下载率”选项卡。所谓“上传/下载率”,实际上就是对用户上传下载文件的一种信用机制。作为站长,都希望用户能够上传一些有价值的东西供大家共享,而不仅仅只是使用FTP提供的资源。通过设置“上传和下载比例”,站长可以限制使用FTP的用户每上传一个文件后可以下载的文件数。启用上传/下载比率后,Serv-U提供了四种计数方式:
“计数每个任务文件”:计算该比率下每个单独FTP任务的已上传/下载的文件;
“计数每个任务的字节”:计算该比率下每个单独FTP任务的上传/下载文件的字节;
“计数所有任务文件”:计算该比率下所有FTP任务的已上传/下载的文件;
“计数所有任务的字节”:计算该比率下所有FTP任务的已上传/下载文件的字节。
以“计数每个任务文件”为例,如果在“比率”选项中,“上传”设为1,“下载”设为4,则该账户每上传1个文件,就可以从FTP中下载4个文件。
但“上传/下载率”存在一个问题:假如FTP中有某个目录或文件不需要计入上传/下载率,怎么办?我们可以在“设置”中的“上传/下载率”选项卡中设置。点击“添加”,输入不需计入的目录或文件,确定即可。如果有多个目录或文件,则重复此操作。
6.用户配额管理
利用“上传/下载率”可以有效地激励用户为获得下载权限而积极上传,但新的问题也随之而来:随着用户上传文件的增多,硬盘的空间很快就会被这些文件占用,如果某个用户上传的文件特别多,在硬盘空间不变的情况下,则又会影响到其他用户对可供上传空间大小的支配。这时,就需要进行用户配额管理了。
与“上传/下载率”相同,Serv-U可以给每个用户分配一个磁盘配额。选择要设置的用户,在“配额”中将“启用磁盘配额”选中。点击下方的“计算当前”按钮,“当前”中就会显示该用户账号当前可用的硬盘空间,在“最大”中填入分配给此用户账号所能支配的最大硬盘空间。注意,这里的单位是KB。
7.管理活动用户
林子大了,什么鸟儿都有。并不是每个登录到FTP服务器的用户都是循规蹈矩的,这就需要站长对连接到本服务器的在线用户进行管理。点击主界面左侧“域”下的“活动”,在右边的窗口“用户”选项卡中进行管理。选中其中某个用户,点右键,就会在弹出的菜单中显示出可以进行的操作。
“重载信息”:用于重新载入该用户信息,相当于刷新。
“发送消息”:向当前所选用户发送文本消息,发出的消息将在用户的FTP客户端软件中的状态窗口中出现。
“广播”:向当前所有活动用户发送文本消息。
“停止传送”:如果用户当前正在上传或下载文件,则可以中止此上传或下载操作,但不将该用户踢除服务器。
“踢除用户”:不管用户是否在上传或下载文件,将该用户踢除本服务器。
“监视用户”:对该用户所有操作进行实时监视,但不对该用户执行其它任何管理命令。选中后,会在“域日志”选项卡旁多出一个以该用户账户命名的选项卡,里面实时显示该用户的所有操作信息。要关闭监视,右击选项卡,选“关闭监视”即可。
“域日志”选项卡用来实时记录每个登录到本服务器的用户使用的账户名、登录时间、IP地址和退出服务器时间,便于站长了解本服务器登录用户的基本情况。默认情况下,该日志是实时更新的,但如果将旁边的“冻结”选中,就会停止更新。
提示:监视一个用户将占用服务器较大的资源,如果活动用户数比较多,请谨慎使用此功能。
8.编辑IP访问规则
对于某些扰乱服务器秩序但又不方便删除其账户的用户,可以利用“编辑IP访问规则”允许或阻止特定的IP访问。Serv-U对用户IP访问规则的设置相当灵活,不仅可以设置允许访问本服务器的用户IP,也可以设置拒绝访问的用户IP;不仅可对每个账户进行单独编辑,也可对整个服务器所有账户进行统一编辑,还支持“”和“?”通配贰
1)拒绝访问
对于捣蛋的用户,如果不方便删除其账户,可以从“域日志”中查找到该用户连接的IP。在“规则”文本框中,点击“添加”,Serv-U就会将此规则添加到下方的“IP访问规则”列表框中。这对于那些拥有固定IP的用户相当有效。但如果该用户是拨号上网用户,只要断线后重新拨号,就会获得一个新IP,显然,此IP访问规则对于该用户来说已经失效。要解决此问题,就要用到通配符和“-”符号。假设我们要屏蔽的用户IP是192.168.X.X,可以在“规则”中输入192.168.R部梢允淙耄保梗玻168.t.t-192.168.ttt.ttt或者192.168.0.0-192.168.255.255,效果一样。合理使用这些符号,还可以有效防止 攻击。
2)允许访问
如果想将自己的FTP站点仅供几个特定的用户使用,可以选中“允许访问”,在“规则”中输入特定用户的IP,再点“添加”。同样,如果特定用户的IP是动态IP,可以使用通配符和“-”符号进行设置。
其实作为站长,更多的时候需要将两种规则灵活混用,比如从拒绝访问的IP中设置某个IP为允许访问,抑或相反。需要提醒的是:对于某些局域网用户,比如网吧,如果将其IP设置为拒绝访问,则整个局域网都将会被服务器屏蔽掉。
9.服务器带宽等资源管理
对于服务器来说,最重要的就是如何保证服务器带宽等系统资源及其性能不被浪费。为此,还需要进行一些设置,进入“本地服务器→设置→常规”选项卡。
“最大速度”:即可以使用的最大带宽,根据服务器总带宽资源填入合适的数值。如果不填数值,Serv-U将使用所有可用的带宽,这样当连接的用户达到一定数量时,会导致服务器上其它的网络应用不可用。以512Kbps ADSL为例,最好设置为50KB/秒或以下。
“最大用户数”:设置在同一时间内允许连接到本服务器的最大用户数。由于每个连接到服务器的用户即使不上传、下载任何文件,也会占用一定带宽,因而最好进行设置,否则系统不会控制登录用户数,直至为此耗尽所有资源。
“删除部分已上传的文件”:删除不完整的上传文件。如果选择此项,系统会自动删除没有完全上载的文件,以最大可能地节省服务器硬盘空间。是否选择,要视服务器用户平时上传的文件大小决定。
“禁用反超时调度”:很多FTP服务器为了防止用户长时间不操作却占用带宽及连接数而做了超时设置,当用户连接超过一定时间但未做任何操作,就会被服务器自动踢除。针对这点,一些FTP客户端程序会自动向服务器端发送一些命令,以保证不被踢除。如果选择此项,服务器将采用一种独特的计时方式以防止FTP客户端程序的这些反超时设置。建议选择。
“拦截连接超过×次于×秒×分钟”:用来设置如果一个用户在×秒内持续连接了×次,那么屏蔽他的IP地址×分钟,可以有效防止用户使用如网络蚂蚁等高速多线程下载软件连接服务器。
以上的设置对于“域”下所有服务器都有效。但是这些设置对于具体的某个FTP服务器或某个账户来说过于粗浅,不利于细致地管理。不过不要紧,Serv-U针对每个服务器下的每个账户都提供了细化的设置功能。可进入该账户的“常规”选项卡:
“只允许X从相同的IP登录”:很多用户在下载两个或两个以上文件时,为了节省下载等待时间,往往会同时打开两个以上的FTP客户端软件登录。对于服务器来说,每个登录进程实际上就是一个用户,这样不仅占用了系统带宽,而且挤占了其他用户的登录权。这就需要选中此选项来防止此种情况。选中后,服务器就只允许某个IP同时最多有X个连接。
“最大上传速度和最大下载速度”:用来设置该账户用户最大的上传/下载速度。对于特定账户,可以设置得比一般账户高些,以体现特权。
“空闲超时和任务超时”:“空闲超时”用来设置当用户空闲超过一定时间时就会被服务器自动踢除以免占用资源,“任务超时”设置当用户与服务器进行每个任务时,超出一定时间就会被系统自动踢除。
“最大用户数量”:设置在同一时间内用此账户登录服务器的最大用户数。
完成这些设置后,实际上你已经拥有一台处于准专业管理水平下的准专业FTP服务器了。之所以还只是准专业管理水平,是因为你还没有实现当今最时尚最炫的远程管理功能。
10.实现远程FTP服务器管理
有没有想过在家中架设FTP服务器,在办公室也可以像坐在家中一样对服务器进行各种设置和管理呢?Serv-U就提供了这种远程管理功能。为方便说明,先假设我们在家中用Serv-U架设了一个名为“MyFtp”的FTP服务器,地址是ftp#218.1.1.1,端口是21,现在要在办公室用用户名和密码均为dys的账户进行远程管理。
1)先创建一个拥有远程管理权限的账户
新建一个用户,用户名和密码均设为dys。创建后,进入dys账户的“账号”选项卡,找到“权限”下拉列表框。这里除了一般用户的“没有权限”外,有四个远程权限可供选择:
“组管理员”:可以进行远程管理,但只能对本组用户进行管理,不能对服务器进行管理。
“域管理员”:可以进行远程管理,但只能对本域进行管理,不能添加新域。
“系统管理员”:可以进行远程管理且具有全部权限。
“只读管理员”:主要用来进行远程诊断,可以看到全部的服务器设置但不能够进行修改。
这里,我们选择“系统管理员”,然后保存。
2)在办公室机器上安装并设置好Serv-U
安装好后,架设服务器向导可以随意填。选中左边窗口中的“Serv-U”服务器,右击,选“新建服务器”。在弹出的向导窗口中,“IP地址”填入要被管理的服务器IP,这里填入218.1.1.1,“端口号”填入被管理服务器的端口,这里填21。“FTP服务器名称”可以随意,这里输入“远程管理MyFtp”,“用户名称”和“密码”中输入被管理服务器上已经设置好的具有远程管理权限的账户名和密码。
3)与远程FTP服务器建立连接并进行管理
双击“远程管理MyFtp”与家中的服务器建立连接。连接上后,此时你就可以像在家里一样对服务器进行各种设置和管理了,是不是很方便。
篇3:架设FTP服务器的两种方法
架设一台FTP服务器其实很简单,首先,要保证你的机器能上网,而且有不低于ADSL 512Kbps的网络速度。 其次,硬件性能要能满足你的需要。最后,需要安装FTP服务器端的软件,这类软件很多,可以使用微软的 IIS(Internet Information Server 因特网信息服务系统),也可以使用专业软件。不同的软件提供的功能 不同,适应的需求和操作系统也不同。一般来说,系统最低要求如下:
CPU:PⅢ 450MHz以上
内存:256MB SDRAM以上
带宽:ADSL 512Kbps以上
至于操作系统,Windows 98/Me/NT//XP均可,如果对服务器的性能和安全性要求很低,可以采用 Windows 98和Windows Me。本文中,如无特殊说明,均以Windows XP专业版为操作系统,其余操作系统下 FTP服务器的架设及设置均大同小异。
一、用IIS架设
如果只是想建个小型的同时在线用户数不超过10个的FTP服务器,且不会同时进行大流量的数据传输,可以 用IIS 5.0作为服务器软件来架设(IIS只适用于Windows NT/2000/XP操作系统)。
1.安装
Windows XP默认安装时不安装IIS组件,需要手工添加安装。进入控制面板,找到“添加/删除程序”,打 开后选择“添加/删除Windows组件”,在弹出的 “Windows组件向导”窗口中,将“Internet信息服务 (IIS)”项选中。在该选项前的“√”背景色是灰色的,这是因为Windows XP默认并不安装FTP服务组件。 再点击右下角的“详细信息”,在弹出的“Internet信息服务(IIS)”窗口中,找到“文件传输协议 (FTP)服务”,选中后确定即可。
安装完后需要重启。Windows NT/2000和Windows XP的安装方法相同。
2.设置
电脑重启后,FTP服务器就开始运行了,但还要进行一些设置。点击“开始→所有程序→管理工具→ internet信息服务”,进入 “internet信息服务”窗口后,找到“默认FTP站点”,右击鼠标,在弹出的 右键菜单中选择“属性”,
在“属性”中,我们可以设置FTP服务器的名称、IP、端口、访问账户、FTP目 录位置、用户进入FTP时接收到的消息等。
1)FTP站点基本信息
进入“FTP站点”选项卡,其中的“描述”选项为该FTP站点的名称,用来称呼你的服务器,可以随意填, 比如“我的小站”;“IP地址”为服务器的IP,系统默认为“ 全部未分配 ”,一般不须改动,但如果在 下拉列表框中有两个或两个以上的IP地址时,最好指定为公网IP;“tCp端口”一般仍设为默认的21端口; “连接”选项用来设置允许同时连接服务器的用户最大连接数;“连接超时”用来设置一个等待时间,如 果连接到服务器的用户在线的时间超过等待时间而没有任何操作,服务器就会自动断开与该用户的连接。
2)设置账户及其权限
很多FTP站点都要求用户输入用户名和密码才能登录,这个用户名和密码就叫账户。不同用户可使用相同的 账户访问站点,同一个站点可设置多个账户,每个账户可拥有不同的权限,如有的可以上传和下载,而有 的则只允许下载。
3)安全设定
进入“安全账户”选项卡,有“允许匿名连接”和“仅允许匿名连接”两项,默认为“允许匿名连接”, 此时FTP服务器提供匿名登录。“仅允许匿名连接”是用来防止用户使用有管理权限的账户进行访问,选中 后,即使是adMinistrator(管理员)账号也不能登录,FTP只能通过服务器进行“本地访问”来管理。至于 “FTP站点操作员”选项,是用来添加或删除本FTP服务器具有一定权限的账户。iis与其他专业的FTP服务 器软件不同,它基于 WindoWs用户账号进行账户管理,本身并不能随意设定FTP服务器允许访问的账户,要 添加或删除允许访问的账户,必须先在操作系统自带的“管理工具” 中的“计算机管理”中去设置 WindoWs用户账号,然后再通过“安全账户”选项卡中的“FTP站点操作员”选项添加或删除。但对于 WindoWs 2000和WindoWs Xp专业版,系统并不提供“FTP站点操作员”账户添加与删除功能,只提供 adMinistrator一个管理账号。
提示:匿名登录一般不要求用户输入用户名和密码即可登录成功,若需要,可用“anonyMous”作为用户名 ,以任意电子邮件地址为密码来登录。
篇4:Linux架设FTP服务器之三Windows系统
2./etc/ftpusers和/etc/ftphosts的设置 /etc/ftpusers是用来设定系统上的某些用户不允许使用FTP传送文件,/etc/ftphosts是用来设定某些主机不允许连接本FTP 服务器 的,这样做的目的都是为了 安全 考虑。 /etc/ftpusers使用的范例如下: root bin daemon adm
2./etc/ftpusers和/etc/ftphosts的设置
/etc/ftpusers是用来设定系统上的某些用户不允许使用FTP传送文件,/etc/ftphosts是用来设定某些主机不允许连接本FTP服务器的。这样做的目的都是为了安全考虑。
/etc/ftpusers使用的范例如下:
root
bin
daemon
adm
lp
sync
shutdown
halt
news
uucp
operator
games
nobody
限制某些用户登入FTP服务器是出于系统安全的原因,例如要避免超级用户登入系统。并且禁止某些和一些命令名相同的用户进入FTP服务器。
/etc/ftphosts的示例如下:
# Example host aclearcase/“ target=”_blank“ >ccess file
#
# Everything after a '#' is treated as comment,
# empty lines are ignored
#allow
# Only allow host(s) matching to log in as
#deny
# Always deny host(s) matching to log in as
allow ideal *.linuxaid.com.cn 10.0.0.0/8
deny fred *.hacker.com 131.211.32.0/24
这里只允许ideal从域名以linuxaid.com.cn为后缀的主机及10.0.0.0/255.0.0.0的主机登录进入FTP服务器;禁止fred从*.hacker.com和131.211.32.0/24登录进入FTP服务器。这里的username若为anonymous或ftp都指匿名用户。
3./etc/ftpconversions设置
该文件用来设定当用户下载文件时应该做那些操作,例如压缩、解压缩等。文件内容如下所示:
:.Z: : :/bin/compress -d -c %s:T_REG|T_ASCII:O_UNCOMPRESS:UNCOMPRESS
: : :.Z:/bin/compress -c %s:T_REG:O_COMPRESS:COMPRESS
:.gz: : :/bin/gzip -cd %s:T_REG|T_ASCII:O_UNCOMPRESS:GUNZIP
: : :.gz:/bin/gzip -9 -c %s:T_REG:O_COMPRESS:GZIP
: : :.tar:/bin/tar -c -f - %s:T_REG|T_DIR:O_TAR:TAR
: : :.tar.Z:/bin/tar -c -Z -f - %s:T_REG|T_DIR:O_COMPRESS|O_TAR:TAR+COMPRESS
: : :.tar.gz:/bin/tar -c -z -f - %s:T_REG|T_DIR:O_COMPRESS|O_TAR:TAR+GZIP
: : :.crc:/bin/cksum %s:T_REG::CKSUM
: : :.md5:/bin/md5sum %s:T_REG::MD5SUM
文件设置说明:
:.Z: : :/bin/compress -d -c %s:T_REG|T_ASCII:O_UNCOMPRESS:UNCOMPRESS
表示对所有以”.Z“结尾的文件使用/bin/compress -d -c”的方式解压缩。
: : :.Z:/bin/compress -c %s:T_REG:O_COMPRESS:COMPRESS
表示将传送的文件压缩为“.Z”格式。
:.gz: : :/bin/gzip -cd %s:T_REG|T_ASCII:O_UNCOMPRESS:GUNZIP
表示将所有以“.gz”的文件用“/bin/gzip -cd”解压缩。
: : :.gz:/bin/gzip -9 -c %s:T_REG:O_COMPRESS:GZIP
表示将传送的文件压缩为“.gz”格式。
: : :.tar:/bin/tar -c -f - %s:T_REG|T_DIR:O_TAR:TAR
表示将要传送的文件用“tar”打包。
: : :.tar.Z:/bin/tar -c -Z -f - %s:T_REG|T_DIR:O_COMPRESS|O_TAR:TAR+COMPRESS
表示将要传送的文件压缩成“tar.Z”的格式
: : :.tar.gz:/bin/tar -c -z -f - %s:T_REG|T_DIR:O_COMPRESS|O_TAR:TAR+GZIP
表示将要传送的文件压缩成“tar.gz”的格式
: : :.crc:/bin/cksum %s:T_REG::CKSUM
表示将要传送的文件进行CRC校验处理。
: : :.md5:/bin/md5sum %s:T_REG::MD5SUM
表示将要传送的文件进行md5校验。
其实安装FTP以后缺省的配置文件已经将常用的压缩也解压缩的程序定义进去了,所以一般不需要修改这个文件的内容,但可以根据实际需要修改内容的顺序。例如,用户要下载一个“file.tar.gz”的文件,但此FTP上没有这个文件,但是有文件file,那么FTP服务器会将file打包压缩为file.tar.gz在传递给用户。若服务器上没有file这个文件,服务器会按照/etc/ftpconversions文件中指定的顺序去搜索,,以这个例子而言,会依次搜索file.Z、file.gz、file.tar、file.tar.Z、file.tar.gz、file.crc、file.md5文件,将先找到的传送给用户。所以文件/etc/ftpconversions的内容可以按照需要而改变顺序,
到现在为止,已经安装配置成功了一个提供匿名访问的FTP服务器,可以连接上去测试功能是否符合需要。
4.wu-ftp的相关程序
ftpcount这个程序可以统计当前连接的用户数目,并给出上限,如:
[root@linux doc]# ftpcount
Service class friend - 0 users (no maximum)
Service class local - 0 users (no maximum)
Service class outworld - 0 users (no maximum)
这里正在连接的属于local的有0个人,没有上限。其他几个类别含义一样。
[root@linux doc]# ftpwho
Service class friend:
- 0 users (no maximum)
Service class local:
- 0 users (no maximum)
Service class local:
- 0 users (no maximum)
当前三个类别都没有用户连接。
ftpshut
该程序主要用来生成/etc/shutmsg,也就是前面/etc/ftpaccess中设定的shutdown命令,ftpshut的使用格式如下:
ftpshut [ -V ] [ -l min] [ -d min] time [ warning-message ... ]
-l 该选项设置在关闭FTP服务器以前多少分钟停止用户的连接请求
-d 该选项设置在关闭FTP服务器以前多少分钟将已经连接的用户断线
time 设置关闭FTP服务器的时间,例如希望在晚上10点关闭FTP服务器,则为2200
warning-message 断线以前显示给用户的告警信息
例如:
[root@linux /etc]# ftpshut -l15 -d5 1800 “ftp server will shutdown”
[root@lix /etc]# less shutmsg
2000 04 07 18 00 0015 0005
ftp server will shutdown
五、开设只能FTP的帐户
很多时候需要开设一些只允许ftp到服务器的用户,实现方法如下:
1、按照通常的方式为这些用户在系统上开设帐户。
[root@ns /etc]#useradd ftp_user1
[root@ns /etc]#chmod 700 /etc/shadows
[root@ns /etc]#vi /etc/shadows
删除项:
ftp_user1:!!:11113:0:99999:7:-1:-1:134537372
中第二个字段的“!!”,然后再以ftp_usre1用户登录,就不会询问口令,然后使用passwd为该用户设定口令
2、使用vi修改/etc/shells文件,添加/dev/null项或/bin/passwd,如下所示:
[root@ns /etc]# cat shells
/bin/bash
/bin/sh
/bin/ash
/bin/bsh
/bin/tcsh
/bin/csh
修改为:
[root@ns /etc]# cat shells
/bin/bash
/bin/sh
/bin/ash
/bin/bsh
/bin/tcsh
/bin/csh
/dev/null
/bin/passwd
2、使用vi打开文件/etc/passwd
3、将那些只允许FTP的系统的用户的登录shell改为/dev/null(若不允许用户修改其口令)或/bin/passwd(若允许用户修改其口令字),如下所示:
ftp_user1:x:503:504::/home/ftp_user1:/bin/bash
改为:
ftp_user1:x:503:504::/home/ftp_user1:/dev/null
或
ftp_user1:x:503:504::/home/ftp_user1:/bin/passwd
这样,则该用户只能使用如pop3、FTP等服务,而不能通过te.net登录到系统中。
六、设置虚拟FTP主机
所谓虚拟匿名主机,指一台机器上有多个IP地址,并且可以向外提供过个匿名的FTP服务器,这些服务器在逻辑上是独立的,有不同的访问控制表,不同的下载内容。下面是设置一台虚拟FTP服务器的步骤:
1. 首先对本地某个网卡设置别名IP地址,即在一块网卡上绑定多个IP地址:如你的内部FTP主机为192.168.0.4
你可再绑定一个IP地址如下:
/sbin/ifconfig eth0:0 192.168.0.5 up //向接口添加一个新的IP
/sbin/route add -host 192.168.11.7 eth0:0 //增添路由信息
2. 先创建目录/home/virtualftp和/var/log/virtualftp。生成banner文件/home/virtualftp/banner_message修改FTP服务器的主配置文件/etc/ftpaccess,增加对虚拟FTP的支持信息,加下面的行到该文件中:
virtual 192.168.0.5 root /home/virtualftp
virtual 192.168.0.5 banner /home/virtualftp/banner_message
virtual 192.168.0.5 logfile /var/log/virtualftp/xferlog
上面三条指示分别设置虚拟主机的根目录,虚拟主机的记录文件,虚拟主机的登录显示信息。上面路径和文件名可随便定义。
3. 拷贝所需要的匿名FTP文件,主要是/lib,/etc,/bin目录
# cp /home/ftp/* /home/virtualftp -a
4.在DNS中定义192.168.0.5,设置成虚拟FTP的域名映射。
原文转自:www.ltesting.net
篇5:Linux架设FTP服务器之二Windows系统
二、wu-Ftpd的安装 当前,Linux环境下有许多ftp 服务器 软件可供选择,但是目前最常见的仍然是wu-Ftpd服务器,这里主要讨论该软件的安装和配置。 一般来说,在安装了linux时,缺省都会自动安装wu-ftpd服务器,但是有时候为了某种需要也需要自己亲自重新安装
二、wu-Ftpd的安装
当前,Linux环境下有许多ftp服务器软件可供选择,但是目前最常见的仍然是wu-Ftpd服务器。这里主要讨论该软件的安装和配置。
一般来说,在安装了linux时,缺省都会自动安装wu-ftpd服务器,但是有时候为了某种需要也需要自己亲自重新安装该服务器软件。安装wu-Ftpd有两方式,一种是安装rpm形式的发布包;一种是自己动手去编译生成Ftp服务器。
rpm包可以在rpmfind.net/linux/RPM/WByName.html处下载得到,以rpm包方式安装非常简单,只需要在按下面的简单的几个步骤就可以完成,假设下载得到的rpm包存放在/tmp目录下:
#cd /tmp
#rpm -ivh wu-ftpd-2.6.0-9.i386.rpm
压缩的源代码可以在ftp://ftp.wu-ftpd.org/pub/wu-ftpd/出得到。这里我们以最新的2.6.0为例说明如何编译安装wu-ftpd。
1、解开源代码
1) 将压缩的源代码拷贝到/usr/src下
#cp wu-ftpd.2.6.0.tar.gz /usr/src
2) 对压缩文档进行解压缩:
#tar xvfz wu-ftpd.2.6.0.tar.gz
#cd wu-ftpd-2.6.0
2、敲入命令 “./build xxx” ,可以在这里指定一个C语言编译器:“./buildCC=yyy xxx” yyy 指用来替代 “cc” 的其他的编译器。对于linux环境下的gcc编译器,命令应该为:“./build CC=gcc xxx”
#build CC=gcc lnx
xxx可以取下面的值:
gen : 通用make(当移植到心得系统时需要拷贝它)
aix : IBM AIX
aux : AU/X
bdi : BSD/OS
bsd : BSD
dec : DEC Unix 3.X
du4 : DEC Unix 4.X or later
dyn : Dynix
fbs : FreeBSD 2.0 or later
hiu : Hitachi Unix
hpx : HP-UX
lnx : Linux (tested on 2.0.30)
nbs : NetBSD 1.X
nx2 : NeXTstep 2.x
nx3 : NeXTstep 3.x
osf : OSF/1
osx : Mac OS X
ptx : ???
sco : SCO Unix 3.2v4.2/SCO OpenServer 5
sgi : SGI Irix 4.0.5a
sny : Sony NewsOS
sol : SunOS 5.x / Solaris 2.x
s41 : SunOS 4.1.x
ult : Ultrix 4.x
uxw : UnixWare 1.1 or later
clean : Clean up object files and such to reduce disk space after building.
install: Install ftpd
Copying Makefiles.
Linking src/config.h
Making support library.
gcc -O3 -fomit-frame-pointer -fno-strength-reduce -pipe -c strcasestr.c
gcc -O3 -fomit-frame-pointer -fno-strength-reduce -pipe -c authuser.c
gcc -O3 -fomit-frame-pointer -fno-strength-reduce -pipe -c snprintf.c
rm -f libsupport.a
ar cq libsupport.a strcasestr.o authuser.o snprintf.o
ranlib libsupport.a
: : :
: : :
: : :
编译成功以后将生成如下几个可执行文件:
ftpd FTP服务器程序
ftpshut 用于关闭FTP守护进程的程序
ftpcount 记数程序,显示目前ftp登录的人数
ftpwho 查看当前FTP服务器的连线情况,类似与系统的who命令,只不过是查看ftp登录的用户
ckconfig 检查FTP的设置是否正确
ftprestart 重新启动ftp服务器
privatepw 改变wu_ftpd组访问文件信息
3、若只是升级到一个新的版本,应该首先备份系统所有的旧的配置文件。否则这些配置文件将被覆盖。为了适应自己的需求,应当编辑样本配置文件来满足自己的要求,具体配置文件的需求参见后面的内容。
4、以超级用户身份敲入命令“./build install”
#build install
installing binaries.
install -c -o bin -g bin -m 110 bin/ftpd /usr/sbin/in.ftpd
install -c -o bin -g bin -m 111 bin/ftpshut /usr/bin/ftpshut
install -c -o bin -g bin -m 111 bin/ftprestart /usr/bin/ftprestart
install -c -o bin -g bin -m 111 bin/ftpcount /usr/bin/ftpcount
install -c -o bin -g bin -m 111 bin/ftpwho /usr/bin/ftpwho
install -c -o bin -g bin -m 111 bin/privatepw /usr/bin/privatepw
installing manpages.
install -c -o bin -g bin -m 444 doc/ftpcount.1 /usr/man/man1/ftpcount.1
install -c -o bin -g bin -m 444 doc/ftpwho.1 /usr/man/man1/ftpwho.1
install -c -o bin -g bin -m 444 doc/ftpaccess.5 /usr/man/man5/ftpaccess.5
install -c -o bin -g bin -m 444 doc/ftpconversions.5 /usr/man/man5/ftpconversio5
install -c -o bin -g bin -m 444 doc/ftphosts.5 /usr/man/man5/ftphosts.5
install -c -o bin -g bin -m 444 doc/xferlog.5 /usr/man/man5/xferlog.5
install -c -o bin -g bin -m 444 doc/ftpd.8 /usr/man/man8/ftpd.8
5、编辑 “/etc/inetd.conf” 文件,指向新的ftpd守护进程,大多数情况下,这一步是不必的,因为在build install时,会将新的守护进程拷贝覆盖老的守护进程。若希望使用ftpd的增强的扩展功能,应该在这行最后加上“-a”选项。
ftpd守护进程一般可以携带如下参数,也可以不带任何参数:
-d debug参数,当ftpd守护进程出现错误时,会将错误信息写入到系统记录文件/usr/adm/syslog中
-l 记录每次ftp会话信息到/usr/adm/messages中
-t 设置当FTP客户端多久无操作就自动断线,这个参数后面指定等待的时间,如 -t 600 表示若客户
端若连续10分钟没有动作就自动断线,缺省值是15分钟
-a 使用ftpaccess配置文件内容对ftpd进行更详细复杂的设置
-A 不使用ftpaccess配置文件的设置,缺省值是-A
-i 当客户端有上载文件的动作时,就记录在文件xferlog中
-L 使用户连接ftp服务器期间使用的所有命令都被记录到/usr/adm/messages中
6、拷贝tar、gzip、gunzip、compress、uncompress等文件到 “~ftp/bin”中,拷贝“ls”为“~ftp/bin/ls”。
7、若是第一次安装,使用“ckconfig”程序查找ftpd的各种配置文件存放目录:ftpconversions、ftpusers、 和ftpgroups。在“doc/examples”目录下有样本文件。“ckconfig”是一个可执行程序,确保修复该程序检测到的任何问题。
三、让FTP服务器运转起来
一般来说,只要正确地编译安装了wu-ftpd,该服务器就可以正常运行。用户可以通过FTP命令从各种系统上连接该服务器。
四、配置文件的设置
1./etc/ftpaccess的设置
这个配置文件是FTP服务器最重要的配置文件,这个文件的设置决定了FTP是否可以正常工作及许多访问权限的设置。如下面的例子所示:
class all real,guest,anonymous *
limit all 10 Any /etc/msgs/msg.dead
readme README* login
readme README* cwd=*
message /welcome.msg login
message .message cwd=*
compress yes all
tar yes all
log commands real
log transfers anonymous,real inbound,outbound
shutdown /etc/shutmsg
email user@hostname
下面是设置文件各个指示(directive)的详细说明:
指示: loginfails n
密码输入n次就自动断开连接
指示:autogroup 组名 类别 [<类别> ...]类别>
若一个匿名用户属于任何一个参数类别的类,则FTP服务器将实施setegid()调用使其属于这个组名定义的组,这样做是为了实现某些特定类别的匿名用户可以访问一些只允许本组及拥有者可以访问的文件。组名必须是/etc/group内定义的有效组。
指示: class 类名 类别(real、guest、anonumous) IP地址
这个指示是设定FTP服务器用户的类别。
FTP服务器的用户可以分为以下三种类别:
real 在该FTP服务器上拥有合法帐户的用户;
guest 另外定义某些特定组的用户;
anonymous 匿名用户;
举例说明:
class outworld real,guest,anonymous *
定义一个名为outworld的类,该类包含三种类型的用户:real,guest,anonymous。该类在后面的指示中使用。其中“*”是类定义中的IP地址部分,表示网络上的所用主机。也就是说明允许任何主机连接FTP服务器。若希望对访问FTP的主机进行一定的权限设置,可以这样做:
class friend real,guest,anonymous *.linuxaid.com.cn 202.102.13.*
指定义一个friend类,该类从*.linuxaid.com.cn 及202.102.13.*访问FTP服务器时有特定的权限设定。
指示: limit 类别 人数 时间 文件名
该指示设定在某个类在某个时间内允许连接FTP服务器的人数的限制,并指定当连接人数超过限制,后面的用户连接时显示给用户的消息信息。
举例说明:
limit local 20 Any /tmp/message/msg.toomany
上面的例子限定local这个类中的拥护同一时间只能有20人同时上网连接这台FTP服务器,若超过20人则显示/tmp/message/msg.toomany的文件的内容
limit outworld 100 MoTu|Any 2200-0800 /tmp/message/msg.limit
这个例子限制outworld这个类的用户只能在周一周二或每天的晚上10点到第二天早上的8点之间访问该FTP服务器,而且同时连线的人数不可以超过100人,若超过100人,则显示/tmp/message/msg.limit的文件的内容
/tmp/message/msg.limit的内容为:
对不起!本服务器只允许匿名用户在周一周二全天及其他每天晚上10点到第二天早上的8点之间访问,当前时间为%T;而且只允许同时有%M个匿名用户访问,当前有%N个用户在访问该服务器。请在合适的时间访问本FTP服务器,谢谢!
这里的%M是一个变量,代表同时允许连接的人数的上限,FTP服务器可以用前面设置的值自动替代该变量,其他允许的变量包括:
%T 本地当前时间;
%F CWD所在分区剩余空间,以KB为单位。但该变量不是所有系统都支持。
%C 当前工作目录;
%E 定义在/etc/ftpaccess文件中的系统管理员的E-mail地址;
%R 远端主机名;
%L 本地主机名;
%U 登录时所给的用户名;
%N 这个类别当前连接的用户数目;
利用这些参数,可以编辑一个详细的说明文件,这样可以让用户清楚当前服务器资源使用情况。
指示: readme 说明文件 指令
当用户执行指定的“指令”时,系统就会自动显示所设置的说明文件;
举例说明:
readme README* login
当用户执行登录动作时,只要以README开头的文件内容就会显示给用户。
readme README* cwd=*
表示用户切换目录时(cwd),只要以README开头的文件内容就会显示给用户。
通常README*应该是该目录下文件的说明,让登录的用户可以清楚地知道目录中存放了那些文件;
指示: message 文件名 指令
使当用户执行特定的“指令”时,系统就将指定的文件内容显示给用户;
举例说明:
message /msg.welcome login
指定当用户登录时,将自动显示/tmp/message/msg.welcome的内容给用户,注意这里的/msg.welcome指ftp根目录下的msg.welcome文件,即/home/ftp/msg.welcome,
message /welcome cwd=*
指定当用户切换另一个目录时,只要目录中有msg.welcome文件,就显示给用户
指示: compress (yes/no) 类别
设置哪个类别的用户可以使用压缩功能;
举例: compress yes local outworld
允许local 和outworld两个类别的 用户使用压缩功能
指示: tar (yes/no) 类别
指定哪个类别的用户可以使用tar功能;
指示: passwd-check (none/trivial/rfc822) (enforce/warn)
设定当用户以匿名方式登录服务器时密码的方式:
none 表示不对密码进行验证,任何密码都可以登录;
trival 表示只要密码中包含@就可以登录;
rfc822 表示密码一定要符合rfc822中规定的E-mail格式才能登录。如:webmaster@linuxaid.com.cn
enforce 表示输入的密码不符合指定格式就不允许登录;
warn 表示输入的密码不符合指定格式显示警告信息,但仍然允许登录;
指示: log commands 类别(read/guest/anonumous)
设定那些用户登录时,所使用的操作会被记录在文件/usr/adm/xferlog中。
指示: log transfer 类别(read/guest/anonumous) (inbound/outbound)
设定指定的用户类别在上载还是下载时的相关信息被记录到/usr/adm/xferlog中。
举例说明:
log transfer anonymous,real inbound,outbound
当anonymous或real用户登录后,上载和下载的操作会被记录在文件/usr/adm/xferlog中。
指示: shutdown 文件名
FTP服务器关闭的时间可以后面的文件名中指定的文件中指定,设定的时间一到,便无法登录FTP服务器了,只有将这个文件删除才能恢复FTP服务器。文件的格式可以由命令ftpshut来建立。
指示: delete (yes/no) 类别(real/anonymous/guest)
设定是否允许指定用户使用delete命令。
举例说明:
delete no guest,anonymous
设定大概内登录的用户为guest或anonymous上不允许执行delete命令。
指示: overwrite (yes/no) 类别(real/anonymous/guest)
设定是否允许指定用户使用overwrite指令。
指示: reame (yes/no) 类别(real/anonymous/guest)
设定是否允许指定用户使用readme指令。
指示: chmod (yes/no) 类别(real/anonymous/guest)
设定是否允许指定用户使用chmod指令。
指示: umask (yes/no) 类别(real/anonymous/guest)
设定是否允许指定用户使用umask指令。
指示: upload [absolute|relative] [class=
定义允许用来上载的目录。若允许上载,所有新上载的文件的所有者及组由
upload /var/ftp * no
upload /var/ftp /incoming yes ftp daemon 0666
upload /var/ftp /incoming/gifs yes jlc guest 0600 nodirs
would only allow uploads into /incoming and /incom-
:
将只允许/incoming和/incom-ing/gifs目录上载。上载到/incoming目录下的文件将属于ftp/daemon,访问权限为0666;而上载到/incoming/gifs下的文件将属于jlc/guest,访问权限为0600。应该注意的是
“dirs”和“nodirs”选项用来设定是否允许在该目录下创建新的子目录。但是缺省是允许创建子目录的。
上载指示只能施用于用户主目录(chroot()的参数)等同于
选项[absolute|relative]指定是
指示: alias 目录别名 目录路径
给指定目录设置一个别名,当切换目录时可以使用别名。
举例说明:
alias xwin /pub/linux/xwindows
为/pub/linux/xwindows设置别名xwin,登录以后只要输入命令cd xwin就可以进入该目录。
指示: cdpath 目录
该功能和系统的PATH环境变量设置类似,当cd /etc时,FTP首先查看当前目录下是否有etc子目录,无则看是否有别名,若没有则根据该指示设定的路径查询。
举例说明:
cdpath /pub/linux
cdpath /pub
cdpath /
搜索顺序为:/pub/linux /pub /
指示: path-filter 类别(real/anonymous/guest) 目录
设定上载文件名限制。
举例说明:
path-filter anonymous /etc/pathmsg^[-A-Za-z0-9_.]*$^.^-
path-filter guest /etc/pathmsg^[-A-Za-z0-9_.]*$^.^-
设置限制anonymous和guest用户上载的文件名只能包含A-Z、a-z、0-9和._-,名字以“.”和“-”开头的文件不能上载到服务器上。
指示: guestgroup
guestuser
realgroup
realuser
对于guestgroup指示,若一个真实(real)用户属于任何一个
这里用户的home目录必须被争取的设置,要确实和匿名用户一致,/etc/passwd中的相关项的home目录被分割为两个部分,第一部分是chroot()调用的根目录参数,第二个是用户相对于根目录的主目录,两部分之间以“/./分隔”,如:
guest1:
:100:92:Guest Account:/ftp/./incoming:/etc/ftponly
当guest1成功登录进入,FTP服务器将调用chroot(“/ftp”)然后调用chdir(“/incoming”)。则guest1就如同匿名用户一样只能访问/ftp下面的容(对于guest1来说,它就是“/”)。
guestuser和guestgroup指示类似,只不过是限定一个单一用户罢了。
realuser和realgroup有同样的语法,但是和guestuser及guestgroup起相反的作用,其是允许某个组的用户或某个用户以真实身份访问FTP服务器。如:
guestuser *
realgroup admin
指定所有的非匿名用户登录进入服务器以后,都被做为匿名用户处理,但是admin组的用户是例外,登录以后以真实身份存在。
指示: guestgroup 功能
设定guest组的功能。
举例说明:
guestgroup ftponly
指示: nice
设定FTP服务器守护进程的调度优先级。
指示: defumask
若远程用户属于class,则守护进程创建的文件的umask为umask。若没有指定class则将umask作为缺省的umask.
指示: tcpwindow
设置数据连接的TCP窗口大小,若不明白含义,一般不要去设置它。
指示:keepalive
设置TCP socket的SO_KEEPALIVE参数选项。
指示:timeout accept
timeout connect
timeout data
timeout idle
timeout maxidle
timeout RFC931
设置各种超时时钟,这些参数必须在对TCP协议非常熟悉的情况下才应该去设定,一般不要改动这些值,具体含义参见man ftpaccess。
指示: file-limit [
限制某个组的任何一个用户允许上载的文件的数量,若没有指定class,则该限制施用于所有没有限定的组。raw指示这个限制包括所有的传输,而不仅仅是数据文件。
指示:byte-limit [
限制某个类的任何一个用户允许传输的数据总量。
指示: limit-time {*|anonymous|guest}
限定一个对话允许的持续时间,缺省无限制。真实用户没有该限制。
指示:guestserver [
控制哪个站点允许进行匿名连接,若没有指定hostname,则拒绝所有匿名连接。
指示: noretrieve [absolute|relative] [class=
设定拒绝那些类访问哪些特定文件。例如:
noretrieve /etc/passwd core
指定任何访问者都不可以访问文件/etc目录下的passwd文件和所有的名为“core”的文件。
指示:allow-retrieve [absolute|relative] [class=
允许访问这些文件。
指示:private
当一个用户登录进入,,指示SITE GROUP和 and SITE GPASS用来指定一个增强的访问组和相应的密码。若输入的组名和密码有效的话,该用户将变为该组的成员,具有该组的访问权限。
指示:greeting full|brief|terse
greeting text
允许控制在远程用户登陆进来以后,给用户多少greet信息及信息内容。
指示:banner
和message类似,不过banner消息是在用户输入用户名和密码以前显示给用户的。
指示: hostname
定义FTP服务器缺省的主机名。
指示: email
定义FTP维护者的emai地址。
指示: log security (anonymous|guest|real)
使记录违背安全规则如:(noretrieve, .notar, ...)的命令。
指示:log syslog
log syslog+xferlog
重定向记录消息到系统记录文件syslog,缺省只记录到xferlog。
指示:daemonaddress
若该值没有被设置,则服务器则监听所有的接入请求,否则,服务器只接受来自定义的连接请求。这个设置一般不要设置,设置以后会阻止使用虚拟主机或其他一些以后扩展的功能。
指示: virtual
打开虚拟FTP服务器的支持。是虚拟服务器的IP地址。第二个参数指定如root目录,bannner文件,log文件等的路径。
指示:virtual
设置在greeting消息中显示的主机名字或电子邮件。
指示:virtual allow
virtual deny
一般真实和guest用户不允许登陆进入虚拟主机,该两个指示用来重新对允许和拒绝访问的虚拟主机的用户进行细化定义。
指示:virtual private
通常,拒绝匿名用户登陆进入虚拟主机。
指示: defaultserver deny
defaultserver allow
对允许访问缺省(非虚拟)FTP服务器的用户进行定义。
指示:defaultserver private
拒绝匿名用户访问缺省FTP服务器。
指示: deny ip地址/域名 说明文件
设定限制哪个IP地址或域名的用户不允许登录到服务器。
举例说明:
deny 202.102.15* *.hacker,com /tmp/message/deny.msg
限制IP地址为202.102.15*及域名为*.hacker,com的机器不允许登录服务器
原文转自:www.ltesting.net
★ php实习报告
★ ServU:快速构建功能强大FTP服务器(三)服务器教程
【Linux架设FTP服务器之一(精选5篇)】相关文章:
防火墙在网络安全中的重要功能和作用服务器教程2022-04-30
WIN技巧:内网用户建个人服务器很简单2022-09-27
防火墙在网络中的功能和作用防火墙技术2023-08-22
网络传输文件的方法2022-07-25
新手部署DNS服务器须知服务器教程2022-04-30
硬件工程师电子简历2023-05-26
光纤熔接协议书2023-08-29
应聘网络工程师自荐信2023-02-11
工作台建立的Maya教程2022-04-30
网络工程师个人求职简历2022-05-15