Centos6.5搭建vsftpd,并配置用户和密码登录

Centos6.5搭建vsftpd,并配置用户和密码登录

2017年05月11日 18:40:47

阅读数:6142

1)安装vsftpd

yum install vsftpd

2)配置vsftpd配置文件

vi /etc/vsftpd/vsftpd.conf

=》禁止匿名访问

将配置文件中”anonymous_enable=YES “改为 “anonymous_enable=NO”

=》所有的用户均不能通过cd切换到其他目录

chroot_local_user=YES

chroot_list_enable=NO

chroot_list_file=/etc/vsftpd/chroot_list

[plain]view plaincopy

  1. 参考:
  2. chroot_list_enable=YES/NO(NO)
  3. 设置是否启用chroot_list_file配置项指定的用户列表文件。默认值为NO。
  4. chroot_list_file=/etc/vsftpd.chroot_list
  5. 用于指定用户列表文件,该文件用于控制哪些用户可以切换到用户家目录的上级目录。
  6. chroot_local_user=YES/NO(NO)
  7. 用于指定用户列表文件中的用户是否允许切换到上级目录。默认值为NO。

[plain]view plaincopy

  1. 通过搭配能实现以下几种效果:
  2. ①当chroot_list_enable=YES,chroot_local_user=YES时,在/etc/vsftpd.chroot_list文件中列出的用户,可以切换到其他目录;未在文件中列出的用户,不能切换到其他目录。
  3. ②当chroot_list_enable=YES,chroot_local_user=NO时,在/etc/vsftpd.chroot_list文件中列出的用户,不能切换到其他目录;未在文件中列出的用户,可以切换到其他目录。
  4. ③当chroot_list_enable=NO,chroot_local_user=YES时,所有的用户均不能切换到其他目录。
  5. ④当chroot_list_enable=NO,chroot_local_user=NO时,所有的用户均可以切换到其他目录。

3)添加ftp用户

登录Linux主机后,运行命令:”useradd ftpadmin -s /sbin/nologin “。

该账户路径默认指向/home/ftpadmin目录;

如果需要将用户指向其他目录,请运行命令:useradd ftpadmin -s /sbin/nologin –d /opt/test(其他目录)

4)修改ftp用户密码

设置ftpadmin用户密码,运行命令:”passwd ftpadmin”

5)启动vsftpd服务

登录Linux主机后,运行命令:”service vsftpd start”

如果让FTP每次开机自动启动,运行命令: “chkconfig --level 35 vsftpd on”

6)可能遇到的问题

修改chroot_local_user=YES chroot_list_enable=NO之后,连接ftp可能会报错:

500 OOPS: vsftpd: refusing to run with writable root inside chroot()

"如果启用chroot,必须保证ftp根目录不可写,这样对于ftp根直接为网站根目录的用户不方便,所以建议将ftp根目录/home/ftpadmin访问权限改写如下

chmod a-w /home/ftpadmin