检查是否已安装ftp:
1、用root 进入系统
2、使用命令 rpm -qa|grep vsftpd 查看系统是否安装了ftp,若安装了vsftp,使用这个命令会在屏幕上显示vsftpd的版本
3、使用命令rpm -e vsftpd 即可卸载ftp
4、再使用rpm -qa|grep vsftpd 查看系统是否已删除ftp,若删除成功,屏幕上显示vsftpd的版本
一:安装vsftpd
查看是否已经安装vsftpd
[root@localhost ~]# rpm -qa | grep vsftpd
如果没有,就安装,并设置开机启动
[root@localhost ~]# yum -y install vsftpd
[root@localhost ~]# chkconfig vsftpd on
ftp服务的相关命令(其实所有的服务都是这三个命令):
启动: service vsftpd start
停止: service vsftpd stop
重启: service vsftpd restart
二、部署ftp服务器
上面只是下载安装了ftp服务,下面是需要配置一下,才能正常使用。
1、修改ftp服务器的配置文件,文件的默认位置是/etc/vsftpd/vsftpd.conf
[root@localhost ~]# vim /etc/vsftpd/vsftpd.conf
找到下面的三段,这三段是在一起的哦
#chroot_list_enable=YES
# (default follows)
#chroot_list_file=/etc/vsftpd.chroot_list
然后将上下两行的#号去掉,变成
chroot_list_enable=YES
# (default follows)
chroot_list_file=/etc/vsftpd.chroot_list
2、增加ftp用户
使用useradd 命令,增加用户ftpuser,当然你可以将ftpuser改成其他你想要的,指向目录/home/testftp/ftpuser,禁止登录SSH权限
[root@localhost ~]# useradd -d /home/testftp/ftpuser -g ftp -s /sbin/nologin ftpuser
3、设置该用户的口令密码
[root@localhost ~]# passwd ftpuser
4、编辑文件chroot_list:
[root@localhost ~]# vim /etc/vsftpd/chroot_list
内容为ftp用户名,每个用户占一行,如:
peter
john
5、重新启动vsftpd
[root@localhost ~]# service vsftpd restart
三、配置防火墙
打开防火墙的配置文件,路径为/etc/sysconfig/iptables
[root@localhost ~]# vim /etc/sysconfig/iptables
然后在中间增加下面一行代码
-A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
保存和关闭文件,然后重启防火墙
[root@localhost ~]# service iptables restart
到此,应该是可以了,若软件测试连接过程中,在用户验证的时候出现了错误503,应该是selinux设置的问题:可以用下面的命令检查:
[root@localhost ~]# getsebool -a |grep ftp
这是selinux的问题,我们只要打开ftp_he_dir的值开启为on:,allow_ftpd_full_access也一同开启即可。
[root@localhost ~]# setsebool -P ftp_home_dir 1
[root@localhost ~]# setsebool -P allow_ftpd_full_access 1
到此,应该解决问题了。
或者直接关闭selinu,因为修改selinu后需要重启服务,因为服务器不可以重启所以执行"setenforce 0"这个命令,临时修改selinux的策略,无需重启!
关闭SELinux:
1、临时关闭(不用重启机器):
setenforce 0 ##设置SELinux 成为permissive模式
##setenforce 1 设置SELinux 成为enforcing模式
2、修改配置文件需要重启机器:
修改/etc/selinux/config 文件
将SELINUX=enforcing改为SELINUX=disabled
重启机器即可
性能优化
vi /etc/vsftpd/vsftpd.conf
在vsftpd.conf文件中加入:reverse_lookup_enable=NO
保存后重新启动vsftpd: service vsftpd restart
搞定 30s 变成了 3s
四、日志监控
xferlog_file=/data/log/xferlog
vsftpd_log_file=/data/log/vsftpd.log
配置文件
vim /etc/vsftpd/vsftpd.conf
xferlog_enable=YES
dual_log_enable=YES
xferlog_file=/data/log/xferlog
vsftpd_log_file=/data/log/vsftpd.log
查看日志
[root@localhost ftp]# vim /etc/vsftpd/vsftpd.conf
[root@localhost ftp]# tail -f /data/log/xferlog
Sun Oct 21 11:20:43 2018 1 172.51.22.29 44032 /home/sdd/ftp/newitsm/~business_info_20181021110952.xls b _ i r newitsm ftp 0 * c
Sun Oct 21 11:20:45 2018 1 172.51.22.29 136192 /home/sdd/ftp/newitsm/~task_info_20181021110952.xls b _ i r newitsm ftp 0 * c
Sun Oct 21 11:20:45 2018 1 172.51.22.29 5120 /home/sdd/ftp/newitsm/~feedbak_info_20181021110952.xls b _ i r newitsm ftp 0 * c
[root@localhost ftp]# tail -f /data/log/vsftpd.log
Sun Oct 21 11:19:47 2018 [pid 16964] CONNECT: Client "10.18.204.25"
Sun Oct 21 11:19:48 2018 [pid 16963] [newitsm] OK LOGIN: Client "10.18.204.25"
Sun Oct 21 11:20:42 2018 [pid 16982] CONNECT: Client "172.51.22.29"
Sun Oct 21 11:20:42 2018 [pid 16981] [newitsm] OK LOGIN: Client "172.51.22.29"
Sun Oct 21 11:20:43 2018 [pid 16983] [newitsm] OK UPLOAD: Client "172.51.22.29", "/home/sdd/ftp/newitsm/~business_info_20181021110952.xls", 44032 bytes, 17472.57Kbyte/sec
Sun Oct 21 11:20:43 2018 [pid 16983] [newitsm] OK RENAME: Client "172.51.22.29", "/home/sdd/ftp/newitsm/~business_info_20181021110952.xls /home/sdd/ftp/newitsm/business_info_20181021110952.xls"
Sun Oct 21 11:20:45 2018 [pid 16983] [newitsm] OK UPLOAD: Client "172.51.22.29", "/home/sdd/ftp/newitsm/~task_info_20181021110952.xls", 136192 bytes, 24164.24Kbyte/sec
Sun Oct 21 11:20:45 2018 [pid 16983] [newitsm] OK RENAME: Client "172.51.22.29", "/home/sdd/ftp/newitsm/~task_info_20181021110952.xls /home/sdd/ftp/newitsm/task_info_20181021110952.xls"
Sun Oct 21 11:20:45 2018 [pid 16983] [newitsm] OK UPLOAD: Client "172.51.22.29", "/home/sdd/ftp/newitsm/~feedbak_info_20181021110952.xls", 5120 bytes, 4101.72Kbyte/sec
Sun Oct 21 11:20:45 2018 [pid 16983] [newitsm] OK RENAME: Client "172.51.22.29", "/home/sdd/ftp/newitsm/~feedbak_info_20181021110952.xls /home/sdd/ftp/newitsm/feedbak_info_20181021110952.xls"