QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1893|回复: 3

-=glftpd setup guide=-

[复制链接]
发表于 2002-11-9 01:06:47 | 显示全部楼层 |阅读模式
一.写在前面

我都是ssh方式来进行设置的。这个和在本地设置没有什么区别,唯一的坏处就是没有xwindow,不过我已经习惯"暗黑"的世界了

二.安装首先你要建立一个目录,然后通过wget来获取安装文件, 然后在securecrt的窗口中输入
wget http://www.glftpd.com/files/glftpd-LNX_1.27.tgz  
(在securecrt中可以通过右键来获取快捷菜单中的copy和paste,对初学者很有用哦)ok搞定...然后
tar -zxvf glftpd-LNX_1.27.tgz 解压软件包(注意哦.可以输入gl然后用tab来补全文件名哦)进入glftpd-LNX_1.27目录.
[code:1]./installgl.sh[/code:1]
 
[code:1]Welcome to jehsom's glFtpD installer, version 1.14

Do you want to use tcpd? If you are not sure then you should
use it. If you decided to change this at a later time, please
search for tcpd in the glftpd.docs for the required changes.

Use tcpd? [Y]es [N]o: [/code:1]
 
软件询问要不要用tcpd  yes吧.万一要ban ip就可以靠它了.
[code:1]
 Do you want to run glftpd in a "Jailed" environment? In this
environment a private directory will be created and glftpd will
be installed inside. Regular shell users will not be able to get
inside this private directory. The glftpd.conf is also moved
inside for added security and a new group will be created so
you and other users you specify can access glftpd through the shell

Use a jailed environment? [Y]es [N]o: [/code:1]
 
软件询问要不要把glftpd放在一个封闭的环境中? yes

[code:1]
 Creating the jailed environment.

Please enter the private directory to install glftpd inside [/jail]:[/code:1]
 
 然后就是这个封闭环境的目录了.输入一个目录,这个随便吧.因为ftp的资料我是用一个单独的硬盘来存
放的.到时候mount的正确路径就可以了.我输入/gl
[code:1]
 Do you want to create a private group? If you say no then only root will
be able to access glftpd. Otherwise you can add other shell users to the
group so they can access glftpd from the shell.

Use a private group? [Y]es [No]:
What would you like your private group to be called? [glftpd]: 
Creating private group . . . Done.[/code:1]
 
软件询问要不要建立一个私有组...建一个吧. yse 默认得组名为glftpd,直接回车.

[code:1]
 Who should have access to glftpd? (separate with ,): [/code:1]
 
接着又问,谁在这个组中? 输入合适的用户名","为分割符.
[code:1]
 Please enter the directory inside /usr/gl_127/ to install glftpd to [/glftpd]:
 [/code:1]
 让你确认最终的程序安装目录.默认就可以了....回车(编译需要一点点时间.)
[code:1]
 Enter the port you would like glftpd to listen on [21]: [/code:1]
 让你确认端口,我是21终于结束了....
让我们看看在/etc/xinetd.d/glftpd文件中有什么
[code:1]
 service glftpd
{
disable = no
flags = REUSE NAMEINARGS
socket_type = stream
protocol = tcp
wait = no
user = root
server = /usr/sbin/tcpd
server_args = /gl/glftpd/bin/glftpd -l -i -o -r /gl/glftpd.conf -s/gl/glftpd/bin/glstrings.bin
}[/code:1]
 

看到了吗?配置文件是在/gl/glftpd.conf而不是在etc中.这个要注意.免得找不到配置文件了.


