我编写了一个python telnet客户端,通过telnet与服务器通信。但是,很多人告诉我这不安全。如何将其转换为ssh?我是否需要完全重写我的程序?
答案 0 :(得分:1)
虽然Telnet不安全,但它本质上只是网络上的串行控制台,因此可以轻松编写代码。 SSH要复杂得多。有加密,身份验证,协商等等。它的非常很容易出错。
Telnet 本身没有任何问题,但如果您可以通过网络进行更改 - 而且它不是专用网络 - 那么您就是在打开自己找麻烦了。
假设这是在计算机上运行,为什么不将服务器限制为localhost?然后ssh进入计算机并telnet到localhost?所有的安全性都是最小的麻烦。
答案 1 :(得分:1)
在Python应用程序中使用其中一个库与服务器上的SSHD守护程序进行通信:
http://wiki.python.org/moin/SecureShell
您需要查看一些有助于您以安全方式设置SSHD的内容:
http://www.linuxjournal.com/article/8759
您还需要确保定期更新SSHD守护程序并使用密钥和强大的旋转密码。所有这些对于telnet应用程序来说也应该是标准的,但是由于缺乏传输级加密,你真的不应该使用telnet来做任何事情。
答案 2 :(得分:1)
只需通过SSH创建一个TCP隧道并通过那里传递所有数据,无需重新发明轮子。您可以在TCP隧道(例如man ssh
)下的SSH文档中找到示例。
但是如果你真的想重写它,那么请查看paramiko项目。