没有密码。
SSH登录基于插件系统。用户名是必需的,但一旦输入,就完全取决于服务器了。因为这是一个插件系统,所以你可以设置好,然后你必须按顺序拨打5个不同的电话号码。如果你真的想的话,也可以发一段你跳小鸡舞的视频。然而,最常见的是:
-
用户名/密码-根据目标系统的用户名检查密码(
/etc/passwd
,或者更确切地说,现在的影子密码文件)。
根本不建议这样做
因为这不是推荐的,所以这样的事情对你来说很难奏效。如果是,
您应该关闭该服务器并重新配置它
。除非它根本没有暴露在互联网上,在这种情况下,你仍然应该重新配置它,但你不必在这一刻把它取下来。
-
用户名/密钥文件-
这是通常的做法
。某个地方的某个人生成了一个密钥对,即一个文件包含“公钥”,另一个文件则包含“私钥”。您正在登录的服务器只有公钥。它会向客户端(即您的计算机)发送一些挑战(随机生成的字节序列),您的客户端应该对这些挑战进行一些加密魔法(只有当您拥有
私有的
密钥),并将该巫毒的结果发送回服务器。服务器可以使用它发送的质询、得到的响应、公钥和一些方便的数学来验证对质询做出响应的任何实体都可以访问私钥。
因此,根本没有密码,“拥有私钥文件”是此处正在检查的身份验证步骤
。
但是,作为一项附加措施,SSH系统能够
加密私钥文件
。这就像把前门的钥匙放在一个小金属盒子里,然后用另一把锁锁住盒子。你现在有了一把金属盒子的钥匙,里面是你前门的钥匙。
这个练习的目的是确保仅仅访问你的电脑(比如说,当你在火车上工作时,我把它从你腿上刷下来)是不够的——你需要访问你的计算机(或者更确切地说,私钥文件),
和
您需要知道用于加密密钥文件本身的密码。
按照惯例,这叫做
口令
而不是
暗语
,并且该密码短语的应用是:
-
完全由你自己的电脑完成的事情。服务器甚至不知道它。它无法发送此密码短语,甚至无法告诉您存在密码短语。
-
作为原理的一般观点,
你从来没有在脚本或任何设置对话框中放过什么
因为那样做毫无意义。这个
只有
将密码短语应用于私钥文件的原因是它需要由操作员输入。保存它是愚蠢的:相反,如果你想让系统在没有人提供密码的情况下工作,只需解密私钥文件。因为这很傻,像PuTTY这样的工具不会让你这么做。这是一件道德的事情:因为某人想要火箭筒,就递给他们一个火箭筒,知道他们会用它把脚炸飞,这道德吗?答案很复杂,但大多数软件都说:不,它不是,因此故意没有这样的“所有合理的用途都非常糟糕”选项。
这是可以接受的,想想你的硬件情况。例如,如果你的电脑是全磁盘加密的,例如,如果它距离你的智能手表超过几米就会自动锁定,或者诸如此类,那么让你的私钥文件不加密似乎是合理的。
因此,以下是您需要做的:
-
找到密钥FILE,并告诉putty。putty对这些非标准文件的格式有一些奇怪的想法。PuTTY附带了单独的工具,可以将已知格式的密钥文件转换为PuTTY的格式,请参阅文档。PuTTY.exe本身
没有
有了这个功能,它是一个单独的可执行文件,是putty发行版的一部分。我想它叫普蒂根,但是,请查看手册。
-
如果密钥文件是加密的,则puttygen工具会告诉您,并要求您提供密码短语。如果在IntelliJ中,你永远不需要输入密码,我非常怀疑它是加密的。因为如果是这样的话,那就意味着intellij把自己的寻脚火箭筒交给了你,intellij开发者选择了道德上的选择,即运送具有固有不安全功能的软件。我怀疑他们会把这种观点归咎于此。理论上应该可以从intellij的配置文件中恢复该密码短语,但是,考虑到
非常
我怀疑它是这样运作的,我认为不值得研究这个问题。