热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

作为新手询问GO使用SSHKEYupload也就是俗称SFTP上传

1最近在写SFTP上传文件,看了网上的一堆代码,实验了不少,始终不成功,特来此询问

1 最近在写SFTP上传文件,看了网上的一堆代码,实验了不少,始终不成功,特来此询问



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
func Sftp_connect(user, pbi, local string) {

    fmt.Println(user, pbi, local)

    pub := PublicKeyFile(pbi)

    sshConfig := &ssh.ClientConfig{

        User: user,

        Auth: []ssh.AuthMethod{

            pub,

        },

        HostKeyCallback: func(hostname string, remote net.Addr, key ssh.PublicKey) error {

            return nil

        },

    }

    conn, err := ssh.Dial("tcp", local, sshConfig)

    if err != nil {

        fmt.Println("sulwan")

        fmt.Println(err)

    } else {

        fmt.Println(conn)

        defer conn.Close()

    }

}

报错:
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x20 pc=0x63240d]

goroutine 1 [running]:
golang.org/x/crypto/ssh.(*connection).clientAuthenticate(0xc42011c200, 0xc42010e340, 0x0, 0xa)



1
/data/golang/src/golang.org/x/crypto/ssh/client_auth.go:63 +0x2dd

golang.org/x/crypto/ssh.(*connection).clientHandshake(0xc42011c200, 0x6f8316, 0x12, 0xc42010e340, 0x0, 0x0)

1
/data/golang/src/golang.org/x/crypto/ssh/client.go:113 +0x2c4

golang.org/x/crypto/ssh.NewClientConn(0x730780, 0xc42000e530, 0x6f8316, 0x12, 0xc420055e70, 0x730780, 0xc42000e530, 0x0, 0x0, 0x1, ...)

1
/data/golang/src/golang.org/x/crypto/ssh/client.go:83 +0x100

golang.org/x/crypto/ssh.Dial(0x6f4442, 0x3, 0x6f8316, 0x12, 0xc420055e70, 0x0, 0xc420016798, 0xc420055ec2)

1
/data/golang/src/golang.org/x/crypto/ssh/client.go:177 +0xb3

github.com/sulwan/until.Sftp_connect(0x6f611b, 0xc, 0x6f5b84, 0xa, 0x6f8316, 0x12)

1
/data/golang/src/budhad/until/sftp.go:32 +0x28f

main.main()

1
/data/go/sina/main.go:38 +0x60

寻求上述问题解答,最好能求得一个SFTP pubkey认证上传完整例子


   



推荐阅读
  • 本文详细介绍了在CentOS 6.5 64位系统上使用阿里云ECS服务器搭建LAMP环境的具体步骤。首先,通过PuTTY工具实现远程连接至服务器。接着,检查当前系统的磁盘空间使用情况,确保有足够的空间进行后续操作,可使用 `df` 命令进行查看。此外,文章还涵盖了安装和配置Apache、MySQL和PHP的相关步骤,以及常见问题的解决方法,帮助用户顺利完成LAMP环境的搭建。 ... [详细]
  • Spring Boot与Graylog集成实现微服务日志聚合与分析
    本文介绍了如何在Graylog中配置输入源,并详细说明了Spring Boot项目中集成Graylog的日志聚合和分析方法,包括logback.xml的多环境配置。 ... [详细]
  • 体积小巧的vsftpd与pureftpd Docker镜像在Unraid系统中的详细配置指南:支持TLS加密及IPv6协议
    本文详细介绍了如何在Unraid系统中配置体积小巧的vsftpd和Pure-FTPd Docker镜像,以支持TLS加密和IPv6协议。通过这些配置,用户可以实现安全、高效的文件传输服务,适用于各种网络环境。配置过程包括镜像的选择、环境变量的设置以及必要的安全措施,确保了系统的稳定性和数据的安全性。 ... [详细]
  • Docker安全策略与管理
    本文探讨了Docker的安全挑战、核心安全特性及其管理策略,旨在帮助读者深入理解Docker安全机制,并提供实用的安全管理建议。 ... [详细]
  • CRZ.im:一款极简的网址缩短服务及其安装指南
    本文介绍了一款名为CRZ.im的极简网址缩短服务,该服务采用PHP和SQLite开发,体积小巧,约10KB。本文还提供了详细的安装步骤,包括环境配置、域名解析及Nginx伪静态设置。 ... [详细]
  • 调试利器SSH隧道
    在开发微信公众号或小程序的时候,由于微信平台规则的限制,部分接口需要通过线上域名才能正常访问。但我们一般都会在本地开发,因为这能快速的看到 ... [详细]
  • 本文将从基础概念入手,详细探讨SpringMVC框架中DispatcherServlet如何通过HandlerMapping进行请求分发,以及其背后的源码实现细节。 ... [详细]
  • 本文详细介绍了如何在ARM架构的目标设备上部署SSH服务端,包括必要的软件包下载、交叉编译过程以及最终的服务配置与测试。适合嵌入式开发人员和系统集成工程师参考。 ... [详细]
  • 本文详细介绍了如何在 CentOS 7 及其衍生发行版(如 Red Hat, Oracle, Scientific Linux 7)上安装和完全卸载 GitLab。包括安装必要的依赖关系、配置防火墙、安装 GitLab 软件包以及常见问题的解决方法。 ... [详细]
  • 如何在Windows上使用Gitee创建远程仓库
    本文详细记录了在Windows系统上使用Gitee创建远程仓库的步骤,帮助解决无法注册GitHub的问题。 ... [详细]
  • `chkconfig` 命令主要用于管理和查询系统服务在不同运行级别中的启动状态。该命令不仅能够更新服务的启动配置,还能检查特定服务的当前状态。通过 `chkconfig`,管理员可以轻松地控制服务在系统启动时的行为,确保关键服务正常运行,同时禁用不必要的服务以提高系统性能和安全性。本文将详细介绍 `chkconfig` 的各项参数及其使用方法,帮助读者更好地理解和应用这一强大的系统管理工具。 ... [详细]
  • centos ftp服务器搭建_CentOS7服务搭建搭建FTP服务器(下)
    FTP服务器搭建接上篇:CentOS7服务搭建----搭建FTP服务器(上)一、FTP相关配置文件说明相关配置文件:etcvsftpdvsftpd.co ... [详细]
  • 本文深入探讨了使用Puppet进行软件包分发与管理的方法。首先介绍了fpm这一跨平台的软件包制作工具,其简便的操作流程使得软件包的创建变得轻松快捷。fpm的项目地址为:https://github.com/jordansissel/fpm。通过结合Puppet和fpm,可以实现高效、可靠的软件包管理和部署。 ... [详细]
  • 利用 Python Paramiko 库在远程服务器上高效执行 Shell 脚本的方法与技巧 ... [详细]
  • 分享一下最近写的ReactNative的SSHSFTP组件,iOS端封装了NMSSH,Android端封装了JSch。支持SSH执行命令、实时Shell ... [详细]
author-avatar
马芷靈
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有