分类: LINUX
2010-09-16 12:06:43
首先查询是否安装vsftp
[root@localhost root]# rpm -qa|grep vsftpd
[root@localhost root]#
没有安装
先安装rpm -ivh vsftpd-1.1.3-8.rpm
[root@localhost root]# rpm -qa|grep vsftpd
vsftpd-1.1.3-8
证明安装好了
现在就可以直接启动vsftp了
启动
[root@localhost root]# /etc/rc.d/init.d/vsftpd start
Starting vsftpd for vsftpd: [ OK ]
测试
[root@localhost root]# ftp localhost //登陆
Connected to localhost (127.0.0.1).
220 (vsFTPd 1.1.3)
Name (localhost:root):
530 Permission denied.
Login failed.
ftp> bye //使用bye退出
221 Goodbye.
所以不用修改vsftpd里面的内容,就可以直接运行了.不过此时的效果是:
匿名帐号anonymous可以登陆,主目录为/var/ftp,并且被锁定在此目录下.此账户只有下载权限
系统的帐号(/etc/passwd文件中的帐号)可以登陆,并且没有锁定主目录
任何在/etc/vsftpd/ftpusers文件中的帐号是无法登陆的
上传和下载的日志信息保存在/var/log/vsftpd.log中
所以一般这样就够我们用了,只是要注意把那些不允许登陆的帐号写到上面提到的两个文件中vsftpd.ftpusers和vsftd.user_list
我一直没找到如何限制总带宽,也就是说不限客户端数目,总带宽给他们平均分,同时连的人多每人得的带宽就少,连的人少每人得的带宽就多.还希望哪个能给小弟指点一下.
不过我也想到这样,反正是限定了客户端的数量和每个客户端的下载速度,两者相乘就是服务器给它的最大带宽,虽然不灵活,但是也是变相的起到了限制总流量的作用了.
我想一般ftp服务器也就用到这么多功能,最后必须要提到的是你要帐户能写,那个目录就要给账户开写的权限哦.
6、由于匿名上传不会成功,所以配置上传用户:
A、在etc 目录下more vsftp.user_list和more vsftp.users
B、 vi vsftp.user_list
C、 加一个#注释掉ROOT。 存盘退出。
7、 让 FTP 机器启动就跟着启动:
Chkconfig -–list | more
Chkconfig –-list | grep vsftpd
然后做这个东西:Chkconfig vsftpd on 启动级别变成开始
关于/etc/vsftpd/vsftpd.conf文件
面我们就来设置一个vsftpd的核心文件
# cd /etc/vsftpd/vsftpd.conf 这就是vsftpd的核心配置文件
anonymous_enable=YES/no 是否允许匿名用户登录
anonymous_enable=yes/no 是否允许匿名上传文件
local_enable= YES/no 是否允许本地用户登录
write_enable= YES/no 是否允许本地用户上传
guest_enable=yes/no 是否允许虚拟用户登录;
local_mask=022 设置本地用户的文件生成掩码为022,默认值为077
dirmessage_enable= YES 设置切换到目录时显示.message隐含文件的内容
xferlog_enable= YES 激活上传和下载日志
connect_from_port_20=YES 启用FTP数据端口连接
pam_service_name=vsftpd 设置PAM认证服务的配置文件名称, 该文件存放在/etc/pam.d目录下
userlist_enable= YES 允许vsftpd.user_list文件中的用户访问服务器
userlist_deny= YES 拒绝vsftpd.user_list文件中的用户访问服务器
listen= YES/no 是否使用独占启动方式(这一项比较重要)
tcp_wrappers= YES/no 是否使用tcp_wrappers作为主机访问控制方式
最主要的就是这些设置了。(这是一般都是默认的不是太懂的不要动)
大家可以设置下面的设置:
ftpd_banner=welcome to ftp service 设置连接服务器后的欢迎信息
idle_session_timeout=60 限制远程的客户机连接后,所建立的控制连接,在多长时间没有做任何的操作就会中断(秒)
data_connection_timeout=120 设置客户机在进行数据传输时,设置空闲的数据中断时间
accept_timeout=60 设置在多长时间后自动建立连接
connect_timeout=60 设置数据连接的最大激活时间,多长时间断开,为别人所使用;
max_clients=200 指明服务器总的客户并发连接数为200
max_per_ip=3 指明每个客户机的最大连接数为3
local_max_rate=50000(50kbytes/sec)
anon_max_rate=30000 设置本地用户和匿名用户的最大传输速率限制
pasv_min_port=端口
pasv-max-prot=端口号 定义最大与最小端口,为0表示任意端口;为客户端连接指明端口;
listen_address=IP地址 设置ftp服务来监听的地址,客户端可以用哪个地址来连接;
listen_port=端口号 设置FTP工作的端口号,默认的为21
chroot_local_user=YES 设置所有的本地用户可以chroot
chroot_local_user=NO 设置指定用户能够chroot
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list(只有/etc/vsftpd.chroot_list中的指定的用户才能执行 )
local_root=path 无论哪个用户都能登录的用户,定义登录帐号的主目录, 若没有指定,则每一个用户则进入到个人用户主目录;
chroot_local_user=yes/no 是否锁定本地系统帐号用户主目录(所有);锁定后,用户只能访问用户的主目录/home/user,不能利用cd命令向上转;只能向下;
chroot_list_enable=yes/no 锁定指定文件中用户的主目录(部分),文件:/chroot_list_file=path 中指定;
userlist_enable=YES/NO 是否加载用户列表文件;
userlist_deny=YES 表示上面所加载的用户是否允许拒绝登录;
userlist_file=/etc/vsftpd.user_list 列表文件
这些就是高级设置了。大家可以适当的更改。
#vi /etc/hosts.allow
vsftpd:192.168.5.128:DENY 设置该IP地址不可以访问ftp服务(vsftpd在独占启动方式下支持tcp_wrappers主机访问控制方式)
时间限制:
#cp /usr/share/doc/vsftpd-1.1.3/vsftpd.xinetd /etc/xinetd.d/vsftpd
#vi /etc/xinetd.d/vsftpd/
修改 disable = no
access_time = hour:min-hour:min (添加配置访问的时间限制(注:与vsftpd.conf中listen=NO相对应)
例: access_time = 8:30-11:30 17:30-21:30 表示只有这两个时间段可以访问ftp
ftp的配置基本上只有这些了。
chinaunix网友2010-09-16 16:53:56
很好的, 收藏了 推荐一个博客,提供很多免费软件编程电子书下载: http://free-ebooks.appspot.com