【问题现象】:通过rpm安装好lftp后,执行lftp huangmr:huangmr@192.168.107.132无法连接(lftp huangmr@192.168.107.132:~> ls

`ls' at 0 [Delaying before reconnect: 175]或者是一直处于connecting...);通过sftp huangmr@192.168.107.132却可以连接。
【问题原因】:
    192.168.107.132上ftp服务异常(应该是没有启动ftp服务),使用上述命令不加端口默认使用21端口(ftp协议);按照网上的lftp使用方法“lftp
用户名:密码@ftp地址:传送端口(默认21)”加上22或115端口都不行,后来查到lftp与sftp结合使用,并不是直接用sftp端口就行了,需要使用lftp -u huangmr,huangmr sftp://192.168.107.132:22这种方式。
【排查过程】:
    昨天解决这个问题提的时候,进行了以下方面的尝试排查:
        1、是否网络断连:无法ping通远程ftp服务器,但是通过sftp是可以访问的,就证明,至少网络方面是打通了的,只是端口或服务可能有限制;

2、是否本地及远程ftp服务器的ftp服务没起:检查了本地vsftpd服务是起着的,没法连接远程ftp服务器,就没有检查其ftp服务,认为既然sftp是可用的那么ftp也没问题(这种想法是错误的);

        3、是否本地root用户登录导致远端ftp服务器拒绝:使用普通用户dop等执行lftp huangmr:huangmr@192.168.107.132也是不行的;

    晚上回去后验证:

        4、是否使用的rpm包问题:在虚拟机上(两台虚拟机上都已启动了vsftpd服务)使用相同rpm包安装,发现连接正常(至少能证明rpm包以及安装方法是可以用的,从而怀疑现网服务与虚拟机环境不一致);
        5、是否防火墙、SELinux等问题导致:在虚拟机A上启动SELinux后(vsftpd服务是起着的),从虚拟机A连接虚拟机B没问题,而如果B也开着SELinux,连接失败(仅验证对端启动SELinux会对lftp连接有影响,但是还是无法证明现网的问题是该问题导致,没法连接对端服务器关掉SELinux尝试!!!)。
    今天上午的排查:
        1、通过ftp 192.168.107.132尝试连接ftp,发现ftp超时:估计是对端ftp服务没启动;
        2、查询lftp使用方法,如果不加端口,默认21端口,即使用ftp协议,通过上步排查,ftp服务实际上是没启动的,因此不再使用ftp协议方式连接。
            使用lftp huangmr:huangmr@192.168.107.132:22也是无法连接,报FEAT negotiation...,百度上也没有找到什么有效方法。
        3、既然只能使用sftp方式,又百度lftp sftp找到连接方式lftp -u huangmr,huangmr sftp://192.168.107.132:22,基本满足一线需求(通过sftp连接,在连接时能够直接输入密码,而非通过交互式输入密码连接ftp)。

【过程分析】:
        1、问题排查过程中,有些验证方式实际上是不能充分证明或排除某问题,比如“认为既然sftp是可用的那么ftp也没问题”;
        2、之所以出现不能充分证明的情况,还是由于自身对知识了解不充分,对ftp只是一知半解。
【想法】:
    1、以后遇到问题时,首先列出可能的原因,先从最可能的原因入手,如果一知半解要先查资料,以找到充分证明或排除原因的方法,而不能想当然;
    2、列出来可能原因以及证明方法,而不是脑袋一热就去搞,太乱,也浪费时间;
    3、求助别人,有时候时间一久,脑袋还是容易发热,但是别人的一句话有时候真的很有用。

lftp连接异常情况分析过程的更多相关文章

  1. 一则线上MySql连接异常的排查过程

    Mysql作为一个常用数据库,在互联网系统应用很多.有些故障是其自身的bug,有些则不是,这里以前段时间遇到的问题举例. 问题 当时遇到的症状是这样的,我们的应用在线上测试环境,JMeter测试过程中 ...

  2. JQuery阻止冒泡事件on绑定中异常情况分析

    科普下事件冒泡以及默认行为,以下面例子举列子:     事件冒泡:当点击内部button元素时,会触发自身及外层 a的点击事件,这就是事件冒泡引起的.事件会随着 DOM 的层次结构依次向上传播. 事件 ...

  3. Android运行异常情况分析(持续更新)

    1.java.lang.IllegalAccessException: access to class not allowed 原因:在写class 文件的时候没有把class设置成public 2. ...

  4. .NET Core HttpClient请求异常详细情况分析

    前言 最近项目上每天间断性捕获到HttpClient请求异常,感觉有点奇怪,于是乎观察了两三天,通过日志以及对接方沟通确认等等,查看对应版本源码,尝试添加部分配置发布后,观察十几小时暂无异常情况出现, ...

  5. 异常情况下的Activity生命周期分析

    情况1:资源相关的系统配置发生改变 资源相关的系统配置发生改变,举个栗子.当前Activity处于竖屏状态的时候突然转成横屏,系统配置发生了改变,Activity就会销毁并且重建,其onPause, ...

  6. 一次Linux系统被攻击的分析过程

    IT行业发展到现在,安全问题已经变得至关重要,从最近的“棱镜门”事件中,折射出了很多安全问题,信息安全问题已变得刻不容缓,而做为运维人员,就必须了解一些安全运维准则,同时,要保护自己所负责的业务,首先 ...

  7. 基于TBDS的flume异常问题排查过程

    版权声明:本文由王亮原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/214 来源:腾云阁 https://www.qclou ...

  8. HBase一次客户端读写异常解读分析与优化全过程(干货)

    大数据时代,HBase作为一款扩展性极佳的分布式存储系统,越来越多地受到各种业务的青睐,以求在大数据存储的前提下实现高效的随机读写操作.对于业务方来讲,一方面关注HBase本身服务的读写性能,另一方面 ...

  9. 使用Django.core.cache操作Memcached导致性能不稳定的分析过程

    使用Django.core.cache操作Memcached导致性能不稳定的分析过程 最近测试一项目,用到了Nginx缓存服务,那可真是快啊!2Gb带宽都轻易耗尽. 不过Api接口无法简单使用Ngin ...

随机推荐

  1. 如何引用vue

    Vue.js 安装 https://www.runoob.com/vue2/vue-install.html 1.独立版本 我们可以在 Vue.js 的官网上直接下载 vue.min.js 并用 &l ...

  2. pandas-赋值操作

    1,pandas操作主要有对指定位置的赋值,如上一篇中的数据选择一样,根据loc,iloc,ix选择指定位置,直接赋值 2,插入,insert方法,插入行和列 3,添加 4,删除 drop方法 5,弹 ...

  3. windows下sqlplus怎么连接远程oracle

    语法:sqlplus usr/pwd@//host:port/sid [oracle@mzl ~]$ sqlplus system/51411482@//192.168.21.11:1521/orcl ...

  4. Day01:文件操作(File、RandomAccessFile)

    文件操作 JAVA中的 File 类是文件和目录路径名的抽象形式.使用 File 类可以获取文件本身的一些信息,例如文件所在的目录.文件长度.文件读写权限等. 在 Java 中,File 类是 jav ...

  5. OpenStack组件——RabbitMQ消息队列

    1.MQ 全称为 Message Queue, 消息队列( MQ ) 是一种应用程序对应用程序的通信方法.应用程序通过读写出入队列的消息(针对应用程序的数据)来通信,而无需专用连接来链接它们. 消息传 ...

  6. vue 导出JSON数据为Excel

    1. 安装三个依赖 npm install file-saver --save npm install xlsx --save npm install script-loader --save-dev ...

  7. 网站性能优化(website performance optimization)

    提高代码运行速度,或许我们从来没有优化这些页面来提高速度 想要开发优秀的网站,你必须了解你的用户,知道他们想要达到什么目的,同时还要明白浏览器的工作原理,从而能够打造快速良好的体验,我最近在PageS ...

  8. Numpy科学计算

    NumPy介绍   NumPy(Numerical Python)是一个开源的Python科学计算库,用于快速处理任意维度的数组. NumPy支持常见的数组和矩阵操作.对于同样的数值计算任务,使用Nu ...

  9. 【0.2】【MySQL】常用监控指标及监控方法(转)

    [MySQL]常用监控指标及监控方法 转自:https://www.cnblogs.com/wwcom123/p/10759494.html  对之前生产中使用过的MySQL数据库监控指标做个小结. ...

  10. CF235A 【LCM Challenge】

    这题好毒瘤啊 (特别是long long的坑,调了半天没调好!!)先将你特判一下小于3的话直接输出就是惹,不是的话就判断一下它能不能被2整除如果不能就直接输出n*(n-1)*(n-2)否则进行枚举枚举 ...