目录
一、FTP协议
1.FTP协议简介
与大多数 Internet服务一样,FTP也是一个c/s架构。用户通过一个支持FTP协议的客户机程序,连接到在远程主机上的FTP服务器程序。用户通过客户机程序向服务器程序发出命令,服务器程序执行用户所发出的命令,并将执行的结果返回到客户机。比如说,用户发出一条命令,要求服务器向用户传送某一个文件的一份拷贝,服务器会响应这条命令,将指定文件送至用户的机器上。客户机程序代表用户接收到这个文件,将其存放在用户目录中。
2.FTP文件传输过程
FTP服务器默认使用TCP协议的20、21端口与客户端进行通信
-
20端口用于建立数据连接,并传输文件数据。
-
21端口用于建立控制连接,并传输FTP控制命令。
FTP文件传输的两种模式
主动模式
-
客户端先与服务器建立TCP连接
-
客户端先向服务器发送FTP控制指令
-
服务器主动从20号端口发送数据给客户端
编辑
被动模式
-
客户端先与服务器建立TCP连接
-
客户端先向服务器发送FTP控制指令
-
服务器先等客户端开放一个端口连接,再通过端口将数据传输给客户端
编辑
二、Linux系统配置FTP协议实现文件传输
实例1:匿名用户
1.首先安装在Linux系统中安装ftp软件,找到配置文件并备份。
/安装vsftpd
[root@localhost ~]#yum install -y vsftpd
//备份配置文件
[root@localhost ~]#cd /etc/vsftpd
[root@localhost vsftpd]#ls
ftpusers user_list vsftpd.conf vsftpd_conf_migrate.sh
[root@localhost vsftpd]#cp vsftpd.conf vsftpd.conf.bak
2.修改配置文件使匿名用户访问ftp服务(最大权限)。
关键修改字段解读
anonymous_enable=YES | 开启匿名用户访问(默认已开启) |
---|---|
write_enable=YES | 开放服务器的写权 |