测试一下午,终于搞定
1.安装vsftp
#yum install vsftpd -y
2.安装好后进入/etc/vsftpd/目录
# cd /etc/vsftpd
其中,vsftpd.conf: 主配置文件
3.添加账户及密码
#useradd -d /home/wwwroot -s /sbin/nologin pwftp 其中/home/wwwroot为创建用户pwftp的根目录
4.修改该帐户密码:
#passwd pwftp 输入两次新密码
5.修改指定目录的权限
#chown -R pwftp.pwftp /home/wwwroot/
6.修改配置文件vsftpd.conf
#vi /etc/vsftpd/vsftpd.conf
修改如下:
anonymous_enable=YES “改为 “anonymous_enable=NO”
下面三项前面的#号去掉
local_enable=YES
write_enable=YES
chroot_local_user=YES
保存退出7.使用命令启动vsftp服务:
#service vsftpd start 开启
#service vsftpd stop 关闭
#service vsftpd restart 重启(每次修改完配置需重启)8.下面就可以进行测试登录了
9.如需修改用户访问的根目录
#usermod -d /home/www/ pwftp //更改用户pwftp的根目录为/home/www
注意:
1.关掉防火墙
# /etc/init.d/iptables status 查看状态
#service iptables {start|stop|restart} 分别对应防火墙的开启、关闭、重启
2.查看关闭selinux
#sestatus 查看状态
如关闭请修改文件 #vi /etc/sysconfig/selinux
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of these two values:
# targeted - Targeted processes are protected,
# mls - Multi Level Security protection.
SELINUXTYPE=targeted
3.
我们可以在vsftpd.conf 文件设置如下参数:
(1)ftpd_banner=welcome to ftp service :设置连接服务器后的欢迎信息
(2)idle_session_timeout=60 :限制远程的客户机连接后,所建立的控制连接,在多长时间没有做任何的操作就会中断(秒)
(3)data_connection_timeout=120 :设置客户机在进行数据传输时,设置空闲的数据中断时间
(4)accept_timeout=60 设置在多长时间后自动建立连接
(5)connect_timeout=60 设置数据连接的最大激活时间,多长时间断开,为别人所使用;
(6)max_clients=200 指明服务器总的客户并发连接数为200
(7)max_per_ip=3 指明每个客户机的最大连接数为3
(8)local_max_rate=50000(50kbytes/sec) 本地用户最大传输速率限制
(9)anon_max_rate=30000匿名用户的最大传输速率限制
(10)pasv_min_port=端口
(11)pasv-max-prot=端口号 定义最大与最小端口,为0表示任意端口;为客户端连接指明端口;
(12)listen_address=IP地址 设置ftp服务来监听的地址,客户端可以用哪个地址来连接;
(13)listen_port=端口号 设置FTP工作的端口号,默认的为21
(14)chroot_local_user=YES 设置所有的本地用户可以chroot
(15)chroot_local_user=NO 设置指定用户能够chroot
(16)chroot_list_enable=YES
(17)chroot_list_file=/etc/vsftpd/chroot_list(只有/etc/vsftpd/chroot_list中的指定的用户才能执行 )
(18)local_root=path 无论哪个用户都能登录的用户,定义登录帐号的主目录, 若没有指定,则每一个用户则进入到个人用户主目录;
(19)chroot_local_user=yes/no 是否锁定本地系统帐号用户主目录(所有);锁定后,用户只能访问用户的主目录/home/user,不能利用cd命令向上转;只能向下;
(20)chroot_list_enable=yes/no 锁定指定文件中用户的主目录(部分),文件:/chroot_list_file=path 中指定;
(21)userlist_enable=YES/NO 是否加载用户列表文件;
(22)userlist_deny=YES 表示上面所加载的用户是否允许拒绝登录;
(23)userlist_file=/etc/vsftpd/user_list 列表文件
4.默认情况下,ftp根目录是/var/ftp。 如果要修改这个目录位置,可以更改/etc/passwd 文件,找到用户,修改相应目录位置保存