有没有办法在PuTTY中使用密码“自动登录”?


329

有没有一种方法可以为PuTTY中的存储会话配置密码?

我知道可以指定“自动登录用户名”(在“连接/数据”下),但是有没有办法对密码进行同样的设置?


12
使用KiTTy ...它是使用PuTTy源代码开发的。–
Apple II

5
使用密钥对而非密码
ladieu14年

2
... 这是使用不安全密码做法的用户的列表。😜
ashleedawg

Answers:


369

对于某些版本的PuTTY,它很简单,其中之一:

putty.exe mylogin@somewhere.com -pw mypassword
putty.exe somewhere.com -l mylogin -pw mypassword

如果要使用SSH连接,请使用以下命令:

putty.exe -ssh root@somewhere.com -pw mypasswordforsomewherecom

对于使用Windows的用户,您只需创建一个快捷方式并传入这些参数即可。

例如:

  1. 在桌面上创建 putty.exe 的快捷方式
  2. 快捷方式重命名PuTTY - server.com
  3. 右键单击快捷方式,然后选择“ 属性”
  4. 修改目标类似于: "C:\Program Files\PuTTY\putty.exe" user@server.com -pw password
  5. 请点击 OK

如果您的PuTTY不支持该pw参数,则需要公共密钥,如
在PuTTY SSH客户端中创建和复制密钥对中所述



7
@aglassman和其他人-您当然会重视服务器等安全性...存储未加密的密码通常不是一个好主意,RSA密钥是解决之道。一定要使用它来访问Raspberry Pi之类的东西,而我不在乎谁使用它-谢谢!
Wilf 2014年

15
问题不是一个人是否应该,而是“如何”。
harrymc 2014年

3
大声笑,这个答案永远不会在信息安全中飞起来……这正是为什么它属于超级用户的原因:)
2014年

2
我真的不想拒绝这个答案,因为-正如harrymc所说-问题是关于如何而不是如果,而是考虑何时使用此方法以及在何处实现RSA密钥。在某些有效的地方,不会造成任何伤害(这样做肯定会更快),但请记住,这样的客户端存在一个微小的漏洞(技术漏洞或非技术漏洞),会将攻击者移交给服务器银片(如上所述,在某些情况下可能不是问题)。
Levit 2014年

105

强烈建议您使用公共密钥机制,而不要从外壳发送密码。
这是该设置的另一参考

