1.卸载vsftpd
sudo yum remove vsfftpdhtml
2.安装vsftpd
yum -y install vsftpdlinux
3.在/usr/local/devtools目录建立ftpfile文件夹
[root@xupan001 devtools]# pwd
/usr/local/devtools
[root@xupan001 devtools]# mkdir ftpfileshell
4.建立用户,只对ftpfile有权限,而且没有登录权限
[root@xupan001 ~]# cd /usr/local/devtools/ftpfile/
[root@xupan001 ftpfile]# ll
total 0
[root@xupan001 ftpfile]# sudo useradd ftpuser -d /usr/local/devtools/ftpfile/ -s /sbin/nologin vim
-d:指定用户登入时的主目录,替换系统默认值/home/<用户名>
-s:指定用户登入后所使用的shell。默认值为/bin/bash。bash
对/sbin/nologin的理解
系统帐号的shell使用 /sbin/nologin ,此时没法登录系统,即便给了密码也不行。 所谓“没法登录”指的仅是这个用户没法使用bash或其余shell来登录系统而已,并非说这个帐号就没法使用系统资源。rest
5.赋值权限
sudo chown -R ftpuser.ftpuser /usr/local/devtools/ftpfile/htm
6.查看权限
[root@xupan001 devtools]# ll | grep ftpfile
drwxr-xr-x 2 ftpuser ftpuser 4096 Jun 1 12:30 ftpfile
用户名和用户组都是ftpusertoken
7.重置密码
[root@xupan001 devtools]# passwd ftpuser
Changing password for user ftpuser.
New password:
BAD PASSWORD: it is based on a dictionary word
BAD PASSWORD: is too simple
Retype new password:
passwd: all authentication tokens updated successfullyip
8.建立文件
[root@xupan001 ftpfile]# vim index.htmlci
9.添加内容
[root@xupan001 ftpfile]# vim index.html
here is ftpfile
/usr/local/devtools/ftpfile/index.html
10.配置vsftpd
[root@xupan001 ftpfile]# whereis vsftpd
vsftpd: /usr/sbin/vsftpd /etc/vsftpd /usr/share/man/man8/vsftpd.8.gz
11.编辑配置文件
vim /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
ftpd_banner=Welcome to xpshop FTP service.
local_root=/usr/local/devtools/ftpfile
#anno_root=/usr/local/devtools/ftpfile
use_localtime=yes
chroot_local_user=NO
chroot_list_enable=YES
# (default follows)
chroot_list_file=/etc/vsftpd/chroot_lis
pasv_min_port=61001
pasv_max_port=62000
12.添加文件chroot_list,并编辑文件添加f t pu se r
vim /etc/vsftpd/chroot_list
13.防火墙设置
vim /etc/sysconfig/iptables
#vsftpd
-A INPUT -p TCP --dport 61001:62000 -j ACCEPT
-A OUTPUT -p TCP --sport 61001:62000 -j ACCEPT
-A INPUT -p TCP --dport 21 -j ACCEPT
-A OUTPUT -p TCP --dport 21 -j ACCEPT
-A INPUT -p TCP --dport 20 -j ACCEPT
-A OUTPUT -p TCP --dport 20 -j ACCEPT
13.重启防火墙和vsftpd
[root@xupan001 ~]# service iptables restart
iptables: Applying firewall rules: [ OK ]
[root@xupan001 ~]# service vsftpd restart
Shutting down vsftpd: [FAILED]
Starting vsftpd for vsftpd: [ OK ]
14.修改vim /etc/selinux/config
#SELINUX=enforcing
SELINUX=disabled
# SELINUXTYPE= can take one of these two values:
# targeted - Targeted processes are protected,
# mls - Multi Level Security protection.
SELINUXTYPE=targeted
15.使之生效 sudo setenforce 0