Linux/Fedora下架设FTP服务器(vsftpd)

在Linux/Fedora下架设FTP服务器:
下面来介绍一款Linux/Fedora下非常好用的FTP服务器软件-vsFTP, vsFTP拥有友好的图形用户界面,设置比较简便。
下面来详细介绍如何安装和使用配置vsFTP。
过程还是比较傻瓜式的,我使用的是fedora8版本。照着提示来做就可以。后面的高级设置会补上。
可以先查看是否已经安装了vsftpd:
键入命令:rpm -qa|grep vsfptd
如果提示出vsftpd版本号,说明已经安装。
否则请进行下面的操作:

1.vsFTP服务器安装。

在Fedora下可以采用yum来安装vsFTP。在终端输入

yum install vsftpd

2.vsFTP服务器配置。

安装完成以后菜单中可以找到vsFTP菜单项。Fedora中vsftp的配置文件默认在 /etc/vsftpd/vsftpd.conf 。

用文本编辑器或者从终端通过 vi 来编辑vsftpd.conf。下面介绍vsftpd.conf文件中各命令的作用。

anonymous_enable=YES             

#允许匿名访问

local_enable=YES                       

#允许本地用户访问(/etc/passwd中的用户)

write_enable=YES

#允许写入权限,包括修改,删除

local_umask=022

#本地用户文件上传后的权限是-rw-r-r

#anon_umask=077

#匿名用户上传后权限是-rw—-

anon_world_readable_only=YES

#允许匿名用户浏览,下载文件

anon_upload_enable=YES

#允许匿名用户上传

#anon_mkdir_write_enable=YES

#允许匿名用户建立目录

anon_other_write_enable=YES

#允许匿名用户具有建立目录,上传之外的权限,如重命名,删除

dirmessage_enable=YES

#当使用者转换目录,则会显示该目录下的.message信息

xferlog_enable=YES

#记录s使用者所有上传下载信息

xferlog_file=/var/log/vsftpd.log

#将上传下载信息记录到/var/log/vsftpd.log中

connect_from_port_20=YES

#确保ftp-datad 数据传送使用port 20

idle_session_timeout=600

#如果使用者600秒没有动作,则踢出

chroot_list_enable=YES

#限制使用者不能离开家目录,例如blue登陆后位于/home/blue下,设置该选项后,他不可以转到/home/blue的上层目录,如/bin, /usr,/opt…etc。

chroot_list_file=/etc/vsftpd.chroot_list

#与上条同时使用,设置限制使用者的存放文件为/etc/vsftpd.chroot_list

#建立文本文件/etc/vsftpd.chroot_list,写入要限制的用户,一行一个。

#如果希望限制所有用户,则可以设置chroot_local_user=YES 代替上面两行

tcp_wrappers=YES

#支持tcp_wrappers,限制访问(/etc/hosts.allow,/etc/hosts.deny)

listen=YES

#使用standalone启动vsftpd,而不是super daemon(xinetd)控制它 (vsftpd推荐使用standalone方式)

listen_port=21

#ftp监听端口

userlist_enable=YES

userlist_deny=YES

userlist_file=/etc/vsftpd.user_list

#以上三条设定不允许登陆的用户,用户列表存放在/etc/vsftpd.user_list中,一行一个帐号

pam_service_name=vsftpd

#PAM所使用的名称.同userlist_*一样限制用户登陆,不同的是userlist_*在进行密码验证之前拒绝用户登陆,pam是在密码验证之后拒绝登陆.(提示密码错误) 用户列表默认存放在/etc/ftpusers中,一行一个. (可通过/etc/pam.d/vsftpd重定向用户列表存放文件)

#获得 /etc/pam.d/vsftpd:

#cp etc/vsftpd.pam /etc/pam.d/vsftpd

max_clients=100

#最大用户在线数量

max_per_ip=2

#每ip最大线程

anon_max_rate=30000

#匿名用户最大传输速度  单位: bytes/秒

local_max_rate=50000

#本地用户最大传输速度  单位:bytes/秒

user_config_dir=/etc/userconf

#个别用户配置目录(用来设定特殊帐号),例如我想让blue这个用户的传输速度是100KB

就可以在/etc/userconf/下创建文本文件blue(与用户名相同),加入local_max_rate=100000即可

anon_root=/var/ftp

#设定匿名用户登陆后所在的目录

local_root=/var/local_user

#设定所有本地用户登陆后的目录,如不设置此项,则本地用户登陆后位于各自家目录下。

use_localtime=YES

#使用本地时间而不是GMT

nopriv_user=vsftpd

#设定服务执行者为vsftpd,默认使用的是nobody,vsftpd推荐使用一个权限很低的用户.这里用vsftpd代替nobody,创建 vsftpd用户:

#groupadd vsftpd

#useradd -d /dev/null -g vsftpd -s /bin/false vsftpd

这样就有了个权限非常低的vsftpd用户(没有家目录(/dev/null),没有登陆shell(/bin/false),系统会更安全,设定好后就可以启动啦 

#/usr/sbin/vsftpd  注:此命令无任何提示
或者使用如下命令启动:/sbin/service vsftpd start
重启:/sbin/service vsftpd restart  

如果客户端不能链接,用ifconfig查看服务器IP设置是否正确,并关闭防火墙。

你可能感兴趣的:(Linux/Fedora下架设FTP服务器(vsftpd))