文件传输协议----FTP

Posted 还行少年

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了文件传输协议----FTP相关的知识,希望对你有一定的参考价值。

1.概述

FTP(File Transfer Protocol,文件传输协议)
FTP是 TCP/IP 协议组中的协议之一。FTP协议包括两个组成部分,其一为FTP服务器,其二为FTP客户端。其中FTP服务器用来存储文件,用户可以使用FTP客户端通过FTP协议访问位于FTP服务器上的资源。在开发网站的时候,通常利用FTP协议把网页或程序传到Web服务器上。此外,由于FTP传输效率非常高,在网络上传输大的文件时,一般也采用该协议

默认情况下FTP协议使用TCP端口中的 20和21这两个端口,其中20用于传输数据,21用于传输控制信息。但是,是否使用20作为传输数据的端口与FTP使用的传输模式有关,如果采用主动模式,那么数据传输端口就是20;如果采用被动模式,则具体最终使用哪个端口要服务器端和客户端协商决定

2.FTP的配置(centos7)

2.1 安装FTP服务

[root@localhost ~]# yum -y install vsftpd   //FTP服务由vsftpd软件提供

2.2 编辑配置文件

[root@localhost ~]# vi /etc/vsftpd/vsftpd.conf     //FTP的主配置文件
。。。
nonymous_enable=YES    //允许匿名登录
local_enable=YES      //允许本地用户登录
anon_upload_enable=YES   //允许上传数据
chroot_local_user=YES    //绑定本地的家目录
allow_writeable_chroot=YES   //允许写的权限,一般是手动添加
。。。

2.3 启动服务,监听端口

[root@localhost ~]# systemctl start vsftpd
[root@localhost ~]# netstat -anpt | grep vsftpd   
tcp6       0      0 :::21                   :::*                    LISTEN      19167/vsftpd        

2.4 测试FTP服务器功能

2.4.1 匿名

[C:\\~]$ ftp 192.168.30.3   //匿名登录FTP


Connecting to 192.168.30.3:21...
Connection established.
To escape to local shell, press 'Ctrl+Alt+]'.
220 (vsFTPd 3.0.2)
Name (192.168.30.3:Lenovo): ftp
331 Please specify the password.
Password: 
230 Login successful.
ftp:/> 

ftp:/>get 1   
227 Entering Passive Mode (192,168,30,3,218,238).
550 Failed to open file.   下载成功,但无法打开文件
ftp:/> put 1.txt
227 Entering Passive Mode (192,168,30,3,101,114).
553 Could not create file.   //无权限
ftp:/> ls
227 Entering Passive Mode (192,168,30,3,221,83).
150 Here comes the directory listing.
pub
226 Directory send OK.
ftp:/> cd pub   //切换目录
250 Directory successfully changed.
ftp:/pub> put 1.txt
227 Entering Passive Mode (192,168,30,3,122,72).
150 Ok to send data.
1.txt: 0 字节 sent in 0.001 sec (0 bytes, 0 字节/sec).
226 Transfer complete.   //上传成功

2.4.2 普通用户

Connecting to 192.168.30.3:21...
Connection established.
To escape to local shell, press 'Ctrl+Alt+]'.
220 (vsFTPd 3.0.2)
Name (192.168.30.3:Lenovo): zhangsan   //张三登录,上传下载文件夹
331 Please specify the password.
Password: 
230 Login successful.
ftp:/home/zhangsan> mkdir 123
257 "/home/zhangsan/123" created

未绑定家目录,可随意切换目录
在这里插入图片描述

ftp:/> cd /     //绑定家目录
250 Directory successfully changed.
ftp:/> ls
227 Entering Passive Mode (192,168,30,3,37,175).
150 Here comes the directory listing.
123
226 Directory send OK.
ftp:/> cd /root
550 Failed to change directory.
ftp:/> 

2.4.3 ROOT

[root@localhost ~]# vi /etc/vsftpd/ftpusers  //注释root    (优先级高)

# Users that are not allowed to login via ftp
#root
bin
[root@localhost ~]# vi /etc/vsftpd/user_list   //注释root
#root
bin
Connecting to 192.168.30.3:21...    
Connection established.
To escape to local shell, press 'Ctrl+Alt+]'.
220 (vsFTPd 3.0.2)
Name (192.168.30.3:Lenovo): root    //ROOT登录成功
331 Please specify the password.
Password: 
230 Login successful.
ftp:/> 

以上是关于文件传输协议----FTP的主要内容,如果未能解决你的问题,请参考以下文章

FTP 文件传输协议

FTP文件传输协议

文件传输协议

文件传输协议----FTP

文件传输协议(FTP)

文件传输协议FTP