ioftpd中文版文档.docx
《ioftpd中文版文档.docx》由会员分享,可在线阅读,更多相关《ioftpd中文版文档.docx(44页珍藏版)》请在冰豆网上搜索。
![ioftpd中文版文档.docx](https://file1.bdocx.com/fileroot1/2023-1/8/b4876408-7999-40a2-abbb-3e7fe1ed719f/b4876408-7999-40a2-abbb-3e7fe1ed719f1.gif)
ioftpd中文版文档
索引
1.目录结构
2.安装指南
3.虚拟文件系统(VFS)
基本VFS设置
子目录加载
用于存档的Raid目录加载
不同用户和/或不同组的VFS文件
私有目录
符号链接
目录权限设置
4.设备
5.作为系统服务启动
ioFTPD的缺省端口
服务布置
Services详细设置
取消服务
自定义Devices和Services
通过HTTP和TELNET连接
6.site命令
Add/Delete/Rename/Kick
Users
Groups
IP
CHMOD/CHOWN/Stats及其他
Stats
SITECHANGE
SITECHATTR
SITECONFIG
7.标识和权限
8.SECTIONS
9.SCHEDULER
10.USERFILES和GROUPFILES
:
:
ioFTPD文档
:
:
index-1-2-3-4-5-6-7-8-9-10:
:
1.目录结构
ioFTPD主目录包括以下文件:
Changelog,TODO,README.1ST
更新记录文件包含了ioFTPD的最新更新内容,可使您及时了解软件的bug修正及新增特征等。
TODO文档列出了ioFTPD未来版本中要添加的内容。
README.1ST文件为一些必要的法律公告。
--------------------------------------------------------------------------------
ioFTPD下的目录包括:
/cache包括缓存文件,您不能改动此目录下的任何文件。
/etc目录内文件包括
UserIdTable-用户及其UID(用户ID)列表
GroupIdTable-组及其GID(组ID)列表
default.vfs和admin.vfs-VFS示例文件
ioftpd.env-定义环境变量
/groups组数据文件。
文件名即为GID(组ID)
/help帮助文件。
/libTCL库
/logs服务器运行记录文件如Error.log及Sysop.log等.
/scriptsioFTPD的第三方脚本。
/site您的site的缺省根目录。
/source可能对脚本编写有用的源代码。
/systemioFTPD.exe,ioFTPD.ini,tcl84.dll
/text用户登陆时显示的信息文件,以及运行命令时显示的状态信息等文件。
/users用户数据文件。
文件名为UID(用户ID)。
:
:
ioFTPD文档
:
:
index-1-2-3-4-5-6-7-8-9-10:
:
2.安装指南
此文档可让您在几分钟内最快速成功配置ioFTPD!
1.解压ioFTPD文件包。
2.编辑..\etc\default.vfs.注意根目录必须加载为:
";/";.
如:
:
"d:
\ftp"/<--用已有的空目录作根目录。
"e:
\mp3"/mp3<--在根目录加载为/mp3
注意组ioftpd(缺省用户ioFTPD所在的组)的虚拟目录文件缺省为admin.vfs。
要让ioftpd组使用default.vfs,可用命令:
sitechangeioftpdgroupvfsfile..\etc\default.vfs或将..\groups目录下0文件内的VFSFILE行删除即可。
3.打开..\system\ioFTPD.ini.
在ioFTPD.ini中,注释行用“#”,取消选项/设置用分号";"。
#Comment
;Disabled=True
3a.设置DEVICES。
.
在多数情况下可用缺省设置。
缺省device名为";Any";.
[Any]
Host=0.0.0.0<--未定义IP,则允许在任何IP上连接。
Ports=1024-2048<--数据传输端口。
Random=True<--使用随机端口。
3b.设置SERVICES(示例仅用于FTP_Service)
[FTP_Service]
Type=FTP
Device_Name=Any<--使用的Device。
缺省为";Any";
Port=9999<--连接端口
Description=MyFTPService
User_Limit=10<--最大连接用户数。
Allowed_Users=*
Messages=..\text\ftp
Require_Encrypted_Auth=!
*<--无用户使用加密请求。
Require_Encrypted_Data=!
*
;Certificate_Name=192.168.1.11<--SLL认证名(CN):
若不使用认证,请注释此行,否则你的ftpd不会运行!
Explicit_Encryption=True
Encryption_Protocol=SSL3
Min_Cipher_Strength=128
Max_Cipher_Strength=384
;Get_External_Ident=False<--True/False.保护支持
;Data_Devices=<--流量平衡设备
;Random_Devices=False<--True/False.Data_Devices使用随机次序。
需要更高级的devices及services,如NAT及流量平衡等设置样例文件,请参见ioFTPD-Advanced.ini。
4.用缺省的管理员(Master)帐号登陆,注意在ioFTPD下,用户名、密码、组名、标识名及其他名称均区分大小写!
用户名:
ioFTPD
密码:
ioFTPD
5.使用SITEPASSWD<新密码>更改缺省的ioFTPD密码。
6.打开并编辑..\etc\Hosts.Rules,使其可由外部IP连接。
在最新的未注册版本中,缺省规则为禁止(DENY).注释此缺省行,并去掉ALLOW行的注释。
若ioFTPD.exe正在运行,则需重启(修改Hosts.Rules需要完全重启)。
完成!
现在请阅读此文档其余部分,提高您的配置技巧。
问:
什么是Master帐号?
答:
Master权限帐号登陆后可做几乎任何事。
可浏览所有目录,传输任何文件,即使其被别的用户限制。
可以更改别的用户或组(但不能更改别的Master帐号)的设置。
Master的旗标是"M"。
其他FAQ,请见ioFTPD主页的知识基地.
-----------------------------------------------------------------------
提示#1:
好的脚本、sfv校验、sitebot、已知bug及其他ioFTPD信息,请查看论坛.
提示#2:
在登陆服务器时出现错误,请检查..\logs\Error.log文件。
提示#3:
要学会如何用site命令控制ioFTPD。
提示#4:
请阅读此文档的其他部分,更多了解ioFTPD。
-----------------------------------------------------------------------
:
:
ioFTPD文档
:
:
index-1-2-3-4-5-6-7-8-9-10:
:
3.虚拟文件系统(VFS)
VFS文件用来创建服务器的文件目录结构,用户登陆后即可见。
示例的VFS文件为default.vfs和admin.vfs,均位于..\etc目录下。
基本VFS设置
子目录加载
用于存档的Raid目录加载
不同用户和/或不同组的VFS文件
私有目录
符号链接
目录权限设置
--------------------------------------------------------------------------------
基本VFS设置
最快的VFS文件设置法是将一空目录设置为根目录,这样必须在你的VFS文件中将此目录加载为:
";/";如下:
"c:
\ioFTPD\site"/
在..\site目录下有些示例目录,你可以删除它们。
然后你可指定VFS根目录下要显示的目录。
如:
"c:
\ioFTPD\site"/
"d:
\games"/games
"e:
\mp3"/mp3
也支持驱动器盘符的直接加载,但不推荐此设置,因为不能隐藏象系统卷标信息之类的系统目录。
如:
"f:
\"/f-drive
"g:
\"/g-drive
要设置这些目录的权限(这样用户就可上传等),请用SITECHMOD.
这些是ioftpd新手需要了解的基本设置,高级VFS设置请参见下面内容……
--------------------------------------------------------------------------------
加载子目录
ioFTPD'sVFS十分灵活,你可指定某些目录作为子目录。
但要确保你的上级目录存在(此处为/mnt)。
如:
"c:
\ioFTPD\site"/
"c:
\ioFTPD\mnt"/mnt
"c:
\"/mnt/c-drive
"d:
\"/mnt/d-drive
"e:
\"/mnt/cdrom
--------------------------------------------------------------------------------
用于文件存储目的的Raid目录加载
可合并两个或更多目录内容,如下:
注意:
对于只读目的!
尽管可写,但上传的文件(在RaidedVFS目录下)会被存储在最后一个指定的设备下,此处为e:
\dir2。
如:
"d:
\目录1"/存档文件
"e:
\目录2"/存档文件
--------------------------------------------------------------------------------
不用用户和/或组的VFS文件
要为用户指定不同的VFS文件,仅需新建一VFS文件,并使用此命令来更改用户的VFS文件
sitechange<用户>vfsfile..\etc\custom.vfs
你也可改变某个组的VFS,该组下所有用户均自动使用此组VFS文件
如:
sitechange<组>groupvfsfile..\etc\group1.vfs
重要!
用户VFS文件会覆盖组VFS文件。
你已用一指定的组VFS文件更改了组内某用户的VFS文件,且你想让此用户使用此组VFS文件,可清除..\users目录下的用户user文件中的VFSFILE行,或者用命令更改此用户的VFS文件至此组VFS文件:
sitechangevfsfile..\etc\group1.vfs
记住若将用户的VFS文件改变为与组VFS文件的文件,且然后又将此组VFS文件改变为另一个文件,你需要再一次改变用户的VFS文件。
--------------------------------------------------------------------------------
私有目录
另一种不同目录的权限设置(包括不同的VFS)方法为私有路径。
私有路径对其他用户隐藏,即使这些目录也存在于他们的VFS中。
这样便很容易地设置VFS,而不必设置多重VFS文件(使某些用户使用某些目录)。
除了Master,其他用户无权进入私有目录。
私有目录不对Master隐藏。
SITE命令"sitechattr"用于设置私有目录,此命令也可将目录转换为符号链接。
用法:
sitechattr+h"<目录>""<权限列表>"
示例:
sitechattr+h"私有目录""-用户2-用户5=组11"
若目录名包含空格,或你指定多个用户和/或组权限时,则需要用引号(";";)引用。
旗标也可在权限列表中使用。
使用以下命令查看当前私有目录的权限:
sitechattr+h"目录"
联想到+h是指";hidden";,很容易便可记住+h是指私有目录,+l指目录链接。
--------------------------------------------------------------------------------
符号链接
符号链接是一个快捷目录,可指向你的虚拟文件系统中的任何指定位置。
使用SITE命令"sitechattr"将目录转换成符号链接。
用法:
sitechattr+l"<目录>"""
示例:
sitechattr+l"mp3-today""/mp3/0525"
使用以下命令查看当前路径的链接指向:
sitechattr+l"符号链接名"
符号链接也可设置为私有路径。
--------------------------------------------------------------------------------
目录权限的详细设置
如果你想禁止某些目录的上传,那么VFS的此部分设置是很有用的。
权限前缀";!
";表示禁止,如!
-user!
=group!
F。
也可指定多个用户和/或组,如!
-user1-user2=group1,此处仅user1被禁止。
以下是ioFTPD.ini里的缺省设置:
[VFS]
...
###
#目录权限的详细设置
#
#priviledge=
#
Upload=**
Resume=**
Download=**
MakeDir=**
RemoveDir=**
RemoveOwnDir=**
Rename=*1VM
RenameOwn=**
Overwrite=*VM
Delete=*1VM
DeleteOwn=**
NoStats=*!
*
虚拟路径用此格式:
/目录/*
-----------------------------------------------------------------------
规则为首个匹配即生效。
在虚拟目录和权限间,仅可使用空格,不要用tab键空格。
最后的"*"是必须的,表示允许其他所有人。
-----------------------------------------------------------------------
示例:
#所有GuestGroup组的用户不可创建目录
#也不可在mp3目录内上传文件,但其他用户被允许此二项。
#
MakeDir=/mp3/*!
=GuestGroup*
MakeDir=**
Upload=/mp3/*!
=GuestGroup*
Upload=**
ioFTPD4.9.0(包含RemoviOwnDir)后的版本有一个新功能"NoStats",NoStats取消指定用户和/或组的状态统计。
NoStats是路径相关的。
记住,在这些指定目录下,这些用户和/或组的活动不被计入统计。
总将NoStats=*!
*放在最底部,否则活动统计对其他用户也会失效。
可在此行上方加入你自己的NoStats行。
:
:
ioFTPD文档
:
:
index-1-2-3-4-5-6-7-8-9-10:
:
4.设备
在设备区,你将指定ioFTPD使用哪些IP和数据端口。
会在配置ioFTPD的services区时使用设备名(DeviceName).
配置相当简单:
[DeviceName]
Host=
Ports=
Random=
Bind=
#以下摘自示例ioFTPD.ini
[Any]
Host=0.0.0.0
Ports=1024-2048
Random=True
[Any]-->设备名(此处为Any)
Host-->外部主机,此地址会显示给用户。
Host=0.0.0.0使用sockets连接的那个IP,取决于你主机的IP及你的用户连接的IP。
表示允许在任何IP上连接,如127.0.0.1,你的内部LANIP如192.168.0.1及你的外部IP等。
Ports-->用于数据传输的端口,可包括逗号将端口范围列表分开。
如:
Ports=1024-2048,3355,5000-5999,25001-26000,31337
Random-->True/False.数据传输使用随机次序端口
Bind-->内部主机。
若指定,则连接绑定于此地址,而不是HOST。
若你在路由后方则使用BIND,BIND是你的内部IP。
#ioFTPD-Advanced.ini中使用绑定设置的例子
[Nat]
Host=212.146.42.251<--奜晹IP/楬桼婍IP
Ports=25001-26000
Random=True
Bind=192.168.1.10<--你运行ioFTD所用电脑的网络IP
:
:
ioFTPD文档
:
:
index-1-2-3-4-5-6-7-8-9-10:
:
5.服务
无论是否使用加密,在上限范围之内的用户可以同时通过你所指定的服务端口登录。
ioFTPD的默认端口
服务规划
详细服务
禁用服务
自定义设备及服务
通过HTTP及TELNET连接
--------------------------------------------------------------------------------
ioFTPD的默认端口
FTP9999
HTTP10000
TELNET10001
--------------------------------------------------------------------------------
服务框架
注意ioFTPD4.9.0版本的ioFTPD.ini文件中一些名称作了改变,例如Listen_Device->Device_Name、MaxUsers->User_Limit、Req_Encrypted_Auth->Require_Encrypted_Auth等等
[FTP_Service]
Type=FTP
Device_Name=Any
Port=9999
Description=MyFTPService
User_Limit=10
Allowed_Users=*
;Messages=..\text\ftp
###加密###
#
Require_Encrypted_Auth=!
*
Require_Encrypted_Data=!
*
Certificate_Name=192.168.1.11
Explicit_Encryption=True
Encryption_Protocol=SSL3
Min_Cipher_Strength=128
Max_Cipher_Strength=384
###IDNT命令处理###
#
;Get_External_Ident=False
###负载均衡###
#
;Data_Devices=
;Random_Devices=False
--------------------------------------------------------------------------------
服务细节
[FTP_Service]<--服务名称
Type=FTP<--键入FTP,HTTP或者TELNET
Device_Name=Any<--所使用设备名称
Port=9999<--连接端口!
Description=MyFTPService<--描述
User_Limit=10<--最大用户连接数
Allowed_Users=*<--拥有这些标记的用户有登录权限.*=所有人
;Messages=..\text\ftp<--使用其他信息替代默认信息?
Require_Encrypted_Auth=!
*<--强制这些用户使用安全登录.!
*表示无人
Require_Encrypted_Data=!
*<--强制安全数据传输。
Certificate_Name=192.168.1.11<--SSL证书名(CN).
Explicit_Encryption=True
Encryption_Protocol=SSL3<--TLS/SSL3/SSL2/SSL1/SSL
Min_Cipher_Strength=128<--128-bit
Max_Cipher_Strength=384<--384-bit
;Get_External_Ident=False<--True/False.IDN命令处理.保镖支持.(?
)
;Data_Devices=<--负载均衡设备
;Random_Devices