J2EE社区

苟有恒,何必三更起五更眠;
最无益,只怕一日曝十日寒.
posts - 241, comments - 318, trackbacks - 0, articles - 16

RedHat下用vsftp搭建ftp系统

Posted on 2010-04-15 11:31 xcp 阅读(911) 评论(0)  编辑  收藏 所属分类: JAVA

RedHat带了wu-ftpdvsftp两套ftp系统.我也使第一次接触vsftp,根据manvsftp的含义就是Very Security Ftp的意思简单的看了看vsftp的说明,发现还是很简单的,下面就简要的说一下它的配置方法.

1.
相关配置文件
/etc
目录下的vsftpd.conf,vsftpd.ftpuser,vsftpd.user_list,/etc/xinetd.d/vsftpd

2.
配置vsftp
主要是修改/etc/vsftpd.conf就可以了,相关参数如下:

anonymous_enable=YES
是否允许匿名ftp,如否则选择NO

local_enable=YES
是否允许本地用户登录

local_umask=022
默认的umask

anon_upload_enable=YES
是否允许匿名ftp用户访问

anon_upload_enable=YES
是否允许匿名上传文件

anon_mkdir_write_enable=YES
是否允许匿名用户有创建目录的权利

dirmessage_enable=YES
是否显示目录说明文件,默认是YES但需要收工创建.message文件

xferlog_enable=YES
是否记录ftp传输过程

connect_from_port_20=YES
是否确信端口传输来自20(ftp-data)

chown_upload=YES
chown_username=username
是否改变上传文件的属主,如果是需要输入一个系统用户名,你可以把上传的文件都改成root属主

xferlog_file=/var/log/vsftpd.log ftp
传输日志的路径和名字默认是/var/log/vsftpd.log

xferlog_std_format=YES
是否使用标准的ftp xferlog模式

idle_session_timeout=600
设置默认的断开不活跃session的时间

data_connection_timeout=120
设置数据传输超时时间

nopriv_user=ftpsecure
运行vsftpd需要的非特权系统用户默认是nobody

async_abor_enable=YES
是否允许运行特殊的ftp命令async ABOR.这里我翻译的不爽,原文如下:
When enabled, a special FTP command known as "async ABOR" will be enabled. Only ill advised FTP clients will use this feature.Addtionally, this feature is awkward to handle, so it is dis-abled by default. Unfortunately, some FTP clients will hang when cancelling a transfer unless this feature is available, so you may wish to enable it.

ascii_upload_enable=YES
ascii_download_enable=YES
是否使用ascii码方式上传和下载文件

ftpd_banner=Welcome to chenlf FTP service.
定制欢迎信息

deny_email_enable=YES
banned_email_file=/etc/vsftpd.banned_emails
是否允许禁止匿名用户使用某些邮件地址,如果是输入禁止的邮件地址的路径和文件名

chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
是否将系统用户限止在自己的home目录下,如果选择了yes那么chroot_list_file=/etc/vsftpd.chroot_list中列出的是不chroot的用户的列表

max_clients=Number
如果以standalone模式起动,那么只有$Number个用户可以连接,其他的用户将得到错误信息,默认是0不限止

message_file
设置访问一个目录时获得的目录信息文件的文件名,默认是.message

没发现有限止带宽的地方,如果谁知道请告诉我,详细的帮助说明请参考man vsftpd.conf

3
配置实例
以下是我的配置文件.允许匿名FTP,允许上传,chroot用户目录,上传文件属主改为root

anonymous_enable=YES
local_enable=YES
write_enable=YES
local_umask=022
anon_upload_enable=YES
anon_mkdir_write_enable=YES
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
chown_uploads=YES
chown_username=root
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
pam_service_name=vsftpd
chroot_local_user=YES

4
起动服务

vsftpd
wu-ftpd不能同时起动,所以修改/etc/xinetd.d/wu-ftpddisable设置为yes,然后修改/etc/vsftpddisable设置为NO
执行/etc/initd.d/xinetd restart




名称: ♪4C.ESL | .↗Evon
口号: 遇到新问题♪先要寻找一个方案乄而不是创造一个方案こ
mail: 联系我