ftplib是否以纯文本形式传递用户名/密码?

时间:2014-09-09 13:44:31

标签: python ftplib

我正在将系统部署到可以访问Internet的远程位置,我想将数据传输到ftp站点。我通常使用Python的ftplib完成此操作,但由于部署的长度,我更关注安全性。我可以实现Paramiko(实际上,我可能会因为它可以“ssh”),但我想知道ftplib如何处理与服务器的用户名/密码交换。这些参数是以纯文本形式传递的,还是仅在传输数据时使用的纯文本?我在文档中看不到任何方式来指示这种或那种方式。

1 个答案:

答案 0 :(得分:3)

是的,FTP并非设计为安全协议,而 以纯文本(甚至是登录凭据)发送。它很容易被嗅闻和阅读。

为了安全起见,请看一些替代方案:

  • SSH
  • SCP
  • SFTP
  • FTPS

对于Python,Paramiko(SSH)是一个不错的选择。