您当前的位置:首页 > 电脑百科 > 网络技术 > 网络技术

FTP服务介绍

时间:2022-06-27 09:29:31  来源:  作者:影三分plus

FTP是File Transfer Protocol(文件传输协议),用来进行服务器和客户端之间文件传输的协议。非常常用的服务,应用场景主要在设备间文件共享,服务程序发布,日志文件管理等方面。这里我在ubuntu环境下安装和测试ftp的几个服务。

FTP分类

FTP

FTP是基于TCP的传输,并且FTP采用双TCP连接方式。

支持用户登录认证和目录列出。

控制连接使用TCP端口号21;用于在FTP客户端和FTP服务器之间传输FTP控制命令及命令执行信息。

数据连接使用TCP端口号不是确定的,需要根据使用的数据传输模式确定,主动模式下端口号是20,被动模式下随机。

SFTP

SFTP(SSH File Transfer Protocol)是一种基于SSH的安全的文件传输协议,SSH前面有详细介绍这里不再赘述。

TFTP

简单文件传输协议(Trivial File Transfer Protocol,TFTP)是 TCP/IP 协议族中一种简单的文件传输协议,用来在客户端与服务器之间进行文件传输。

TFTP 基于UDP协议进行文件传输。与FTP协议不同的是,TFTP 传输文件时不需要用户进行登录。它只能从文件服务器上下载或上传文件,不能列出目录。

TFTP在嵌入式系统中传输文件使用比较多,因为u-boot本身就支持这个协议传输文件,可以用来进行目标机程序下载。

Ubuntu 安装FTP服务

安装vsftps服务

ubuntu@ubuntu-virtual-machine:~$ sudo apt install vsftpd

配置文件 /etc/vsftpd.conf

这里直接粘贴一个可以使用的ftp配置文件全文内容,也是来源于网上的教程,但是我也是使用的这个配置文件,所以确保是可以使用的。

listen=NO
listen_ipv6=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
chroot_local_user=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/private/vsftpd.pem
rsa_private_key_file=/etc/ssl/private/vsftpd.pem
ssl_enable=NO
user_sub_token=$USER
local_root=/home/$USER/ftp
pasv_min_port=30000
pasv_max_port=31000
userlist_enable=YES
userlist_file=/etc/vsftpd.user_list
userlist_deny=NO

防火墙配置

前面说到了ftp服务将使用20和21两个网络端口,所以避免防火墙限制,我们设置一下防火墙。

ubuntu@ubuntu-virtual-machine:~$ sudo ufw allow 20:21/tcp
防火墙规则已更新
规则已更新(v6)
ubuntu@ubuntu-virtual-machine:~$ sudo ufw allow 30000:31000/tcp
防火墙规则已更新
规则已更新(v6)
ubuntu@ubuntu-virtual-machine:~$ sudo ufw disable
防火墙在系统启动时自动禁用
ubuntu@ubuntu-virtual-machine:~$ sudo ufw enable
此命令可能会中断目前的 ssh 连接。要继续吗 (y|n)? y
在系统启动时启用和激活防火墙
ubuntu@ubuntu-virtual-machine:~$

创建ftp登录账户

我们为ftp服务器创建单独的账户,这个对于中大型的网络环境安全是必须的,同时设置此账户只能用来访问ftp服务。

ubuntu@ubuntu-virtual-machine:~$ sudo adduser ftpuser1
正在添加用户"ftpuser1"...
正在添加新组"ftpuser1" (1002)...
正在添加新用户"ftpuser1" (1002) 到组"ftpuser1"...
创建主目录"/home/ftpuser1"...
正在从"/etc/skel"复制文件...
新的 密码: 
重新输入新的 密码: 
passwd:已成功更新密码
正在改变 ftpuser1 的用户信息
请输入新值,或直接敲回车键以使用默认值
        全名 []: ftpuser1
        房间号码 []: 
        工作电话 []: 
        家庭电话 []: 
        其它 []: 
这些信息是否正确? [Y/n] y
ubuntu@ubuntu-virtual-machine:~$ echo "ftpuser1" | sudo tee -a /etc/vsftpd.user_list
ftpuser1
ubuntu@ubuntu-virtual-machine:~$ cat /etc/vsftpd.user_list 
ftpuser1
ubuntu@ubuntu-virtual-machine:~$ sudo mkdir -p /home/ftpuser1/ftp/upload
ubuntu@ubuntu-virtual-machine:~$ sudo chmod 550 /home/ftpuser1/ftp
ubuntu@ubuntu-virtual-machine:~$ sudo chmod 750 /home/ftpuser1/ftp/upload
ubuntu@ubuntu-virtual-machine:~$ sudo chown -R ftpuser1: /home/ftpuser1/ftp