链接以获取最新的PuTTY二进制文件(并检查FAQ


8
+1是正确的方法。以明文形式存储密码的任何地方都是一个糟糕的主意。
Zac B

12
@nik别误会我,你是对的。但这是超级用户站点,如果我想使用密码自动登录,您可能会认为我有充分的理由这样做。
马特2014年

1
@ZacB-我是安全新手。如果攻击者对您的系统具有root访问权限,那么他难道不能仅记录您的所有击键,记录您的视频等并获得所有登录信息吗?当然,纯文本存储消除了攻击者的所有精力,对吗?
Steam

3
@Steam:没错,一个受到威胁的系统是一件很糟糕的事情。但这并不是没有二级(入侵后)威胁防护的理由。如果系统在根级别受到威胁,则攻击者应尽可能难以破坏基础结构的其他部分,并且在执行此操作时应尽可能地对其进行检测。获取键盘记录需要持续(更可能被检测到)入侵并安装引人注目的新软件。不会窃取文本文件。
Zac B

当我尝试从该站点下载PuTTY时,我在公司VPN上,但由于其中包含病毒而被阻止了!
OmarOthman '16

40

我使用WinSCP在PuTTY中使用密码“自动登录”。它是免费的,包含许多功能,创建于2000年,并且仍保持活动状态。(WinSCP维基百科页面

在此处输入图片说明

从WinSCP打开PuTTY可以从登录窗口或SFTP窗口中完成,我觉得这非常方便:

在此处输入图片说明

在此处输入图片说明


在我的情况下,此方法不起作用
赵刚

@赵刚〜为什么?
Franck Dernoncourt

我不知道。按照您的步骤进行,但仍然需要密码。
赵刚

@ZhaoGang确保在PuTTY之前在登录屏幕的“密码”字段中输入密码(第二张屏幕截图),然后激活第一张屏幕截图上的选项。
弗兰克·德农库尔特

2
谢谢,这仍然有效!
Xonshiz


16

PuTTY Connection Manager是与PuTTY一起使用的独立程序。它可以自动登录,并具有一个保存密码的加密数据库。

我仍然更喜欢SSH密钥。

(另一个缺点是它可能不再受其原始开发人员的支持,并且只能从第三方来源下载。)


1
如果您对SSH密钥使用密码短语,这是否会使SSH密钥像普通用户名和密码一样难用?
Buttle Butkus

12

有一个名为KiTTY的PuTTY端口,可以保存用户名/密码。

kitty_portable.exe非常方便。无需安装。


10

我在Windows上使用mRemote;它可以存储SSH,RDP,VNC和Citrix的用户名和密码。


我在Win7上发现了这个漂亮的越野车。在窗口周围拖动会导致严重的挂起。感到羞耻,因为除此之外,它很棒。
jsims281 2012年



5

为安全解决方案组合两个不同的软件包可能很危险。仅使用PuTTY站点中的软件,这是仅使用PuTTY的方式。

您应该首先使用PuTTYgen创建密钥对,然后在PuTTY中安装私钥,然后将公钥复制到远程站点。这是您的操作方式。

下载PuTTYgen,然后执行以生成SSH2-RSA密钥。我会至少使用4098位。单击“生成”按钮,四处移动鼠标,直到生成密钥对。

在此处输入图片说明

生成后,您的屏幕将如下所示: 在此处输入图片说明

在“关键评论”字段中描述该帐户。然后将私钥保存在一个文件中,将公钥保存在另一个文件中。

您的公钥将如下所示:

---- BEGIN SSH2 PUBLIC KEY ----
Comment: "rsa-key-20160822"
AAAAB3NzaC1yc2EAAAABJQAAAgEA5Kp+G9z8eE0MpPZL9JZksstIa3L9JEND6ud1
1IiD6f1jw/7Lv7CvZcCdk/OVMT+DlTbryRoqfbNMLkjajqNTUGBAscTduUtPYuQt
YEQgtbJd/hyHtTHK9X/wiKeQr7LjHZcEg3osYh+MzZFscldQM/a/Z26AKh81EC9X
uIu98snjOBM0ysb14Uu7hMvti5Xd3kSW7ctL2j1ORuRgZX6LHihaezvsBFI5S/lZ
4v/yxymRKQnyV6OkMNMXESJpXh3cTMIIGtDJtbbYvh5Qs0f3O1fMiQYyz2MjGphd
zBihq85a1SHx0LBk31342HsCiM4el//Zkicmjmy0qYGShmzh1kfZBKiBs+xN4tBE
yjRNYhuMGP2zgpr9P/FO1buYdLah5ab3rubB5VbbRP9qmaP2cesJS/N91luc099g
Z+CgeBVIiRr1EYTE8TqsSBdvmu3zCuQgDVcSAoubfxjM4sm3Lb6i4k4DJmF57J6T
rcyrSIP9H/PDuBuYoOfSBKies6bJTHi9zW2/upHqNlqa2+PNY64hbq2uSQoKZl1S
xwSCvpbsYj5bGPQUGs+6AHkm9DALrXD8TX/ivQ+IsWEV3wnXeA4I1xfnodfXdhwn
ybcAlqNrE/wKb3/wGWdf3d8cu+mJrJiP1JitBbd4dzYM0bS42UVfexWwQSegDHaw
Aby0MW0=
---- END SSH2 PUBLIC KEY ----

您必须将其编辑为适合您的远程站点的表单。假设它是使用ssh的Linux机器。

编辑文件,使其具有三个字段:

  1. 第一个应该说“ ssh-rsa”
  2. 第二个应该是您的公用密钥,并且必须全部放在一行上,且不能有空格。
  3. 第三个是注释-可以对应于您的关键注释字段。

所以完成后应该看起来像这样

SSH-RSA AAAAB3NzaC1yc2EAAAABJQAAAgEA5Kp + G9z8eE0MpPZL9JZksstIa3L9JEND6ud11IiD6f1jw / 7Lv7CvZcCdkOVMT + DlTbryRoqfbNMLkjajqNTUGBAscTduUtPYuQtYEQgtbJdhyHtTHK9XwiKeQr7LjHZcEg3osYh + MzZFscldQMaZ26AKh81EC9XuIu98snjOBM0ysb14Uu7hMvti5Xd3kSW7ctL2j1ORuRgZX6LHihaezvsBFI5SlZ4vyxymRKQnyV6OkMNMXESJpXh3cTMIIGtDJtbbYvh5Qs0f3O1fMiQYyz2MjGphdzBihq85a1SHx0LBk31342HsCiM4elZkicmjmy0qYGShmzh1kfZBKiBs + xN4tBEyjRNYhuMGP2zgpr9PFO1buYdLah5ab3rubB5VbbRP9qmaP2cesJSN91luc099gZ + CgeBVIiRr1EYTE8TqsSBdvmu3zCuQgDVcSAoubfxjM4sm3Lb6i4k4DJmF57J6TrcyrSIP9HPDuBuYoOfSBKies6bJTHi9zW2upHqNlqa2 + PNY64hbq2uSQoKZl1SxwSCvpbsYj5bGPQUGs + 6AHkm9DALrXD8TXivQ + IsWEV3wnXeA4I1xfnodfXdhwnybcAlqNrEwKb3wGWdf3d8cu + mJrJiP1JitBbd4dzYM0bS42UVfexWwQSegDHawAby0MW0 = RSA的密钥-20160822

就个人而言,我会将文件复制到Linux机器上,然后进行编辑,因为像vim这样的编辑器对长行的容忍度更高。我会使用“ J”命令来连接两行,然后搜索空格并删除两行之间的空格。当我将此文件复制到Windows时,系统坚持将单个长行拆分为多行,每行之间带有“ \”。uck 接着说...

登录到远程计算机,然后复制/编辑,然后将公钥以与其他密钥相同的格式附加到〜/ .ssh / authorized_keys文件中。它应该是一行。一行上应该有三个字段。第一个说“ ssh-rsa”。第二个是密钥,应以字符“ =”结尾。第三个字段是可选的,并将包含您在“密钥注释”字段中输入的内容。

如果这是您第一次创建〜/ .ssh / authorized_keys文件,请确保目录和文件不是组或世界可读的。

完成此操作后,您必须创建一个使用私钥的PuTTY会话。

在PuTTY会话中,转到Connection => SSH => Auth,然后单击浏览并选择存储私钥“这是* .ppk”文件的位置。 在此处输入图片说明

然后保存此会话(我假设您还设置了帐户,IP地址等)。

完成此操作后,您只需选择会话即可登录。

一种更安全的方法是使用密码将私钥存储在加密的文件中。然后使用Pageant来管理您的密码。这样,私钥始终会被加密,您只需要偶尔输入一次密码即可。


有了这些详细的说明,不难开始。使用Pageant,您完全安全,启动时我只需为所有密钥输入一次密码。
Noumenon

4

如果您使用以下方式,请不要忘记添加“”来包含您的会话名称,否则可能无法加载会话。例如,

putty.exe -load "my session name", 

通用形式为:

putty.exe -load my_server -l your_user_name -pw your_password

4

我更喜欢在Windows计算机上这样做。将PuTTY可执行文件保存在一个名为“ mytools”的文件夹中,然后从命令提示符处运行以下命令:

tools>mytools 10 

10是IP地址的最后一个八位位组。而已。

@ECHO OFF
set PUTTY=E:\tools\putty.exe
start %PUTTY% root@192.168.1. %1 -pw yourpassword

完善。但是通过这样做,所有的颜色自定义设置都消失了,而我陷入了原生的PuTTy丑陋的色彩模式。我已经将这些reg文件igvita.com/2008/04/14/custom-putty-color-themes添加为我的配色方案,但是我可以以某种方式使用它吗?
Em Ae

2

如果通过公共密钥和密码对连接进行了认证,请考虑使用Pageant

您可以使用相关密码将私钥添加到Pageant。假设您在PuTTY中配置了正确的用户名,则将透明地进行身份验证。

它不存储您的密码,因此您下次启动它时必须重新添加密钥。有一个命令行选项可以一次性启动和添加密钥。

"C:\Program Files\PuTTY\Pageant.exe" key1.ppk key2.ppk key3.ppk

如果需要,它将提示输入密码。

最棒的是,它是PuTTY套件一部分,因此您可能已经在计算机上安装了它。



1

我想解释更多关于Emrald214关于MTPutty的答案,因为它是一个不错的免费软件。

MTPutty-多选项式腻子(由于许多用户的公司安装限制,因此采用便携式版本),因为它有助于连接到许多服务器,并且易于使用此免费软件组织在文件夹中。

  1. 您可以将自己的用户名密码保存在会话设置中 在此处输入图片说明
  2. 您可以从新连接的脚本标签登录后触发自动命令。如果您需要在会话启动时设置一些脚本(特别是别名脚本),这将非常有帮助。您也可以自动记录sesu,但不建议使用它,因为密码为纯文本格式,例如 在此处输入图片说明

在上面的脚本中,SLEEP用于等待命令之间的间隔(以毫秒为单位)。

注意:

  1. MTPutty只是一个界面,因此您还需要下载kitty或腻子才能使用它。
  2. 该脚本仅在保存密码后才起作用(否则它将尝试从脚本:P取密码,这将导致登录失败)
  3. 它具有导出和导入会话选项以及许多其他有用的功能。

如果您需要处理许多服务器,该软件将在日常操作中提供很大帮助。


0

如果命令历史记录是出于安全考虑,请使用公钥路由(因为该-pw选项中指定的纯文本密码存储在命令历史记录中)。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.