ftp是什么意思呢 什么是ftp
2022-06-08 15:11:48 阅读(230)
相对来说很少人会在工作中接触到FTP这一块,可能计算机相关的工作接触的很多,下面万商云集小编就给大家来详细介绍一下 ftp是什么意思呢 什么是ftp这一块的内容,希望能帮助到大家。
Ftp 介绍
文件传输协议(File Transfer Protocol,FTP),基于该协议FTP客户端与服务端可以实现共享文件、上传文件、下载文件。 FTP 基于TCP协议生成一个虚拟的连接,主要用于控制FTP连接信息,同时再生成一个单独的TCP连接用于FTP数据传输。用户可以通过客户端向FTP服务器端上传、下载、删除文件,FTP服务器端可以同时提供给多人共享使用。
FTP服务是Client/Server(简称C/S)模式,基于FTP协议实现FTP文件对外共享及传输的软件称之为FTP服务器源端,客户端程序基于FTP协议,则称之为FTP客户端,FTP客户端可以向FTP服务器上传、下载文件。
FTP Server 作用:提供文件共享服务,实现上传下载 端口: 21号,建立tcp连接 默认端口 20号:传输数据
一、FTP基础
软件包: vsftpd FTP端口: 控制端口 command 21/tcp 配置文件: /etc/vsftpd/vsftpd.conf
ftp主动模式
ftp主动模式:客户端开启一个端口N(>1023)向服务端的21端口,建立连接,同时开启一个N+1,告诉服务端,我监听的是N+1端口,服务端接到请求之后,用自己的20端口连接到客户端的N+1端口,进行传输 21端口建立连接 20端口传输数据
ftp被动模式
ftp被动模式:客户端同时开启两个端口(1024,1025),一个端口(1024)跟服务端的21端口建立连接,并请求,大哥,我连上了,你再开一个端口呗。服务端接到请求之后,随机会开启一个端口(1027)并告诉客户端我开启的是1027端口,客户端用另一个端口(1025)与服务端的(1027)端口进行连接,传输数据
Vsftp 服务器简介
非常安全的FTP服务进程(Very Secure FTP daemon,Vsftpd),Vsftpd在Unix/Linux发行版中最主流的FTP服务器程序,优点小巧轻快,安全易用、稳定高效、满足企业跨部门、多用户的使用(1000用户)等。
二、vsftpd配置
FTP Server(服务端) 实验环境--准备两台机器 关
FTP是用来传送文件的协议。使用FTP实现远程文件传输的同时,还可以保证数据传输的可靠性和高效性。
FTP的应用
在企业网络中部署一台FTP服务器,将网络设备配置为FTP客户端,则可以使用FTP来备份或更新VRP文件和配置文件。 也可以把网络设备配置为FTP服务器,将设备的日志文件保存到某台主机上方便查看。
FTP传输模式
FTP传输数据时支持两种传输模式:ASCII模式和二进制模式。
ASCII模式用于传输文本。 发送端的字符在发送前被转换成ASCII码格式之后进行传输,接收端收到之后再将其转换成字符。 二进制模式常用于发送图片文件和程序文件。 发送端在发送这些文件时无需转换格式,即可传输。
FTP传输文件过程
使用FTP进行文件传输时,会使用两个TCP连接。 第一个连接是FTP客户端和FTP服务器间的控制连接。 FTP服务器开启21号端口,等待FTP客户端发送连接请求。
第二个连接是FTP客户端和FTP服务器间的数据连接。 服务器使用TCP的20号端口与客户端建立数据连接。 通常情况下,服务器主动建立或中断数据连接。
FTP的配置
执行ftp server enable命令使能FTP功能。
执行set default ftp-directory命令设置FTP用户。
在配置FTP服务器时,可以使用AAA为每个用户分别配置登录账号和访问权限。
aaa命令用来进入AAA视图。
local-user user-name { access-limit max-number | ftpdirectory directory | idle-timeout minutes [ seconds ] | password cipher password [ opt ]| privilege level level | state {active | block } } *命令用来创建本地用户,并配置本地用户的各项参数。
user-name指定用户名。
local-user huawei service-type ftp命令用来配置本地用户的接入类型为ftp。
ftp-directory指定FTP用户可访问的目录。 如果丌配置FTP用户可访问的目录,则FTP用户无法登录设备。
access-limit指定用户名可建立的最大连接数目。
idle-timeout指定用户的闲置超时时间。
privilege level指定用户的优先级。
ftp客户端连接ftp服务器
ftp命令用来不远程FTP服务器建立控制连接,并进入FTP客户端视图。
binary命令用来在设备作为FTP客户端时设置文件传输方式为Binary模式,又称二进制模式。缺省情况下,文件传输方式为ASCII模式。get命令用来从远程FTP服务器下载文件并保存在本地。
闭防火墙和selinux #systemctl stop firewalld #systemctl disable firewalld #setenforce 0 ========================================= ftp-server 192.168.246.160 client 192.168.246.161 ========================================== [root@ftp-server ~]# yum install -y vsftpd [root@ftp-server ~]# systemctl start vsftpd FTP默认共享目录:/var/ftp [root@ftp-server ~]# touch /var/ftp/pub/test.txt #创建文件到共享目录 [root@ftp-server ~]# systemctl enable vsftpd [root@ftp-server ~]# cd /var/ftp/ [root@ftp-server ftp]# ls pub [root@ftp-server ftp]# chown ftp.ftp pub/ -R #修改根目录的属主与属组 [root@ftp-server ftp]# ll total 0 drwxr-xr-x. 2 ftp ftp 22 Aug 3 03:15 pub
重点:改变根目录的属主,如果不改变的话,只能访问,其他权限不能生效。因为我们是以ftp用户的身份访问的,而pub默认的属主属组是root。
注意:
- 修改完配置之后需要重启完服务才能生效- 还需要从新从客户端登陆,否则修改后的配置看不到效果。
编辑配置文件
[root@ftp-server ~]# vi /etc/vsftpd/vsftpd.conf ----找到29行将下面的注释取消 34 anon_other_write_enable=YES
[root@ftp-server ~]# systemctl restart vsftpd FTP Clinet(客户端) 关闭防火墙和selinux [root@client ~]# yum -y install lftp #安装客户端 get命令(下载,首先要开启下载功能) [root@client ~]# lftp 192.168.246.160 lftp 192.168.246.160:~> ls drwxr-xr-x 2 0 0 6 Oct 30 2018 pub lftp 192.168.246.160:/> cd pub/ lftp 192.168.246.160:/pub> ls -rw-r--r-- 1 14 50 0 Aug 02 19:14 test.txt lftp 192.168.246.160:/pub> get test.txt #下载 lftp 192.168.246.160:/pub> exit [root@client ~]# ls #会下载到当前目录 anaconda-ks.cfg test.txt [root@client ~]# lftp 192.168.246.160 lftp 192.168.246.160:/pub> mkdir dir #也可以创建目录 mkdir ok, `dir' created put命令(上传命令,上传之前请在服务端进行配置,将上传功能打开) [root@client ~]# touch upload.txt #创建测试文件 [root@client ~]# mkdir /test/ #创建测试目录 [root@client ~]# touch /test/test1.txt #在测试目录下面创建测试文件 [root@client ~]# lftp 192.168.246.160 lftp 192.168.246.160:~> cd pub/ lftp 192.168.246.160:/pub> put /root/upload.txt #上传文件 lftp 192.168.246.160:/pub> ls -rw------- 1 14 50 0 Nov 16 12:14 upload.txt drwx------ 2 14 50 6 Aug 02 19:17 dir lftp 192.168.246.160:/pub> mirror -R /test/ #上传目录以及目录中的子文件 Total: 1 directory, 1 file, 0 symlinks New: 1 file, 0 symlinks lftp 192.168.246.160:/pub> ls drwx------ 2 14 50 23 Nov 16 12:18 test -rw------- 1 14 50 0 Nov 16 12:14 upload.txt mirror 下载目录
上面就是关于ftp是什么意思呢 什么是ftp的全部内容介绍,希望上面的内容能帮助到大家了解FTP的相关内容。
未经允许不得转载,或转载时需注明出处