三.增加用户及glftpd的用户说明glftpd的用户用"-用户名"来表示,用户组用"=组名"来表示,还有一种就是用一个数字来表示,下面是英文原文
[code:1]
 SITEOP 1 User is siteop.GADMIN 2 User is Groupadmin of his/her first public group (doesn't work for private groups).
GLOCK 3 User cannot change group.
EXEMPT 4 Allows to log in when site is full. Also allows user to do "site idle 0", which is the same as having the idler flag. Also exempts the user from the sim_xfers limit in config file.
COLOR 5 Enable/Disable the use of color (toggle with "site color").
DELETED 6 User is deleted.
USEREDIT 7 "Co-Siteop"
ANON 8 User is anonymous (per-session like login).
*NOTE* The 1 flag is not GOD mode, you must have the correct flags for the actions you wish to perform.
*NOTE* If you have flag 1 then you DO NOT WANT flag 2[/code:1]
 
 数字1-8就是表示相应的用户了.英文不好所以没有翻译了...
glftpd的用户设置很有意思...用户除了用户名和密码以外还要对应ip地址和主机名.
现在用默认顶级用户glftpd来登陆.(密码同用户名)

[code:1]
 [root@l900 /]# ftp 127.0.0.1
Connected to 127.0.0.1 (127.0.0.1).
220 MY SITE NAME (glftpd 1.27_Linux) ready.
Name (127.0.0.1:root): glftpd
331 Password required for glftpd.
Password:
230- _____
230- ______________________________|__ |____ ________________________________
230- \ _ / _ / _ / | | _ / _ / _ /
230- \ \ / / / /____/. | | / / /____/. /_____/
230- \________/____/ /______ |___|____|___/ /______ |____|
230- .-=----------- /____/ ---- |____| --------- /____/ ---- |____| -------=-.
230- `-=-------------------------------------------------------------------=-'
230- `-----( Type 'site onel MESSAGE' to enter your message )-----'
230 User glftpd logged in.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>
[/code:1]
 
可以用site adduser 用户名 密码 主机名@地址
的格式来添加一个用户.一般来说我们不需要限制用户的主机名和ip地址所以一个添加用户的范例就是:
site adduser iamok komai *@*
[code:1]
 ftp> site adduser iamok komai *@*
200- User created, now adding IPs...
200- IP '*@*' successfully added to iamok.
200-
200 User (iamok) successfully added.
ftp>
[/code:1]
 

这里说明一下.glftpd这个用户由于安全上的考虑只能用127.0.0.1这个ip来登陆..除非别人黑了机子否则最
高权限的用户是不能被除了127.0.0.1以外的任何ip登陆的.所以最好不要更改这个限制.
现在到windows上用flashfxp来登陆试试吧.万一登陆不了.请在/etc/hosts.allow文件中加入GLFTPD: ALL
(这个和上面的安装时选tcpd有关系.)

btw:奇怪...我第一次不能登陆...加了glftpd:all一次后,又去掉了..又可以了...不知道为什么...


四.glftpd的配置文件glftpd.conf
不知道怎么讲解这个配置文件...我前后看了几个星期...(英文不好)还是用我的music ftp的配置实例来讲吧....
[code:1]
 

# Server shutdown: 0=server open, 1=deny all but siteops, !*=deny all, etc
#shutdown 1
#这个就是关闭ftp的开关了.后面的参数是关闭以后还有谁还可以进入,上面的英文中的范例很明白了.
#数字就是上面所说的第三种用户表示法...

sitename_long iamok
sitename_short MSN
email [email protected]

rootpath /home/gl_127/glftpd
#这个是整个ftp的目录...使下面的配置能使用相对路径而不是绝对路径.

#Path relative to the ROOTPATH.
datapath /ftp-data
#这里的/ftp-data就是相对于上面设置的rootpath来说的.绝对路径为:/home/gl_127/glftpd/ftp-data

welcome_msg /ftp-data/misc/welcome.msg *
#goodbye_msg /ftp-data/misc/goodbye.msg *
newsfile /ftp-data/misc/newsfile *
#banner /ftp-data/misc/banner
#上面这些目录干什么用的...设置过serv-u的一定知道了^_^

# we will not show the dir/file listings in color
color_mode 0

##############################################################################
# SECTION # KEYWORD DIRECTORY SEPARATE CREDITS #
##############################################################################
stat_section DEFAULT * yes

##############################################################################
################## THE RIGHTS SECTION BEGINS HERE ####################
##############################################################################
# (you can use a ! in front of any group/user/flag to negate it) #
# The default is no, you don't need to add "!*" at the end #
# #
# Function Path =GROUP or -username or X (flag) #
##############################################################################

upload /site/20g/incoming/* *
upload /site/20g/music/* =fxp
#上面设置upload的路径和有这个权限用户,路径是相对于rootpath的.这个要记住了.后面的是用户,用户用"-用户名"表示,组用"=组名"表示,还可以用数字表示用户类别.

resume * *
#设置能否续传

makedir /site/20g/incoming/* *
makedir /site/20g/music/* =fxp
#设置建立目录,有这个权限用户和路径

download /site/20g/* *
#下裁的路径和有这个权限用户

dirlog * *

rename * 1 =STAFF =fxp
#重命名的路径和有这个权限用户

filemove * 1 =STAFF =fxp
#可以移动文件的路径和有这个权限用户

renameown * 1 =fxp =pubfxp
#重命名自己上传的文件的路径和有这个权限的用户

#nuke * *

delete * 1 =fxp
#删除的路径和有这个权限的用户

deleteown * 1 =fxp =pubfxp
#删除自己上传的文件的路径和有这个权限的用户
overwrite /site/20g/incoming/* 1 =fxp =pubfxp
overwrite /site/20g/music/* 1 =fxp
#有覆盖权限的路径和用户

##############################################################################
################### THE RIGHTS SECTION ENDS HERE #####################
##############################################################################

##############################################################################
# secure_pass mask users to whom this rule applies #
##############################################################################

#secure_pass a2.. *

##############################################################################
# secure_ip min. fields allow hostnames? need ident? users to whom this applies
##############################################################################

#secure_ip 1 1 1 *

##############################################################################
#path-filter group path/msgfile filters
#path-filter * /ftp-data/misc/pathmsg ^[-A-Za-z0-9_.()[:space:]]*$ ^\. ^-
#一定要注释掉这里哦...要不然没有中文文件名哦.

#use_dir_size k /

#show_totals *
#show_diz .message

free_space 200
#设置空余的空间限制(M)

max_users 50 5
#设置可登陆用户.和没有这个限制的"数字4类"的用户,这里最多50个用户和5个"4类"用户.

total_users 300
#总共可以添加的用户数

# dupecheck how many days? ignore file case like Windows?
#dupe_check 7 no

dl_incomplete 0
#不能下裁没有完成的文件.上传的时候权限是600,如果是1的话.那权限就是755

noretrieve passwd passwd- group group-
#设置不能传送的文件

min_homedir /site
#设置通过site change homedir可以改变得用户目录的范围.实际的用户目录通过rootpath/ftp-data/user/中的相应的用户配置文件来改变.

#############################################################################
# <cap 1st letter> <lower/upper> character conversions...
#file_names 0 lower [:space:]_
#dir_names 1 none [:space:]_
#############################################################################

#tagline No[:space:]Tagline[:space:]Set

ignore_type *.[tT][xX][tT] *.[nN][fF][oO] [rR][eE][aA][dD][mM][eE] .message
ignore_type *.[sS][fF][vV] *.[cC][rR][cC] *.[dD][iI][zZ]

#############################################################################
#pre_dir_check /bin/dirscript
#pre_check /bin/dupescript
#post_check /bin/zipscript
#############################################################################

############## Location #################### Max number of lines in Display #
oneliners /ftp-data/misc/oneliners 7
requests /ftp-data/misc/requests 10
lastonline /ftp-data/misc/lastonline 10
#############################################################################

############################################################################
# Nukedir_Style:
# 1st. Option [Format: %N = DIR]
# 2nd. Option 0 = Delete ALL, 1 = Save main dir., 2 = Save ALL (UNNUKE)
# 3rd. Option [Byte Size] for nuker to discount.
############################################################################
#nukedir_style NUKED-%N 2 50000

#empty_nuke 25000
#multiplier_max 20

############################################################################
# Private Groups: privgroup GROUPNAME GROUPDESC #
############################################################################
privgroup STAFF My[:space:]Private[:space:]Group

############################################################################
# PRIVPATHS: Directories should be uniquely named (no wildcards) #
############################################################################
#privpath /site/privatedir 1 =STAFF

############################################################################
# CUSTOM SITE COMMANDS #
# site_cmd [CMD NAME] [EXEC/TEXT] [PATH TO FILE] #
############################################################################
site_cmd RULES TEXT /ftp-data/misc/site.rules
site_cmd LOCATE EXEC /bin/locate.sh

###########################################################################
# new add config
#
# begin
###########################################################################

allow_fxp yes yes yes =fxp =pubfxp
allow_fxp no no no *
#设置fxp的权限:allow_fxp 下 上 记录 用户
#设置了第一条发现一般用户也可以fxp所以加了第二条
speed_limit /site/20g* 900000 900000 -mp34et8
#设置总的速度限制speed_limit 路径 下 上 用户

login_prompt iamok[:space:]and[:space:]gao[:space:]ftp
#设置登陆的信息..覆盖掉版本信息

idle_commands noop
#设置忽略的idle命令.也就是屏蔽noop命令了..即使你做了noop动作...srv还是认为你空闲了...还可以加其他命令.

##########################################################################
# new add config
#
# end
##########################################################################

custom-rules !8 *
custom-locate !8 *

-addip 1 2 7
-adduser 1 2 7
-change 1 7
-changeflags 1
-changeratio 1 2 7
-changesratio 1 7
-changehomedir 1
-chmod 1
-chgrp 1 7
-chgrp-priv 1
-chpass 1
-delip 1 2 7
-deluser 1 2 7
-dirs !8 *
-errlog 1
-flags !8 *
-gadduser 1 7
-ginfo 2 H
-give G
-group !3 *
-groups !8 *
-grpadd 1
-grpdel 1
-grplog 1
-grpnfo 1 2
-grpren 1
-grpstats *
-help !8 *
-info !8 *
-kick D
-kill E
-logins 1
-misc !8 *
-msg !8 *
-msg* 1
-msg= 1
-msg{ !8 *
-nuke A
-onel !8 *
-oneladd !8 *
-predupe 1 7
-passwd !8 1 =fxp =pubfxp
#设置可以更改密码的用户

-purge 1
-readd 1 2 7
-renuser 1 7
-reqlog 1 A B 7
-request !8 *
-requestadd !8 *
-show 1
-stat !8 *
-stats !8 *
-swho =STAFF 1 E
-take F
-syslog 1 =STAFF
-undupe C
-unnuke B
-update 1
-user !8 *
-users H
-usercomment 1 7
-userextra 1 2 7
-who !8 *
-wipe 1
[/code:1]
 

五.设置用户属性的site命令及常用命令
(1)
1.设置比率
site change 用户名 ratio 比率
例:无限制 site change mp34et8 0
2.设置进入ftp时的位置
site change 用户名 startup_dir 路径(相对于homedir)
例:site change mp34et8 /20g
3.设置time out(超时)
site change 用户名 idle_time 时间(秒)
例:设置2分钟 site change mp34et8 idle_time 120
4.设置线程和(一个用户名给多少人用)
site change mp34et8 num_logins  max_login_pre_usename 线程
例:一个用户名50用户使用.每个用户1线程
site change mp34et8 num_logins 50 1
5.设置下裁速度
site change 用户名 max_dlspeed 速度(k)
例:限制200k site change mp34et8 max_dlspeed 200
(2)常用命令
1.site who
查看在线用户,和当前的速率
2.site swho
查看在线用户ip(=STAFF 1 E用户可用.可以更改权限在glftpd.conf中)
3.site passwd
变更密码...不过我在glftpd.conf做了限制.因为mp34et8是公用帐号...不能改密码的...
这些命令在glftpd.conf配置文件的最后都有一个用户权限列表...更改就可以改变用户是否有权利执行这些命令...

六.小结
上面只是我的用glftpd的一些经验...实际上glftpd的功能远不止这些...因为找了好久么有找到glftpd的相关中文资料所以就想写一个入门教程.
glftpd支持外挂的脚本..可以做很多自动化的工作...文档也很详细..个人感觉比proftpd好...而且是独立的系统用户和linux系统无关.
发表于 2002-11-9 08:39:47 | 显示全部楼层
不好意思。第一次听说有这个东西:glftpd

辛苦了,辛苦了 !
回复

使用道具 举报

发表于 2003-10-24 13:42:37 | 显示全部楼层
glftpd是最强悍的ftp软件 可惜没公布源码  :neutral:
回复

使用道具 举报

发表于 2004-1-29 12:30:03 | 显示全部楼层
是呀,官方文档也很少,好像在windows下的也有类似的ftp产品
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-15 00:10 , Processed in 0.082257 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表