CentOS 安装vsftp 建新用户的方法
脚本之家
rpm -qa | grep vsftpd 查看有没有安装vsftp
运行命令开始安装
yum -y install vsftpd
centos会自动下载安装。
安装完毕后
设置每次开机时自动运行
chkconfig vsftpd on
手工启动
service vsftpd start
可以通过 netstat -tl查看是否在监听21端口。
建新用户
# useradd –d /var/www -g ftp –s /sbin/nologin myftp
说明:
-s /sbin/nologin 是让其不能登陆系统
-d 是指定用户目录为/var/www ,这里可以替换成任何你需要的目录。
-g ftp 把用户加入到ftp组中(vsftp已创建)
myftp是ftp用户名,在配置时把这个myftp换成你的ftp用户名。
执行该命令后,如果出现这样的错误提示:
useradd: warning: the home directory already exists.
Not copying any file from skel directory into it.
这说明用户的目录已经存在(/var/www,这个可以是任何你设定的目录),不可再新建此目录,并非添加用户失败,可以忽略。
特别提醒:用useradd建立的用户,如果后面不加–s /sbin/nologin参数,建立的用户为普通系统用户,有系统登陆centos服务器的权限,在虚拟主机环境下,这非常危险。所以要在useradd命令后面加上参数–s /sbin/nologin,为centos 服务器虚拟主机添加不可以登录系统的ftp专用账号(虚拟账户)
设置密码
# passwd myftp
提示:重复输入2次
修改/var/www目录属性:(或任何自己定义的目录)
# chown -R myftp /var/www 递归把所有目录及文件的拥有者设为新添加的ftp用户
# chmod -R 755 /var/www 递归地设置拥护者全部权限,其他用户只有读取和执行权限
这样,如果网站运行时需要有写入权限,可以直接通过ftp的用户名来修改。
配置文件 /etc/vsftpd/vsftpd.conf
设置帐户只能访问自己的目录,也就是上面建用户的时候设置的目录–d /var/www
Chroot_local_user=yes
重启 vsftpd服务
# service vsftpd restart