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

jld*_*ont 395 putty

有没有办法为PuTTY 中存储的会话配置密码?

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

har*_*ymc 431

对于某些版本的 PuTTY,它就像以下之一一样简单:

putty.exe mylogin@somewhere.com -pw mypassword
putty.exe somewhere.com -l mylogin -pw mypassword
Run Code Online (Sandbox Code Playgroud)

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

putty.exe -ssh root@somewhere.com -pw mypasswordforsomewherecom
Run Code Online (Sandbox Code Playgroud)

对于使用 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 客户端中创建和复制您的密钥对备用最新指令源)中所述。

  • 问题不是应该还是不应该,而是“如何”。 (33认同)
  • Harrymc 的回答是最好的选择。[Putty FAQ 清楚地表明设置中无法存储密码](http://www.chiark.greenend.org.uk/~sgtatham/putty/faq.html#faq-password-remember) (11认同)
  • *@aglassman 和其他人 - 你当然重视你的服务器等安全性......存储未加密的密码通常不是一个好主意,RSA 密钥是要走的路。* 使用它来访问我不喜欢的 Raspberry Pi 之类的东西不在乎谁使用它 - 谢谢! (9认同)
  • 大声笑,这个答案永远不会在信息安全中飞翔......这正是它属于超级用户的原因:) (7认同)
  • 我真的不想贬低这个答案,因为 - 正如harrymc所说 - 问题是关于*如何*而不是*如果*,而是考虑何时使用它以及在哪里实现RSA密钥。有一些有效的地方不会造成伤害,采用这种方式(并且设置起来肯定更快),但请记住,此类客户端上的一个微小漏洞(技术或非技术)会将服务器交给攻击者银色平板电脑(如上所述,在某些情况下可能不是问题)。 (6认同)
  • putty.exe -ssh <username>@<ip/domain> <port> -pw <yourpassowrd> (2认同)

nik*_*nik 114

强烈建议使用公钥机制而不是从 shell 发送密码。
这是设置的另一个参考

获取最新PuTTY二进制文件的链接(并查看常见问题解答

  • @nik 不要误会我的意思,你是对的。但这是超级用户站点,如果我想使用密码自动登录,您可能认为我有充分的理由这样做。 (24认同)
  • +1 以正确的方式。在任何地方以明文形式存储密码是一个坏主意。 (8认同)
  • @Steam:你说得对,被入侵的系统是一件非常糟糕的事情。但这不是没有二级(入侵后)威胁保护的理由。如果系统在根级别受到威胁,攻击者应该尽可能难以破坏基础设施的其他部分,并且在这样做时尽可能检测到它们。获取键盘日志需要持续(更有可能被检测到)入侵和安装引人注目的新软件。窃取文本文件不会。 (4认同)
  • 我使用的是 RSA 密钥,而不是密码,但 SSH 密钥是在 WHM 中创建的,因此需要密码。结果 PuTTY 使用 -pw 命令选项接受该密码。所以 -pw 毕竟有一个安全的用例。 (2认同)

Fra*_*urt 68

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

第1步:

  • 登录到您的 winSCP。
  • 单击选项 > 首选项。然后按照下面的屏幕截图。

在此处输入图片说明

第2步:

  • 按照下面的屏幕截图。

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

在此处输入图片说明

  • 谢谢,这仍然有效! (5认同)
  • @VasinYuriy 发生了什么?仍然在我身边工作 (3认同)
  • 天哪,为什么我在独立使用这两种产品多年后还要学习这个技巧!虽然它没有直接回答问题,但它很棒。我在工作中编写了大量脚本,我的流程如下:WinSCP 远程打开和保存修改。VS Code 嗯...好吧,使用代码和 Putty 在开发服务器上运行脚本。我知道我可以通过 VS Code 完成所有操作,但这需要最少的配置,并且所有操作都可以像在产品中一样运行。当我必须使用本地信用来处理临时服务器时,这将使我的生活变得更简单。 (2认同)

dat*_*.io 33

如果您想保留保存的选项(例如预先配置的窗口大小和隧道代理)并加载保存的会话以自动登录,请使用以下方法:http : //www.shanghaiwebhosting.com/web-hosting/putty-ssh -自动登录

putty.exe -load my_server -l your_user_name -pw your_password
Run Code Online (Sandbox Code Playgroud)

其中“my_server”是保存的会话名称。


小智 19

PuTTY 连接管理器是一个单独的程序,可与 PuTTY 一​​起使用。它可以自动登录并有一个保存密码的加密数据库。

不过我还是更喜欢 SSH 密钥。

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

  • 如果您对 SSH 密钥使用密码短语,这是否会使 SSH 密钥与常规用户名和密码一样难以使用? (2认同)

小智 17

PuTTY 有一个名为KiTTY的端口,它允许保存用户名/密码。

kitty_portable.exe 非常好用;无需安装。


Den*_*asi 12

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


小智 10

是的,有办法。最近我为 Linux 和 Windows 的 PuTTY 1.5.4 添加了密码保存功能。您可以从Oohtj下载二进制文件和源代码:PuTTY 0.62 with a password save features


Bru*_*ett 10

为安全解决方案组合两个不同的包可能很危险。这是 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 ----
Run Code Online (Sandbox Code Playgroud)

您必须将其编辑为适合您的远程站点的表单。让我们假设它是一台使用 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 时,系统坚持将单个长行拆分为多行,行间带有“\”。哎呀。接着说...

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

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

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

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

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

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

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


小智 9

Tunnelier - 保存在本地加密的密码。它还具有 sFTP GUI 和 SSH 窗口。

在此处输入图片说明


Bas*_*sic 8

如果连接通过公钥和密码进行身份验证,请考虑使用PuTTY 套件中的Pageant

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

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

"C:\Program Files\PuTTY\Pageant.exe" key1.ppk key2.ppk key3.ppk
Run Code Online (Sandbox Code Playgroud)

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

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


小智 7

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

putty.exe -load "my session name", 
Run Code Online (Sandbox Code Playgroud)

一般形式为:

putty.exe -load my_server -l your_user_name -pw your_password
Run Code Online (Sandbox Code Playgroud)


小智 6

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

tools>mytools 10 
Run Code Online (Sandbox Code Playgroud)

10 是IP 地址的最后一个八位字节。就是这样。

@ECHO OFF
set PUTTY=E:\tools\putty.exe
start %PUTTY% root@192.168.1. %1 -pw yourpassword
Run Code Online (Sandbox Code Playgroud)