WenRou's Blog
centos下的vsftp配置
2013-9-27 温柔哥

vsftp的安装就不说了,谈谈配置,这里只架设一个普通的ftp服务器,用户较少,也不经常添加(例如小公司),故不涉及虚拟用户及使用数据库验证用户名密码的问题,只用系统建立的帐号登录。


编辑/etc/vsftpd/vsftpd.conf,注意在等号前的部分大小写是敏感的,一定要全部小写,最后所有产生效用的设置调如下。

anonymous_enable=NO 不允许匿名登录(默认为YES,需要修改)

local_enable=YES 允许本地用户登录(默认)

write_enable=YES 开放本地用户登录后的修改权限(默认)

local_umask=022 上传文件默认权限为755(777-022)(默认)

dirmessage_enable=YES 欢迎信息(默认)

xferlog_enable=YES 记录log(默认)

connect_from_port_20=YES (默认)

xferlog_std_format=YES log格式(默认)

listen=YES (默认)

chroot_local_user=YES 限制用户登陆后只能在自身目录(新添加)

pam_service_name=vsftpd (默认)

tcp_wrappers=YES (默认)

最后删除一条默认的userlist_enable=YES

保存退出后


接下来建立一个不能在本地登录而只能使用ftp的用户,假设用户名为yonghu,个人所属的文件夹为/var/ftp/yonghu


命令如下

useradd -g ftp -d /var/ftp/yonghu -s /sbin/nologin yonghu

建立完成后使用passwd yonghu命令设置密码


(注意某些系统中,禁止本地登录的文件并不是/sbin/nologin,而是/bin/false,要先查看一下。)


检查/etc/shells文件中,有没有/sbin/nologin这一行,如没有需要手动添加,否则将被拒绝登录ftp。


接下来用命令

setsebool ftpd_disable_trans 1

关闭selinux对vsftp的限制


再使用system-config-securitylevel-tui命令,选择定制,把ftp前的星号加上,打开ftp服务的防火墙。


最后使用service vsftpd restart命令,重新启动vsftp服务,至此大功告成。


发表评论:
昵称

邮件地址 (选填)

个人主页 (选填)

内容