在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设置是否正确,并关闭防火墙。