• FileZilla使用SFTP协议连接Ubuntu报错:filezilla Couldn‘t agree a key exchange algorithm 。


    发生缘由

    • FileZilla连接Ubuntu传输文件

    运行环境

    • 电脑系统:win10
    • Ubuntu版本:ubuntu-20.04.4-desktop-amd64
    • FileZilla版本:FileZilla-3.7.3

    报错信息

    在这里插入图片描述

    问题解决

    有两种解决方式:更换一个FileZilla版本或者更换为连接协议。

    更换FileZilla版本

    • 官网:官网
    • 网盘:网盘
    • 经测试,更换至FileZilla-3.60.1是没有任何问题的。

    更换为FTP协议

    卸载FTP服务命令如下:sudo apt-get remove --purge vsftpd (–purge 选项表示彻底删除改软件和相关文件)

    1. 安装 FTP 服务

      sudo apt-get install vsftpd
      
      • 1
    2. 安装好FTP服务之后就可以尝试连接了,这个时候只要不使用root用户进行连接,一般都可以连接成功的。使用root用户连接方法在下面。

      但是很可惜,虽然连接成功了,但是我们是无法进行传输文件的。

      在这里插入图片描述

    3. 修改配置

      vi /etc/vsftpd.conf		# 使用vi编辑器修改/etc/vsftpd.conf文件
      
      • 1

      找到write_enable=YES(是否允许上传文件),把它的注释打开。允许上传文件

      在这里插入图片描述

      修改之后重启该服务:/etc/init.d/vsftpd restart

    4. 这时候尝试上传文件,成功了。

    使用root用户连接

    上面是使用普通用户连接的,我使用的是lx这个用户,但是这个用户的权限过于低,很多地方都不能够访问,也不能够上传文件,所以我想着使用root用户进行连接。

    使用root用户连接存在两种情况,使用FTP协议或者使用SFTP协议。下面演示FTP协议,如果是使用SFTP协议连接的话就要更换FileZilla版本了。

    1. 设置root用户密码

      root用户默认是不设置密码的,我们需要来手动设置一下。

      通过SecureCRT来连接Ubuntu,然后键入如下代码:sudo passwd root,这会要求输入当前用户登录的密码,验证成功后会让你设置root用户密码以及重复输入。

      之后让Ubuntu重启:reboot

    2. 打开站点管理器,协议是FTP协议,输入IP地址,用户输入root,密码是刚刚设置的密码。不出意外,出意外了:

      在这里插入图片描述

    3. 这种情况可能有两种问题:

      ①账号或者密码错误。我这里就是这种情况,密码出现错误了,之前设置的是对的,但是关闭FileZilla-3.7.3切换至FileZilla-3.60.1密码就出现错误了。

      ②没有指定shell。解决方法是修改配置文件vi /etc/vsftpd.conf,找到pam_service_name=vsftpd,将其修改为pam_service_name=ftp。然后重启该服务就可以了/etc/init.d/vsftpd restart。当然这种方法不安全哈!

  • 相关阅读:
    Qt——自定义富文本RichText
    这可能是目前最全的Redis高可用技术解决方案
    【谐云课堂】Cilium 流量治理功能与部署实践
    创建线程的方式打开记事本
    归并排序
    淘宝关键词API接口
    python包引用方式总结
    资料分析(错题、经典)
    stm32 cubeide ad转换与串口问题
    常用排序算法详解
  • 原文地址:https://blog.csdn.net/m0_51426055/article/details/126205721