一、FTP服务器介绍
1.1 FTP简介
FTP是 File Transfer Protocol (文件传输协议)的英文简称,而中文简称为“文传协议”。用于Internet 上的控制文件的双向传输。同时,它也是一个应用程序( Application )。基于不同的操作系统有不同的 FTP 应用程序,而所有这些应用程序都遵守同一种协议以传输文件。在FTP 的使用当中,用户经常遇到两个概念: 下载 Download )和 上传 Upload )。"下载 文件就是从远程主机拷贝文件至自己的计算机上; 上传 文件就是将文件从自己的计算机 中拷贝至远程主机上。用 Internet 语言来说,用户可通过客户机程序向(从)远程主机上传(下载)文件。
1.2 VSFTPD 简介
vsftpd 是“ very secure FTP daemon ”的缩写,安全性是它的一个最大的特点。 vsftpd是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 Linux 、 BSD 、 Solaris 、HP UNIX 等系统上面,是一个完全免费的、开放源代码的 ftp 服务器软件,支持很多其他的FTP 服务器所不支持的特征。
二、安装vsftpd
我的配置:
Linux:CentOS 8.2
2.1 通过Xshell连接上Linux服务器。
2.2 检查Linux服务器上是否安装了vsftpd服务
通过rpm -qa |grep vsftpd 指令检测
[root@iZ2zeiomrd9anhln9kha37Z /]# rpm -qa |grep vsftpd
vsftpd-3.0.3-34.el8.x86_64
2.3 如果没有安装,则进行安装
yum -y install vsftpd
2.4 安装后修改vsftpd配置
vi /etc/vsftpd/vsftpd.conf
打开vsftpd.conf配置文件,按i进入编辑模式
将anonymous_enable=YES,修改为 anonymous_enable=NO
修改完成后,按Esc退出编辑模式,然后输入命令(:wq)进行保存退出。注意冒号为英文状态下。
2.5 启动vsftpd服务
systemctl start vsftpd.service 启动
另外其它一些指令(改配置文件后一定要重启服务)
systemctl stop vsftpd.service 停止
systemctl restart vsftpd.service 重启
systemctl status vsftpd.service 查看服务状态
2.6 为ftp创建用户
ftp用户名:ftptest,密码ftptest,并将用户绑定到 /var/ftp/ftptest 用户空间(首先确定此路径文件夹存在)
useradd -d /var/ftp/ftptest ftptest
设置密码:
passwd ftptest
输入密码,Linux下输入密码不显示
2.7 开启Linux防火墙21端口
我用的是阿里云云服务,所以在控制台设置下,虚拟机的话自行百度。
2.8 在文件管理器测试是否成功
在文件管理区地址栏输入 ftp://ip
右键登录 输入账号和密码
然后登陆成功就可以把电脑上的文件复制到里面去看成不成功。
注:
1.登录不成功可能因为电脑配置问题
w10电脑左下角搜索框搜索Internet选项,然后点高级,在设置框里找到启动FTP文件夹视图,打勾,确定保存。
2.复制不到FTP文件夹视图里的问题
更新一下配置的用户文件的权限问题
chmod o+w /var/ftp/ftptest
三、其它问题
待更新