ubuntu@ubuntu-virtual-machine:~$ echo -e '#!/bin/shnecho "This account is limited to FTP access only."' | sudo tee -a  /bin/ftponly
ubuntu@ubuntu-virtual-machine:~$ sudo chmod a+x /bin/ftponly
ubuntu@ubuntu-virtual-machine:~$ echo "/bin/ftponly" | sudo tee -a /etc/shells
ubuntu@ubuntu-virtual-machine:~$ sudo usermod ftpuser1 -s /bin/ftponly

至此ubuntu下ftp服务安装完成,我们可以使用systemctl 命令看一下服务运行是否正确

ubuntu@ubuntu-virtual-machine:~$ sudo systemctl status vsftpd.service 
● vsftpd.service - vsftpd FTP server
     Loaded: loaded (/lib/systemd/system/vsftpd.service; enabled; vendor preset: enabled)
     Active: active (running) since Sun 2022-06-26 19:03:52 CST; 16min ago
    Process: 1047 ExecStartPre=/bin/mkdir -p /var/run/vsftpd/empty (code=exited, status=0/SUCC>   Main PID: 1053 (vsftpd)
      Tasks: 1 (limit: 4578)
     Memory: 772.0K
     CGroup: /system.slice/vsftpd.service
             └─1053 /usr/sbin/vsftpd /etc/vsftpd.conf

6月 26 19:03:51 ubuntu-virtual-machine systemd[1]: Starting vsftpd FTP server...
6月 26 19:03:52 ubuntu-virtual-machine systemd[1]: Started vsftpd FTP server.
lines 1-12/12 (END)

windows FTP客户端使用

我们在Windows下使用一个ftp客户端访问ubuntu的ftp测试安装是否正确,这里我使用的是filezilla的ftp客户端软件。

可以访问官网下载:FileZilla中文网 - 免费开源的FTP解决方案

这里简单介绍一下使用方法,打开filezilla软件以后,左上角有一个站点管理按钮,点击并参考下面的设置新建一个站点。

FTP服务介绍 一

ftp 站点

新建站点以后点击连接,会提示输入密码,按照创建ftp登录用户时创建的密码输入即可登录。

FTP服务介绍 一

ftp 登录

可以看到ftp登录成功,左侧显示本机Windows的文件目录,右侧显示ubuntu服务器制定的ftp目录,两边的文件夹可以相互进行文件传输,传输过程和状态将在filezilla软件下方显示。

Windows SFTP客户端使用

现在一般使用ftp服务的比较少,使用SFTP的更多,因为SFTP确实也比较方便不需要单独进行服务配置,只要支持SSH登录一般就可以使用SFTP。

filezilla也支持使用SFTP登录服务器,非常简单,知识在创建站点的时候协议选择稍微修改一下就可以了。

FTP服务介绍 一

sftp 站点

点击连接输入密码即可连接成功。

FTP服务介绍 一

sftp 登录

文末

如果没有特殊要求建议首选SFTP。

还有一个TFTP在后面继续介绍,因为这个服务涉及一些不同的命令。



Tags:FTP   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
问题:在Linux下访问windows ftp服务器时,出现中文乱码的问题。原因:这是由于中文编码不同的问题。Windows中文编码使用的是gbk,而linxu大多数版本默认的编码是utf8。解决方法:在...【详细内容】
2022-07-12  Tags: FTP  点击:(7)  评论:(0)  加入收藏
FTP是File Transfer Protocol(文件传输协议),用来进行服务器和客户端之间文件传输的协议。非常常用的服务,应用场景主要在设备间文件共享,服务程序发布,日志文件管理等方面。这里...【详细内容】
2022-06-27  Tags: FTP  点击:(37)  评论:(0)  加入收藏
操作系统:centos81、创建登录用户useradd -s /sbin/nologin zhb (所建用户不能登录系统)passwd zhb2、配置user_list文件vim /etc/vsftpd/user_list 在user_list中添加用户:zh...【详细内容】
2022-06-24  Tags: FTP  点击:(35)  评论:(0)  加入收藏
1. 安装FTP1、检测系统有没有安装ftp,执行命令:rpm -qa | grep ftp若存在用rpm命令移除后再行安装,执行命令:rpm -e vsftpd-3.0.2-9.e17.x86_642、如果没有安装,则在线安装ftp,执...【详细内容】
2022-05-19  Tags: FTP  点击:(63)  评论:(0)  加入收藏
1、安装lftpyum install -y lftp2、登录lftp user:password@ip3、查看是否登录成功 ls看下是否显示目录 示如下报错:提示Fatal Error: Certificate Verification: Not Truste...【详细内容】
2022-04-08  Tags: FTP  点击:(142)  评论:(0)  加入收藏
FTP服务器(File Transfer Protocol Server)是在互联网上提供文件存储和访问服务的计算机,它们依照FTP协议提供服务。 FTP是File Transfer Protocol(文件传输协议)。顾名思义,就...【详细内容】
2022-03-28  Tags: FTP  点击:(87)  评论:(0)  加入收藏
1、安装vsftp1.1、安装vsftpyum -y install vsftpd1.2、修改配置文件vi /etc/vsftpd/vsftpd.conf保证下面3项为YESanonymous_enable=YESanon_upload_enable=YESanon_mkdir_w...【详细内容】
2022-03-23  Tags: FTP  点击:(110)  评论:(0)  加入收藏
ftplib的源文件中,默认编码是encoding = "latin-1",而我们正常显示的编码可能是gbk,由于编码的不同,会导致查询返回来的文件名不正确。比如这样: 这就是编码问题造成的。解决方法...【详细内容】
2022-03-15  Tags: FTP  点击:(203)  评论:(0)  加入收藏
准备好软件IPOP、用ENSP模拟一下华为交换机 启动交换机 <Huawei>sysEnter system view, return user view with Ctrl+Z.[Huawei]sysname FTPClient[FTPClient]interface vla...【详细内容】
2021-12-15  Tags: FTP  点击:(152)  评论:(0)  加入收藏
内网搭建FTP服务器,外网如何能正常访问?我们通常的做法就是通过路由器进行端口映射,将内网的电脑端口映射到外网上来,从而通过访问外网的IP地址达到FTP文件传输的目标。我们使用...【详细内容】
2021-11-05  Tags: FTP  点击:(404)  评论:(0)  加入收藏
▌简易百科推荐
前言经过了多年的努力,在 6 月 6 号,IETF (互联网工程任务小组) 正式发布了 HTTP/3 的 RFC。HTTP 历史 1991 HTTP/1.1 2009 Google 设计了基于TCP的SPDY 2013 QUIC 2015 HTTP/2...【详细内容】
2022-07-15  Java机械师    Tags:HTTP/3   点击:(2)  评论:(0)  加入收藏
关于万维网的一点历史没有过去,就没有未来。要了解未来会发生什么,我们需要知道我们现在和以前拥有什么。因此,与其一下跳到web3.0的技术和示例上,我们需要了解 Web 1.0 的基本...【详细内容】
2022-07-05  木偶跳舞    Tags:Web 3.0   点击:(24)  评论:(0)  加入收藏
在刚刚拿到购买的CS10无线网关设备,应该如何开始使用呢?请看下面的几个步骤: Step1:首先我们找到产品包装内的一张带有初始WIFI名称和密码的贴纸,将它贴在产品的背面(以备未来使用...【详细内容】
2022-06-30  PLUS1软件教学频道    Tags:CS10   点击:(32)  评论:(0)  加入收藏
企业局域网内外网分离方案一些企事业单位出于安全考虑,需要做内外网分离。举例来说,需要达到如下的技术要求: 生产网、办公网、外网三网隔离。 启用网络准入,对非规定允许接入的...【详细内容】
2022-06-30  运维幼儿    Tags:内外网分离   点击:(31)  评论:(0)  加入收藏
在这个时代,我们至少有一半的重要信息都在手机上。无论是个人信息或是财务信息,还是敏感项目和工作机密,所有的这些都被我们驻留在手机上。现在越来越多的手机诈骗出现,这种第三...【详细内容】
2022-06-28  AirDroid    Tags:移动设备   点击:(26)  评论:(0)  加入收藏
最近各个方面的事情逐渐地恢复,继续写家庭网络实验室的文章。在考虑洁净和需求之后,我们就需要考虑家庭网络实验室的空间了。首先先亮一个观点&mdash;&mdash;如果你真的想在家...【详细内容】
2022-06-28  iN在    Tags:家庭网络   点击:(29)  评论:(0)  加入收藏
背景:网络穿透互联是方便我们技术人员的一种工具,通过各种协议实现您想要的网络互联。家庭组网可以参照低成本电信家庭宽带架构网络拓扑今天,我们需要在这个基础上扩展网络应...【详细内容】
2022-06-27  应用技术    Tags:局域网互联   点击:(28)  评论:(0)  加入收藏
FTP是File Transfer Protocol(文件传输协议),用来进行服务器和客户端之间文件传输的协议。非常常用的服务,应用场景主要在设备间文件共享,服务程序发布,日志文件管理等方面。这里...【详细内容】
2022-06-27  影三分plus    Tags:FTP   点击:(37)  评论:(0)  加入收藏
一、后台确认监控/录像机在局域网内的IP地址如:192.168.1.158 ,在浏览器内输入后回车,即可进入监控/录像机WEB登录界面 二、输入用户名及密码进入WEB管理界面 三、如果进...【详细内容】
2022-06-23  一往直前的冲吧    Tags:监控   点击:(41)  评论:(0)  加入收藏
人在家中坐,网速突然断。相信这样的情况大家都不陌生。那么,怎么样才能在装维小哥上门前快速自助排查解决简单问题呢?相信这份攻略能够帮到你~ 一旦出现家中断网,而且在重启光猫...【详细内容】
2022-06-22  安利小丸子    Tags:网速   点击:(26)  评论:(0)  加入收藏
站内最新
站内热门
站内头条