首页
学习
活动
专区
圈层
工具
发布

VFP用myfll函数连接FTP直接卡死,10分种教你解决本质

最近有几位狐友一直提问为什么FTP会卡死,换个环境FTP就用不了,虽然在社群里别的狐友解决了问题,但很多人还是一知半解,不知道是怎么事,那今天猫猫来教大家,5分钟搞清FTP的本质。...FTP的模式问题 FTP可是分为主动模式,和被动模式,为什么狐友们会卡死,是因为模式没有搞清楚。...如果主动模式实在用不了,那么就来用这个被动模式好了。...第一步,客户端用端口N主动连接服务器端口21,并发送PASV命令,告诉服务器用“被动模式”,连接建立成功后,服务器开启一个动态数据端口P(注:动态端口是随机的),通过PORT命令将P端口告诉客户端。...VFP访问FTP服务器 木瓜的myfll对FTP支持还是很完整的,主被动模式用FtpSetPasv函数来设定。 关于FTP的未来 谷歌早前曾表示,这是一种未加密的协议,并且使用人数正在逐渐减少。

1.7K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    FileZilla Client 登录成功却传不了文件,问题在 FTP 的双连接

    这个现象看着矛盾,其实是 FTP 协议本身的结构造成的——它用了两条独立的连接。FTP 有两条连接这是理解所有 FTP 问题的起点。...在现在的网络环境下,这种模式基本用不了。被动模式被动模式反过来。客户端发给服务器一个 PASV 命令,服务器回一个临时端口,然后由客户端去连那个端口。连接方向变成了"客户端 → 服务器"。...还有一种情况:NAT 导致 IP 不对如果服务器在内网,通过路由器映射到公网——服务器在回应 PASV 命令时,可能把自己的内网 IP 告诉客户端。客户端拿着一个内网地址去连,当然连不上。...顺带说个同样高频的问题:中文乱码FTP 还有个老问题——文件名乱码。跟压缩包乱码是同一个根源:编码不一致。老的 FTP 服务器可能用 GBK 存文件名,而客户端按别的编码去读。...FTP 之外的选择说到这,有件事值得提。FTP 是明文协议。登录的用户名、密码、以及传输的文件内容,全程不加密。在公网上用,等于把这些信息摊开给人看。

    21610

    CentOS 6.4 下安装vsftpd

    概述: vsftpd是Linux下比较著名的FTP服务器,搭建FTP服务器当然首选这个。 本文介绍了在CentOS 6.4下安装vsftpd、配置虚拟用户登录FTP的过程。...=1 //设置ftp可以使用home目录 sersebool -P allow_ftpd_full_access=1 //设置ftp用户可以有所有权限 设置FTP根目录权限 mkdir /ftp.../www //创建目录 chmod R 755 /ftp chmod R 777 /ftp/www 最新的vsftpd要求对主目录不能有写的权限所以ftp为755,主目录下面的子目录再设置777权限...配置PASV模式 vsftpd默认没有开启PASV模式,现在FTP只能通过PORT模式连接,要开启PASV默认需要通过下面的配置 打开/etc/vsftpd/vsftpd.conf,在末尾添加 pasv_enable...=YES //开启PASV模式 pasv_min_port=40000 //最小端口号 pasv_max_port=40080 //最大端口号 pasv_promiscuous=YES 在防火墙配置内开启

    1.3K10

    FTP连接时出现“227 Entering Passive Mode

    ,原来FTP有两种工作模式,PORT方式和PASV方式,中文意思为主动式和被动式 ,详细介绍如下: 主动 FTP : 命令连接:客户端 >1024 端口 → 服务器 21 端口 数据连接...PASV(被动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。...当需要传送数据时, 服务器在命令链路上用PASV命令告诉客户端:“我打开了X端口,你过来连接我”。于是客户端向服务器的X端口发送连接请求,建立一条数据链 路来传送数据。...二.操作 由于我的本地FTP服务器在内网,只是从外网映射了两个端口(20,21),所以无法使用PASV方式,解决此问题的办法也很简单,关闭客户端的PASV方式,强制其用PORT方式访问服务器,登录FTP...服务器后用passive命令关闭客户端的PASV方式,如下: ftp> passive Passive mode off. ftp> passive (再次运行命令可打开) Passive mode on

    8.1K20

    FTP的两种传输模式的坑

    通过看出现问题的二进制文件,发现卡在了一个叫做putfile的函数上,程序用的FTP底层库,有这段的逻辑,意思是在执行FTP的put文件指令时,会调用pasv函数,他会执行PASV指令, int pasv...t > 0) close(t);         t = pasv(ip); ... } 这时,问题有些豁然开朗了,究其原因,如果了解FTP的朋友,就可能猜到,他可能和FTP的传输模式有关。...被动模式 为了解决服务器主动发起到客户端连接会被阻止的问题,另一种更完善的工作模式出现了,他就是FTP的被动模式,缩写作PASV,他工作的前提是客户端明确告知FTP服务器他使用被动模式。...因此,从现象以及代码,服务B的卡顿,确实可能和被动模式有关,通过服务B进行FTP传输,首先设置了PASV,然后hang住,说明可能当前的环境,不支持被动模式。...另一个角度,通过命令行验证,在客户端服务器,执行ftp命令,不输入任何参数的情况下,put文件正常,但是当执行了pasv,此时命令行hang了。

    3.4K10

    CentOS7系统中配置ftp服务具体方法

    FTP是一种上传和下载用的软件。用户可以通过它把自己的PC机与运行FTP协议的服务器相连,访问服务器上的程序和信息,本篇文章重点为大家分享一下CentOS7系统中配置ftp服务具体方法。...5.配置vsftpd本地用户模式(就是配置用户名、密码、修改权限) useradd ftptest passwd ftptest mkdir /var/ftp/test # 创建一个供ftp服务使用的文件目录...#修改下列参数的值 anonymous_enable=NO #禁止匿名登录FTP服务器 local_enable=YES #允许本地用户登录FTP服务器 listen=YES #监听IPv4 sockets...chroot_list_enable=YES chroot_list_file=/etc/vsftpd/chroot_list allow_writeable_chroot=YES pasv_enable...=YES pasv_min_port=50000 pasv_max_port=51000 pasv_address=49.235.71.50 7.创建例外用户文件 vim /etc/vsftpd/

    4.9K20

    手把手教你搭建FTP服务

    简单高效的文件传输方式 FTP是比较传统的文件传输协议 File Transfer Protocol 具备简单、高效、通用性强的特点 几十年下来 基本上任何环境都支持FTP 今天教大家手把手搭建一套环境...yum install vsftpd # 会安装到 /etc/vsftpd/ 目录 这样主程序已经安装好了 配置服务端 需要对模式、目录等做一下配置 首先需要科普一下 两种传输模式:被动pasv和主动...# 被动模式 port_enable=NO pasv_enable=YES pasv_promiscuous=YES # 被动端口的min-max可以自定义 pasv_min_port=9000...pasv_max_port=9100 在防火墙中 开启我们所配置的端口段 firewall-cmd --zone=public --add-port=21/tcp --permanent firewall-cmd...:开启ftp模式 open:输入服务端的 ip 端口,默认21端口 ls:查看服务端文件 put:上传文件 get:下载文件 quit:退出ftp模式 那我们开始尝试使用 # 连接 ftp

    76310

    centos vsftpd修改端口和主动被动模式

    一、简介   FTP支持两种模式,一种方式叫做Standard (也就是 PORT方式,主动方式),一种是 Passive (也就是PASV,被动方式)。...针对FTP服务器前面的防火墙来说,必须允许以下通讯才能支持主动方式FTP:任何端口到FTP服务器的21端口 (客户端初始化的连接到FTP服务器);FTP服务器的21端口到大于1023的端口(服务器响应客户端的控制端口...2:FTP PAVS(主动)模式 为了解决服务器发起到客户的连接的问题,人们开发了一种不同的FTP连接方式。这就是所谓的被动方式,或者叫做PASV,当客户端通知服务器它处于被动模式时才启用。...第一个端口连接服务器的21端口,但与主动方式的FTP不同,客户端不会提交PORT命令并允许服务器来回连它的数据端口,而是提交PASV命令。...=10021     pasv_min_port=           pasv_max_port=                  2、然后更改防火策略 #vim /etc/sysconfig/iptables

    5.1K30

    在iptables防火墙下开启vsftpd的端口

    在开启vsftpd端口后发现用客户端工具能登陆,但无法浏览文件和新建文件.此时看了一下ftp的协议,发现ftp有主动模式和被动模式.在服务端开21端口是让客户端进来,并没有出去的端口,还在服务端开启出去的端口...,最后还要添加ftp相应的模块,整个操作有点复杂,今天写下来对自己以后加深印像。...匿名用户名可以上传文件 anon_mkdir_write_enable=YES        --匿名用户可以创建文件 anon_other_write_enable=YES        --匿名用户可以重命名文件 pasv_enable...=YES                        --开启被动模式 pasv_min_port=30000                    --被动模式最小端口 pasv_max_port...ip_nat_ftp    --加载ftp模块 vim /etc/rc.local /sbin/modprobe ip_conntract                --开机加载模块 /sbin

    1.2K20
    领券