在公用应用程序上的服务器和客户端之间安全地访问和写入数据

问题描述 投票:0回答:1

我正在使用Python 3编写一个应用程序,以供用户与此应用程序之间发送和检索数据。该过程将是客户端输入编码的字符串,然后使用服务器作为中间人,然后将数据发送到另一个客户端。我非常了解客户端应用程序将使用的内容,但是对服务器的了解是我的新手。我已经启动并运行了VPS服务器,我进行了研究,发现模块pysftp非常适合于来回传输数据。但是,我在使用应用程序时担心服务器的安全性。建立连接时,此模块需要服务器的身份验证详细信息,而且我认为在应用程序代码中包含服务器的主机,用户名和密码并不十分安全。进行此操作的安全方法是什么?谢谢,枪手

python security server client pysftp
1个回答
0
投票

您可能要使用预先生成的身份验证密钥。如果您熟悉使用ssh-keygen工具创建SSH密钥对的过程,那是一样的。您只需生成密钥对,将私钥放在客户端计算机上,然后将公钥放在目标服务器上即可。然后您可以像这样使用pysftp

with pysftp.Connection('hostname', username='me', private_key='/path/to/keyfile') as sftp:
   <do some stuff>

验证是使用密钥对进行的,不需要密码。这并不是说您的安全问题已得到解决:私钥仍然是敏感的凭证,需要像对待密码一样对待。优点是您没有在任何地方的文件中存储明文密码,并且您使用的是完善且安全的过程来管理身份验证。私钥设置为具有权限0600,以防止除所有者以外的任何人访问私钥。

© www.soinside.com 2019 - 2024. All rights reserved.