我正在开发一个目前正在使用goftp
中找到的goftp的项目,将一些文件上传到网站目录中,然后由网站查看。
我知道质疑这个设置的安全性,所以我已经研究了slang和sftp for golang,但是我遇到了问题并且这只是一个令人头痛的问题,因为我是golang新的。
我的问题是,仅仅使用goftp
有哪些安全威胁或问题?是否有更安全的替代方案?
提前致谢!
答案 0 :(得分:3)
所有普通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的一个例子。这可能是一个很好的起点。