【问题标题】:Does goftp package provide for secure file transfers?goftp 包是否提供安全的文件传输?
【发布时间】:2013-09-29 06:02:42
【问题描述】:

我正在处理一个项目,该项目目前正在使用在goftp 中找到的 goftp 将一些文件上传到网站目录中,供网站使用和查看。

我知道对这种设置的安全性提出质疑,所以我研究了 golang 的 ssh 和 sftp,但我遇到了问题,这只是一个大问题,因为我是 golang 的新手。

我的问题是,仅使用goftp 会带来哪些安全威胁或问题,是否有更安全的替代方案?

提前致谢!

【问题讨论】:

  • 如果 goftp 使用的是 FTP 协议,那么是的,它不安全(纯文本密码,...)
  • 并非所有密码都以纯文本形式传输,但该协议也没有缓解MitM attacks

标签: ssh ftp go sftp ftp-client


【解决方案1】:

所有纯 FTP 服务器本质上都是不安全的,因为它们通过未加密的链接使用纯文本进行身份验证。这意味着同一网络(尤其是 WiFi 网络)上的任何人都可以嗅探网络流量并轻松提取用于身份验证的用户名和密码。

您已经提到了一些推荐的替代方案,SSH 和 SFTP。 SSH 提供了使用 SCP 安全传输文件的方法。 SFTP 还使用 SSH 提供的底层传输。还有 FTPS,它通过 SSL 加密连接使用标准 FTP。

查看this link,了解有关协议之间差异的更多信息。

在研究用于 FTP 的 Go 库时,我发现 a mention github.com/jlaffaye/goftp 库在多行响应时中断。

强烈建议使用比普通 FTP 更安全的协议,这样您可以通过查看 SCP/SFTP/FTPS 解决方案获得更好的服务。这是一个 Github Gist 声称是在 Go 中使用 SCP 的示例。这可能是一个很好的起点。

【讨论】:

  • 最后一个要点是错误的。作者在其他一些问题中声称它是错误的。还有 goroutine 启动到最后肯定是有问题的。
猜你喜欢
  • 1970-01-01
  • 2011-03-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-05-15
相关资源
最近更新 更多