Centos 下 vsftpd 的安装配置

----- 获取 vsftpd ---------------------------------------------------------------------------------------------------------------------------------------------------------------------

    yum -y install vsftpd

----- 匿名用户的配置 ----------------------------------------------------------------------------------------------------------------------------------------------------------------

不配置任何参数的情况下,FTP可以直接用匿名用户登录,但是只能连接FTP服务器,不能上传和下载,对应目录也可能只是 pub 目录。

FTP 匿名无法登录?
查看防火墙是否开启FTP端口,netstat -tl 可以查看ftp端口是否在侦听了。
是否启动 vsftpd : service vsftpd start

开启匿名FTP服务器上传权限和下载权限

编辑 vsftpd 的配置文件

    vi /etc/vsftpd/vsftpd.conf

允许匿名用户登录FTP

    anonymous_enable=YES

设置匿名用户的登录目录(如需要,需自己添加并修改)

    anon_root=/var/ftp/pub

打开匿名用户的上传权限

    anon_upload_enable=YES

打开匿名用户创建目录的权限

    anon_mkdir_write_enable=YES

打开匿名用户删除和重命名的权限(如需要,需自己添加)

    anon_other_write_enable=YES

匿名用户的掩码(如需要,需自己添加,含义:如umask是022,这时创建一个权限为666的文件,文件的实际权限为666-022=644)

    anon_umask=022

ftp目录的权限设置
默认情况下,ftp的根目录为/var/ftp,为了安全,这个目录默认不允许上传文件 因为其木有写入权限。要想上传文件就要改权限:

    chmod 757 /var/ftp/pub

登录FTP,目录下的文件不显示?226 Transfer done (but failed to open directory)?
To disable SELinux, 编辑 /etc/selinux/config 设定 "SELINUX=disabled" ,然后重启。稍后就可以重启 FTP 重新连接生效了。

 

500 OOPS: vsftpd: refusing to run with writable anonymous root 错误?

设置的ftp的根目录没有权限或者设置了 777 的权限给该目录,解决方案:chmod 757 /var/ftp/pub

----- 添加 FTP 用户 ----------------------------------------------------------------------------------------------------------------------------------------------------------------

    touch /etc/vsftpd/vsftpd.chroot_list

添加用户

    useradd shamrocker -d /home/shamrocker -s /sbin/nologin

设定密码

    passwd shamrocker

把用户 shamrocker 加到 /etc/vsftpd/vsftpd.chroot_list 里, 这样用户就可以正常登陆并且不能跳出自己的目录

    echo 'shamrocker' >> /etc/vsftpd/vsftpd.chroot_list

完毕

posted @ 2012-08-14 14:55  shamrocker  阅读(336)  评论(0编辑  收藏  举报