PuTTY用户手册(二)

第三章:使用Putty

本章对PuTTy的一些更高级的特性作了一般性的介绍。如果需要更多细节,第4章可能包含更多信息。

3.1会话期间

PuTTY的许多复杂性和特性都在配置面板中。一旦您完成了这些工作并开始了会话,接下来的事情就应该相当简单了。不过,还有一些更有用的特性可用。

3.1.1复制粘贴文本

通常在PuTTY会话中,您会在终端屏幕上找到要再次输入的文本。
与大多数其他终端模拟器一样,PuTTY允许复制和粘贴文本,而不必再次键入文本。
另外,复制和粘贴使用Windows剪贴板,这样您就可以将(例如)url粘贴到web浏览器中,或者将字处理程序或电子表格粘贴到终端会话中。
【翻译不易,转载请注明出处 衡与墨https://blog.csdn.net/le_17_4_6】
PuTTy的复制粘贴完全用鼠标操作。
要将文本复制到剪贴板,只需单击终端窗口中的鼠标左键,并拖动以选择文本。
当您放开按钮时,文本将自动复制到剪贴板。
您不需要按Ctrl-C或Ctrl-Ins;
事实上,如果您按下Ctrl-C, PuTTY将把一个Ctrl-C字符发送到会话的服务器,它可能会导致进程中断。

粘贴是使用右按钮(或者中间的鼠标按钮,如果你有一个三按钮的鼠标并设置了它; 4.11.2节)。
(按下Shift-Ins,或者从Ctrl+右键单击的上下文菜单中选择“粘贴”,都会产生相同的效果。)
当你点击鼠标右键时,PuTTY就会读取Windows剪贴板中的任何内容,并将其粘贴到会话中,就像在键盘上键入一样。
(因此,要小心将格式化的文本粘贴到执行自动缩进的编辑器中;您可能会发现从剪贴板粘贴的空格加上编辑器添加的空格加起来太多,破坏了格式。PuTTy对此无能为力。)

如果双击鼠标左键,PuTTy会选择一个完整的单词。
如果双击,按住第二次点击,拖动鼠标,PuTTY会选择一个完整的单词序列。
(你可以精确地调整PuTTy认为是单词的一部分; 见4.11.5。部分)
如果你三次点击,或者三次点击并拖动,PuTTY就会选择一整行或者一系列的行。

如果您想选择一个矩形区域,而不是选择到每一行的末尾,您可以在进行选择时按住Alt键。
您还可以将矩形选择配置为默认选项,然后按住Alt键则会给出正常的行为:有关详细信息,请参见4.11.4节。

(在某些Unix环境中,窗口管理器拦截Alt+拖动。Shift+Alt+拖动也适用于矩形选择,所以你可以试试。)

如果您有一个中间的鼠标按钮,那么您可以使用它来调整一个现有的选择,如果您选择了一些稍微错误的东西。
(如果您已经配置了要粘贴的鼠标中键,那么鼠标右键将执行此操作。)
单击屏幕上的按钮,您可以选择选择的最近一端并将其拖到其他位置。

服务器请求处理PuTTY窗口中的鼠标单击。
如果发生这种情况,鼠标指针将变成一个箭头,只有按住Shift键,使用鼠标复制粘贴才会成功。
有关此特性及其配置的详细信息,请参见4.6.2节和4.11.3节。

3.1.2将屏幕向后滚动

PuTTY跟踪从终端顶部滚动起来的文本。
如果文本出现在屏幕上,你想阅读,但它滚动太快,如果你试图寻找它,你可以使用窗口的右侧滚动条来回顾历史会话并再次找到它。

除了使用滚动条,您还可以通过按Shift-PgUp和Shift-PgDn来翻页。
您可以使用Ctrl-PgUp和Ctrl-PgDn一次滚动一行。
如果您将滚动条配置为不可见的,这些选项仍然可用。

默认情况下,从顶部滚动的最后2000行将保留下来供您查看。
您可以使用配置框增加(或减少)这个值; 见4.7.3部分。

3.1.3系统菜单

