如何使用 private/public key- imported-openssh-key 在不提供密码的情况下登录 ssh 服务器

How to login ssh server without giving password using private/public key- imported-openssh-key

目前正在使用 Filezilla 从远程服务器进行复制。复制文件后需要手动操作需要复制并完成其他进一步的任务。所以我需要编写 shell 脚本来复制并做进一步的任务。但我面临使用 private/public 密钥登录服务器。我有一个包含以下内容的密钥文件:

puTTY-User-Key-File-2: ssh-rsa
Encryption: none
Comment: imported-openssh-key
Public-Lines: 6
--<Public_key>

Private-Lines: 14
---<Private_key>--

Private-MAC: --<some text>--

Filiezilla 使用密钥成功连接并正常工作。

我已经花了很多时间谷歌搜索,但找不到合适的解决方案。 请建议我如何使用给定的密钥在没有密码的情况下登录并使用 shell 脚本

复制文件

您需要在客户端机器上将私钥自行放入一个文件中,然后:

ssh -i /path/to/ssh/key USER@HOSTNAME

这里有教程:https://support.rackspace.com/how-to/logging-in-with-an-ssh-private-key-on-linuxmac/

经过研究和访问许多网站,我终于找到了自己问题的解决方案。 PPK 文件包含:

puTTY-User-Key-File-2: ssh-rsa
Encryption: none
Comment: imported-openssh-key
Public-Lines: 6
--<Public_key>
Private-Lines: 14
---<Private_key>--

Private-MAC: --<some text>--

实际上我们需要使用密码或不使用密码来生成我们自己的私钥。然后我们可以使用自己的私钥登录服务器。

生成私钥的步骤url

https://kb.paessler.com/en/topic/32883-how-can-i-use-private-keys-for-my-ssh-sensors-with-prtg

生成私钥后,我们可以使用 ssh 或 stp 登录:

sftp  -oIdentityFile=<generated_private_key>  <user>@<ftp_server>:<remote_directory>

ssh -i <generated_private_key>  <user>@<ftp_server>

我们可以将重要性 stp_command 用于自动化任务: http://www.csee.umbc.edu/courses/104/fall05/ordonez/sftp_cmds.shtml

现在我可以在远程 FTP 服务器上登录和列出文件后编写 shell 脚本。如果有任何混淆。请评论。