全面解析plink.exe

发布时间:2023-05-19

一、简介

plink.exe是PuTTY工具中的一员,是一个用于SSH连接的命令行工具。它可以代替telnet和rsh来进行远程端口的连接,而且可在Windows下直接执行。plink.exe用Putty的代码库编写,并且是PuTTY中所包含的小组件之一。 它支持SSH协议(SSH1和SSH2),可以实现端口转发,并提供了一些基本的命令行选项和参数解析功能。

二、语法

plink.exe的语法为:

    plink [options] [user@]host [command]

其中,host必选,指要连接的机器的主机名;user和command都是可选的。如果提供了user,则它会自动作为远程机器的用户名。 如果还指定了command,它会自动在远程机上打开Bash,执行command所指定的参数,然后退出。

三、选项

plink.exe有许多可配置的选项,这里列举几个常用的:

  • -ssh -telnet -rlogin -raw:指定连接的协议类型。
  • -P:指定连接的端口号。
  • -l:指定连接的用户名。
  • -pw:指定连接的密码,不安全的使用方式,建议使用SSH key认证方式。
  • -batch:在连接时不询问用户。
  • -v:启用详细输出模式。
  • -C:启用压缩。

四、实例

下面给出几个plink.exe命令的实例:

1. 连接并执行远程命令

将连接本地主机的user01用户,连接到远程主机上并执行命令。

    plink user01@remotehost command

2. 打开一个交互式Shell界面

连接到远程主机并打开一个交互式Shell界面。

    plink user01@remotehost

3. 使用HTTP代理进行连接

使用192.0.2.254:8080下的HTTP代理连接到远程主机。

    plink -proxycmd "c:\intercept\plink.exe proxy.example.com 8080" user01@remotehost

4. 基于SSH key方式连接

使用SSH key的方式连接到远程主机。

    plink -i private.ppk user01@remotehost

5. 创建隧道

将远程主机44022端口转发到本地2222端口。

    plink -L 2222:localhost:44022 user01@remotehost

五、总结

plink.exe是PuTTY中一个非常有用的小组件,它可以使用SSH协议连接远程机器、执行命令、建立端口转发、使用SSH key认证等多种功能。对于需要经常在Windows下连接Linux服务器的工程师们来说,它提供了一个非常便利的命令行连接方式。