CentOS / RHCE vsftpd 配置
ftp服务是最常见的,最经常使用的,问的问题也是最多的。ftp种类很多,如vsftp、pureftp、proftp等等。各位站长经常使用ftp,也经常搞不定ftp。下面零起点配置vsftp。
1. 安装
# yum -y install vsftpd |
2. 启动服务
# service vsftpd start |
3. 自启动
# chkconfig vsftpd on |
4. 添加ftp账号
# useradd –d /data/wwwroot/www.ttlsa.com/webroot -g nobody –s /sbin/nologin ttlsa_ftp |
[warning]如果后面不加–s /sbin/nologin参数,建立的用户为普通系统用户,有登陆服务器的权限,这是非常危险。[/warning]注释:
-s /sbin/nologin 是让其不能登陆系统。
-d 是指定用户目录为/data/wwwroot/www.ttlsa.com/webroot,根据你的需求换成任何你要的目录。
-g nobody 把用户加入到nobody组中。(我这里是添加到nobody组,是为了web可以运行)
ttlsa_ftp 是ftp用户名,换成你的ftp用户名。
执行该命令后,如果出现下面的提示:
useradd: warning: the home directory already exists.
Not copying any file from skel directory into it.
这说明用户的目录已经存在,并非添加用户失败,可以忽略。
5. 创建密码
# passwd ttlsa_ftp |
6. 修改目录属性
# chown -R ttlsa_ftp /data/wwwroot/www.ttlsa.com/webroot |
递归把所有目录及文件的属主改为ttlsa_ftp
这样,网站既可以运行,ftp也可以修改。
7. 配置ftp
# vi /etc/vsftpd/vsftpd.conf |
anonymous_enable=NO |
chroot_local_user=YES |
基本可以保持默认的参数不变,上面两个地方需要修改。
8. 重启服务器使之生效
# service vsftpd restart |
9. 在selinux开启情况下
在进行上传或新建文件夹操作时, 如果出现550或553错误, 这是由于SELinux造成的vsftp无法读取和写入文件。需要做下面的设定:
# setsebool -P ftpd_disable_trans on |
# setsebool -P ftp_home_dir on |
或者关闭selinux
目录 返回
首页