如果单击PuTTY终端窗口左上角图标上的鼠标左键,或者单击标题栏上的鼠标右键,您将看到标准的Windows系统菜单,其中包含最小化、移动、大小和关闭等项。
PuTTY的系统菜单除了Windows标准选项外,还包含额外的程序功能。下面将描述这些额外的菜单命令。
(这些选项也可以在弹出的上下文菜单中使用,方法是按住Ctrl并在PuTTY窗口的任何地方用鼠标右键单击。)
3.1.3.1PuTTy事件日志(Event Log)
Event Log
如果从系统菜单中选择“事件日志”,将弹出一个小窗口,PuTTY将在其中记录连接期间的重要事件。日志中的大多数事件可能发生在会话启动期间,但也有一些事件可能发生在会话中的任何一点上,有一两个事件可能发生在会话结束时。
您可以使用鼠标选择事件日志的一行或多行,并单击Copy按钮将它们复制到剪贴板。如果您正在报告bug,那么将事件日志的内容粘贴到bug报告中通常很有用。
(事件日志与创建会话日志文件的工具不同;这在3.2节中有描述。
3.1.3.2特殊的命令(Special Command)
根据当前会话使用的协议,可能有一个“特殊命令”的子菜单。
这些是特定于协议的令牌,例如“中断”信号,可以在正常数据之外通过连接发送。
它们的精确效果通常取决于服务器。
目前只有Telnet、SSH和串行连接具有特殊的命令。
在这里插入图片描述
还可以使用Ctrl-Break从键盘调用“break”信号。

Telnet提供以下特殊命令:

  • Are You There
  • Break
  • Synch
  • Erase Character (删除字符)

PuTTY还可以配置为在按下Backspace时发送此消息;看4.16.3节。

  • Erase Line
  • Go Ahead
  • No Operation

应该没有效果。

  • Abort Process
  • Abort Output
  • Interrupt Process (中断过程、进程、输出)

PuTTY还可以配置为在键入Ctrl-C时发送此消息;看4.16.3节。

  • Suspend Process (中断进程)

PuTTY还可以配置为在键入Ctrl-Z时发送此消息;看到4.16.3节。

  • End Of Record
  • End Of File

在SSH连接中,可以使用以下特殊命令:

  • IGNORE message

应该没有效果。

  • Repeat key exchange (重复密钥交换)
    仅适用于sh -2。
    强制立即进行重复密钥交换(并重置相关计时器和计数器)。
    有关重复密钥交换的更多信息,请参见4.19.2节。

  • Cache new host key type (缓存新的主机键类型)
    只有在SSH-2中可用。
    只有当服务器具有PuTTY尚未缓存的类型的主机键时,才会出现此子菜单,因此不会考虑这种情况。
    选择一个关键将允许腻子使用,关键在现在和未来:腻子将做一个新的密钥交换的选择键,并立即添加关键永久缓存(依赖于主机密钥使用的连接交叉证明新键)。
    该密钥将用于本届会议的其余部分;
    根据您的喜好,它可能不会实际用于将来的会话(请参阅4.20.1节)。

通常,PuTTY将继续使用它已经知道的主机密钥,即使服务器提供PuTTY不喜欢的密钥格式,以避免主机密钥提示。
因此,如果您已经使用服务器多年,由于同时进行了服务器升级,您可能仍然使用比新用户使用的密钥更旧的密钥。
不幸的是,SSH协议没有为主机密钥迁移和滚转组织设施,但这允许您手动升级。

  • Break
    只能在SSH-2中使用,并且只能在会话期间使用。
    可选的扩展;
    服务器可能不支持。
    PuTTY请求服务器的默认中断长度。

  • Signals信号(SIGINT, SIGTERM等)
    只能在SSH-2中使用,并且只能在会话期间使用。
    发送各种POSIX信号。
    不是所有的服务器都支持它。

对于串行连接,唯一可用的特殊命令是“Break”。

3.1.3.3开始新的会话(new session)
PuTTY的系统菜单提供了一些启动新会话的快捷方式:

  • 选择“New Session”将启动PuTTY的一个全新实例,并正常打开配置框。
  • 选择“Duplicate Session”将在一个新窗口中启动一个会话,该窗口具有与当前窗口完全相同的选项——使用相同的协议连接到相同的主机,具有相同的终端设置和所有内容。
  • 在非活动窗口中,选择“Restart Session”与“Duplicate Session”相同,但在当前窗口中。
  • “已保存会话”子菜单允许您快速访问以前保存的任何存储会话详细信息集。
    有关如何创建已保存会话的详细信息,请参见第4.1.2节。

3.1.3.4更改会话设置(change settings)
如果从系统菜单中选择“更改设置”,PuTTY将显示其初始配置框的精简版本。
这允许您调整当前会话的大多数属性。
您可以更改终端大小、字体、各种按键的动作、颜色等等。

主配置框中可用的一些选项没有显示在cut-down Change Settings框中。
这些选项通常在会话的中间没有任何意义(例如,您不能在会话中间从SSH切换到Telnet)。

您可以将当前设置保存到保存的会话中,以便将来使用。
有关保存的会话的更多信息,请参阅4.1.2部分。

3.1.3.5将所有内容复制到剪贴板(copy all to clipboard)
这个系统菜单选项提供了一种方便的方式来复制终端屏幕的全部内容(直到最后一个非空行),并一次滚动到剪贴板。

3.1.3.6清理并复位终端(Clearing and resetting the terminal)
系统菜单上的“Clear Scrollback”选项告诉PuTTY放弃从屏幕顶部滚动后保留的所有文本行。
例如,如果您显示敏感信息,并且希望确保没有人能够从您的肩膀上看到它,那么这可能是有用的。
(注意,这只会防止临时用户使用滚动条查看信息;
这段文字不能保证不会留在PuTTy的记忆里。

“重置终端”选项将导致终端模拟的完全重置。
vt系列终端是一种复杂的软件,很容易进入一种状态,所有打印出来的文本都变得不可读。
(例如,如果不小心将二进制文件输出到终端,就会发生这种情况。)
如果发生这种情况,选择Reset Terminal应该可以解决它。

3.1.3.7全屏模式(Full screen mode)
如果你发现最大化窗口的标题栏很难看或让人分心,你可以选择全屏模式来最大化PuTTy“更多”。
选择此选项时,PuTTY将展开以填充整个屏幕,其边框、标题栏和滚动条将消失。
(如果您想保留滚动条,可以将滚动条配置为全屏模式不消失; 见4.7.3。)

当您处于全屏模式时,如果单击屏幕左上角的鼠标左键,仍然可以访问系统菜单。

3.2创建会话日志文件

出于某些目的,您可能会发现希望记录屏幕上显示的所有内容。
您可以使用配置框中的“日志记录”面板完成此操作。

要开始一个会话日志,从系统菜单中选择“更改设置”并转到日志面板。
输入日志文件名,并选择日志模式。
(您可以记录包括终端控制序列在内的所有会话输出,也可以只记录可打印文本。
这取决于您想要日志做什么。
单击“应用程序”,您的日志将启动。
稍后,您可以回到日志记录面板,选择“日志记录完全关闭”停止日志记录;
然后PuTTY将关闭日志文件,您可以安全地读取它。

有关更多细节和选项,请参见第4.2节。

3.3修改字符集配置

如果你发现特殊字符(例如,重音字符或线描字符)没有正确显示在你的PuTTy会话,这可能是因为PuTTy是解释发送的字符显示服务器错误的字符集。有很多不同的字符集可用,而且没有什么让PuTTy知道字符集的好方法,所以这件事完全有可能发生。

如果单击“change settings”并查看“Translation”面板,您将看到大量可以选择的字符集和其他相关选项。
现在你需要做的就是找出你想要的!
(更多信息请参阅4.10节。)

3.4在SSH中使用X11转发

SSH协议能够安全地使用加密的SSH连接X Windows 系统图形应用程序,这样你就可以SSH服务器机器上运行一个应用程序,它使用X windows本地机器上而没有发送任何明确的X流量。

为了使用这个特性,您将需要一个适用于Windows机器的X显示服务器,例如Cygwin/X、X- win32或beyond。
这可能会将自己安装为本地机器上的显示号0;
如果没有,X服务器的手册应该会告诉您它的功能。

然后,在启动SSH会话之前,应该在X11面板的“启用X11转发”框中打勾(请参阅4.25节)。
’ X display location '框默认为空,这意味着PuTTY将尝试使用一个合理的默认值,比如:0,这是安装X服务器的通常显示位置。
如果这需要改变,那就改变它。

现在您应该能够正常登录到SSH服务器。
要检查在连接启动期间是否成功协商了X转发,可以检查PuTTY事件日志(参见3.1.3.1节)。
应该是这样的:

2001-12-05 17:22:01 Requesting X11 forwarding
2001-12-05 17:22:02 X11 forwarding enabled

如果远程系统是Unix或类Unix的,您还应该能够看到DISPLAY environment变量在SSH服务器机器本身上被设置为指向DISPLAY 10或更高:

fred@unixbox:~$ echo $DISPLAY
unixbox:10.0

如果这样做有效,那么您应该能够在远程会话中运行X应用程序,并让它们在您的PC上显示其窗口。

有关X11转发的更多选项,请参见4.25节。

3.5在SSH中使用端口转发

SSH协议能够通过加密的SSH连接转发任意网络(TCP)连接,以避免以明文方式发送网络流量。
例如,您可以使用它从您的家用计算机连接到远程计算机上的POP-3服务器,而不让网络嗅探器看到您的POP-3密码。

为了使用端口转发从本地计算机连接到远程服务器上的端口,您需要:

  • 在本地机器上选择一个端口号,PuTTY应该在其中侦听传入的连接。3000以上可能有大量未使用的端口号。(你也可以在这里使用本地环回地址;详情见下文)
  • 现在,在开始SSH连接之前,请转到隧道面板(参见4.26节)。确保“Local”单选按钮已设置。在“Source port”框中输入本地端口号。
    在“destination”框中输入目标主机名和端口号,用冒号分隔(例如,popserver.example.com:110连接到POP-3服务器)。
  • 现在点击“添加”按钮。

您的端口转发的详细信息应该出现在列表框中。现在启动会话并登录。(登录后才会启用端口转发功能;否则,就很容易执行完全匿名的网络攻击,并获得对任何人的虚拟专用网的访问权。要检查PuTTY是否正确设置了端口转发,可以查看PuTTY事件日志(参见3.1.3.1节)。应该是这样的:

2001-12-05 17:22:10 Local port 3110 forwarding to
         popserver.example.com:110

【翻译不易,转载请注明出处 衡与墨https://blog.csdn.net/le_17_4_6】
现在,如果您连接到本地PC上的源端口号,您应该会发现它准确地回答您,就好像它是在目标机器上运行的服务一样。
因此在本例中,您可以配置一个电子邮件客户机,将localhost:3110用作POP-3服务器,而不是popserver.example.com:110
(当然,当PuTTY会话关闭时转发将停止。)

您还可以将端口转发到另一个方向:安排将服务器机器上的特定端口号作为到PC或其附近的服务的连接转发回您的PC。
为此,只需选择“Remote”单选按钮,而不是“Local”单选按钮。
“源端口”框现在将在服务器上指定端口号(注意,大多数服务器不允许在此目的下使用1024以下的端口号)。

将本地连接转发到远程主机的另一种方法是使用动态SOCKS代理。
在这种模式下,PuTTY充当SOCKS服务器,支持SOCKS的程序可以连接到并打开转发到它们所选择的目的地的连接,因此这可以替代冗长的静态转发列表。
要使用此模式,您需要选择“Dynamic”单选按钮而不是“Local”,然后您不应该在“Destination”框中输入任何内容(它将被忽略)。
然后PuTTY将侦听指定端口上的SOCKS连接。
大多数web浏览器都可以配置为连接到这个SOCKS代理服务;
此外,您还可以通过设置代理控制面板来转发其他PuTTY连接(详细信息请参见4.15节)。
转发连接的源端口通常不接受来自任何机器的连接,SSH客户机或服务器机器本身除外(分别用于本地转发和远程转发)。
隧道面板有一些控件可以改变这一点:

  • “本地端口接受来自其他主机的连接”选项允许您设置本地到远程端口转发(包括动态端口转发),以便您的客户端PC以外的机器能够连接到转发的端口。
  • “远程端口执行相同的操作”选项对远程到本地端口转发执行相同的操作(以便SSH服务器以外的机器可以连接到转发的端口)。
    注意,这个特性只在SSH-2协议中可用,并不是所有的SSH-2服务器都支持它(例如,在OpenSSH中,它通常在默认情况下是禁用的)。

您还可以指定要监听的IP地址。通常,Windows机器可以被要求监听127.*.*中的任何一个IP地址。*范围,所有这些都是只对本地机器可用的环回地址。因此,如果将(例如)127.0.0.5:79转发到远程机器的finger端口,那么应该能够运行finger [email protected]这样的命令。
如果连接到转发端口的程序不允许您更改它使用的端口号,那么这将非常有用。此功能可用于本地到远程转发端口;SSH-1无法支持远程到本地端口,而SSH-2理论上可以支持远程到本地端口,但服务器不一定会合作。

(请注意,如果您使用的是Windows XP Service Pack 2,那么您可能需要从Microsoft获得一个补丁,以便使用127.0.0.5这样的地址—请参见问题a .7.17)。

有关端口转发的更多选项,请参阅第4.26节。

如果您通过SSH转发的连接本身就是另一个PuTTY副本创建的第二个SSH连接,那么您可能会发现“logical host name”配置选项对警告PuTTY它应该接收哪个主机密钥有用。有关详细信息,请参阅4.13.5节。

3.6建立原始TCP连接

许多Internet协议都是由纯文本的命令和响应组成的。
例如,SMTP(用于传输电子邮件的协议)、NNTP(用于传输Usenet新闻的协议)和HTTP(用于服务Web页面的协议)都由可读的纯文本命令组成。

有时直接连接到这些服务之一并通过“手动”输入协议命令和观察响应对描述协议是很有用的。在Unix机器上,可以使用系统的telnet命令连接到正确的端口号。例如,telnet mailserver.example.com 25可能使您能够直接与邮件服务器上运行的SMTP服务通信。

尽管Unix telnet程序提供了这种功能,但是所使用的协议并不是真正的telnet。实际上根本就没有真正的协议;发送到连接的字节就是您输入的字节,屏幕上显示的字节就是服务器发送的字节。Unix telnet将尝试检测或猜测它所交谈的服务是否是一个真正的telnet服务;PuTTy喜欢别人告诉他确切的情况。

为了对这种类型的服务进行调试连接,只需从“session”配置面板中的“protocol”按钮中选择第四个协议名称“Raw”。
(参见以下4.4.1节)。
然后您可以输入主机名和端口号,并进行连接。

3.7连接本地串行线

PuTTy可以直接连接到本地串行线,作为网络连接的替代方案。
在这种模式下,输入到PuTTY窗口的文本将直接从计算机的串口发送出去,通过该端口接收的数据将显示在PuTTY窗口中。
例如,如果您的串行端口连接到另一台具有串行连接的计算机,则可以使用此模式。

要建立这种类型的连接,只需在“会话”配置面板上的“连接类型”单选按钮中选择“Serial”(参见4.1.1节)。
“主机名”和“端口”框将转换为“串行行”和“速度”,允许您指定在传输数据时使用哪个串行行(如果您的计算机有多个串行行)和使用什么速度(波特率)。
对于进一步的配置选项(数据位、停止位、奇偶校验、流控制),您可以使用“串行”配置面板(参见4.28节)。

在串行模式下启动PuTTY之后,您可能会发现必须采取第一步,即从串行行发送一些数据,以便通知另一端的设备有人可以与之通信。
这可能取决于设备。
如果启动PuTTY串行会话,但窗口中没有任何内容,请尝试按几次Return,看看是否有帮助。

串行行没有为连接的一端提供定义良好的方法来通知另一端连接已经完成。
因此,串行模式下的PuTTy将保持连接,直到您使用关闭按钮关闭窗口。

【翻译不易,转载请注明出处 衡与墨https://blog.csdn.net/le_17_4_6】
未完待续

猜你喜欢

转载自blog.csdn.net/le_17_4_6/article/details/85836011