大致内容罗列如下:

·        最简单的使用,登录 SSH主机

·        中文乱码的处理

·        PuTTY常用配置的说明

·        复制、粘贴

·        保存会话

·        注销

·        PuTTY的 X11转发

·        如何用 PuTTY建立 SSH隧道

·        如何用 PuTTY建立反向的 SSH隧道,像个特洛伊木马一样突破防火墙

·        把 PuTTY作为一个安全的代理服务器

·        安全的上网不被嗅探

·        避免 MSN等聊天工具被监听

·        怎样用 PSCP、PSFTP安全的传输文件

·        功能强大的 SFTP客户端 WinSCP

·        用 PuTTYgen生成密钥,登录 SSH主机不再需要口令

·        Pagent代理密钥,每次开机只需要输入一次密钥口令

·        Plink简单而又迅速的执行 SSH主机上的程序

如果你已经知道 SSH、Telnet、Rlogin这是什么,就跳过这一部分,看下面的吧。

PuTTYhttp://www.chiark.greenend.org.uk/~sgtatham/putty/



PuTTY 是一个跨平台的远程登录工具,包含了一组程序,包括:

·        PuTTY (Telnet和 SSH客户端)

·        PSCP (SCP客户端,命令行下通过 SSH拷贝文件,类似于 Unix/Linux下的 scp命令)

·        PSFTP (SFTP的命令行客户端,类似于 FTP的文件传输,只不过使用的是 SSH的 22端口,而非 FTP的 21端口,类似于 Unix/Linux下的 sftp命令)

·        PuTTYtel (仅仅是一个 Telnet客户端)

·        Plink (命令行工具,执行远程服务器上的命令)

·        Pageant (PuTTY、PSCP、Plink的 SSH认证代理,用这个可以不用每次都输入口令了)

·        PuTTYgen (用来生成 RSA和 DSA密钥的工具).

虽然包含了这么多,但平时经常见到只是用 PuTTY登录服务器,完全没有发挥出 PuTTY的强大功能。

PuTTY 作为一个组件也存在于很多的软件中,比如 FileZilla、WinSCP

在后面的文字中,如非特别说明,默认的登录的协议是 SSH。毕竟用 PuTTY主要就是登录SSH主机,用 Telnet、RLogin没法体现出 PuTTY的强大功能。

PuTTY是一个准绿色软件,说它绿色是因为直接就能使用,完全没有任何的安装程序。准绿色是指 PuTTY的所有配置都保存到了注册表,如果不记得备份注册表中的相关内容,下次重装机器所有配置就没了,而且配置也不方便用闪存盘随身携带。但是 PuTTY的配置删除还是蛮方便的,运行时指定个参数 -cleanup就可以清除 PuTTY的所有配置信息

运行 PuTTY就可以看到下面这个界面

在这里输入服务器的 IP或主机名,选择好登录协议,还有协议的端口,如果希望把这次的输入保存起来,以后就不需要再重新输入了,就在第4步输入好会话保存的名称,比如:mail-server,或者干脆就是主机的地址,点击保存就可以了。



最后点下面的 Open按钮,输入正确的用户名和口令,就可以登录服务器了。

第一次登录时,会看到这个对话框



这是要告诉你登录的主机密钥指纹,点 Yes就保存起来,以后就不会再弹出这个窗口,然后就正常登录。点 No不保存,下次还是要提示你,然后也可以正常登录。如果一台主机我们只是临时登录一下,当然就是点 No了。Cancel就是取消,也就是取消了这次登录。

如果你曾经登录过这台主机,但是又弹出来这个对话框,可能有以下几种情形:

·        主机重新安装了操作系统

·        这台主机可能有多个IP,这次用的是另外一个 IP

·        有其他不怀好意的主机来冒充,诱骗我们登录,窃取隐秘信息

成功登录主机后,输入命令,这……这……显示,又是乱码。唉,中文乱码是一个老生常谈的问题,提起来就头大。原因嘛,不外乎字符集、终端编码之类的,还是可以解决的。

PuTTY 的默认字体和字符集并不适合中文显示,在窗口标题上点击右键,选择 Change Settings...



在打开的配置窗口左边选择 Appearance,在右边点 Font settings 里面的 Change按钮,选择好中文字体,比如:宋体、新宋体之类的



字体选择好了,还要确定字符集

选择配置窗口左边的 Translation,在右边的 Received data assumed to be in which character set 下拉列表中选择最后一个“Use font encoding”,最后点下面的 Apply 按钮就生效了。



重新执行命令 ls -l,就可以正常看到中文了

如果还是乱码的话,就执行以下命令,看看系统的字符集

echo $LANG $LANGUAGE



哦,原来系统的字符集是 UTF-8呀。重新返回上面选择字符集的那一步,选择配置窗口左边的 Translation,在右边的 Received data assumed to be in which character set下拉列表中选择“UTF-8”



这下99%的情形下,汉字是不会有乱码了。最后,总之一下 PuTTY中乱码的解决办法:

先看看系统的字符集,如果是 UTF-8的,那就简单了,选择好中文字体,然后编码选择UTF-8就行了。

如果编码是 GB2312、GBK、GB18030,当然也包括 BIG5这些,在 PuTTY的编码选择中看不到这些编码,那就选择最后一个“Use font encoding”,绝大部分情况下这样就没啥问题了,反正我是没碰到有什么例外的情况。

现在的 Linux如果默认语言选择为中文,默认的编码就是 UTF-8了。以前安装 Redhat AS 3时,语言选择为中文,默认的编码是 zh_CN.gb2312, zh_CN.gb18030,好像从 AS 3 update 6开始,包括现在的 AS4、AS5,中文的默认编码都成了 zh_CN.utf8。至于 Debian、Ubuntu等等这些上面,好像一直都是 UTF-8。

至于是使用 UTF-8呢,还是用 GB2312、GBK或者 GB18030呢?我个人还是倾向于 UTF-8。毕竟我们使用的大多数软件都是国外的,处理中文编码多多少少有些问题,PuTTY自然也不例外。

下面的这个图上,我把终端编码修改为 zh_CN.utf8,然后也按照前面的所说的方法把PuTTY 的字符集修改为 UTF-8。然后在终端中输入汉字“柴锋”,按左方向键,可以看到汉字显示很正常。



我重新把终端的编码修改为 zh_CN.gb2312,同样的,把 PuTTY 的字符集修改为最后一个“Use font encoding”。还是在终端上输入汉字“柴锋”,按下左方向键以后,会看到汉字乱码了。



至于用哪个编码,主要还是看领导的决定了,我们的领导就喜欢 GBK,连 GB18030 都不行。以前在用 Debian的时候,好像默认都不支持 GBK编码。这几年公司的开发在汉字编码问题上出过几次麻烦,还不就是在 ISO8859-1, GB2312/GBK/GB18030和UTF-8上折腾来折腾去。

给大家看一张 emacs的截图,看看上面的这么多语言的文字共同显示,这个会是用GB2312/GBK/GB18030的编码么?



用 UTF-8也不是为了要在一个屏幕上显示好几种不认识的文字,也不一定非要是跟国际接轨弄个外包给老外开发程序做个其他语言的界面让老外用,起码不要在那么多编码里折腾了,顶多两个 ISO8859-1和 UTF-8。发发牢骚,下面继续……

在 PuTTY的窗口里面复制、粘贴可不能用 Windows里的这些 Ctrl C, Ctrl Ins, Ctrl V这些快捷键,Ctrl C在控制台上可是终止当前的命令执行

PuTTY 的选择、复制、粘贴这些操作都是通过鼠标来完成的。

在 Window-〉Selection这里可以设置复制和粘贴的方式。



默认的 Action of mouse buttons(鼠标按键的功能)的选项是 Compromise,这种方式下选中有两种方式,一是直接用鼠标左键拖拉选中就可以了,二是用鼠标中键单击选中区域的开头,用滚动条拖拉到期望选中区域的末尾,再用鼠标中键单击,就可以选中了。

选中以后,单击鼠标左键就把选中部分复制到剪贴板了。粘贴也很简单,单击鼠标右键。

Action of mouse buttons 的第一个选项是 Windows(Windows方式的),鼠标中键的操作跟前面提到的一样。右键不是粘贴了,而是打开了右键菜单。



其实这个右键菜单在标题栏上点击,也都可以看得到。

第三个选项是 xterm(xterm方式),这个跟默认的 Compromise方式相反的,中键和右键的操作调换了一下,就不多说了。

下面那个 Shift overrides application's use of mouse是和 Shift键有关的。有些 Rogue Like的程序,比如 mc、links、Lynx、VIM等等,都支持鼠标操作,想在用鼠标在上面选择或粘贴就不行了。这个选项默认是选中的,在支持鼠标操作的 Rogue Like界面下,按住Shift键,就可以像前面的那样用鼠标来选择、复制、粘贴了。

看下面的这个图片,用 Links打开了 Google的首页,用鼠标去选中顶部中间的 Google,我们会发现,弹出了保存的对话框。

按住 Shift键重新操作一次,哈哈,这次选中了。



在 Control use of mouse里面还有个 Default selection mode(默认的选择模式),默认是Normal,就像文字处理工具里这样的选择

另外一个是 Rectangular block(块选择方式),至于用哪种方式就看自己的选择了。

这次更改配置参数了,关闭窗口后,下次使用还是要重新选择的,麻烦。

还是回到上面修改配置的哪个地方,选择左边的 Session,在右边选择要覆盖的会话名称,或者重新输入一个新的名称,点击 Save 按钮保存。

应该输入命令 exit来正常注销;其次直接关闭窗口后,你的登录其实还在服务器上,如果一连多次的这样强制关闭窗口,用命令 w或者 who命令查看时,可以看到很多的用户还在系统上登录,占用了系统的资源。最重要的是,你的这次登录可能只是为了启动一下WebLogic或者其他什么应用服务器,直接关闭窗口后,可能会导致你的业务在随后的几分钟内也被终止,这应该不是你所希望看到的吧。

如果上述的理由是每次要输入exit然后回车,比较麻烦。你可以用快捷键 Ctrl d来注销登录,一般情况下,快捷键一按窗口都直接关闭了,还省了两次鼠标点击。

在前面说道保存会话时,大家或许也注意到,下面有个 Close window on exit有三个选项:

·        Always(不管怎样,窗口总是要关闭的)

·        Never(无论是否有程序还在运行,都不要关闭窗口)

·        Only on clear exit(这个是默认选中的,只有在本次登录中运行的程序都正常终止或者在后台运行,窗口才关闭)

有的程序在执行时,虽然在命令最后面加上 “&”就能放到后台运行。但是正常注销登录后,窗口没有被自动关闭,还能看到程序的输出,这时强制关闭窗口还是可以的。为了避免这种情形,可以使用 nohup 命令。

用法嘛就是: nohup命令命令参数,这样就可以了。

执行了一个命令,输出了好多东西,但是默认的配置下,PuTTY只保存了最后200行的内容,满足不了我们的需求

补充一下,如何更改一下putty终端的颜色

Putty的用法的更多相关文章

  1. 【Linux】SSH证书免密码远程登陆Linux(Putty)

    1.前言 新购置一台便宜服务器做数据库服务器,减轻Web服务器的压力. 为了安全性,root密码设置的非常复杂(随机生成),厌倦了拷贝密码登陆的历史. Putty基本用法都不会的请先花10分钟自行学习 ...

  2. 方便简单的远程控制:putty和WinSCP

    记录一下WinSCP和putty的用法. putty:远程cmd窗口,在本机通过命令行操作服务器,并且拿到运行结果.而本机只有连接作用,大大减小了负担. 登陆界面输入ip地址,没有特殊情况,默认选项就 ...

  3. Putty中的pscp和psftp的简明用法

    用习惯了putty,那是真心的方便啊,putty文件夹下其他的小兄弟也不能忽略啊. 以前的时候,从远程服务器下载个文件用winscp,后来,发现在putty文件夹里好像有一个 pscp和psftp,今 ...

  4. 记录一下putty的pscp的用法【转】

     转自 记录一下putty的pscp的用法 - 刘荣星的博客 https://www.liurongxing.com/how-use-the-putty-and-pscp.html 以前一直用Secu ...

  5. putty提供的两个文件传输工具PSCP、PSFTP详细介绍

    用 SSH 来传输文件 PuTTY 提供了两个文件传输工具 PSCP (PuTTY Secure Copy client) PSFTP (PuTTY SFTP client) PSCP 通过 SSH ...

  6. Linux的学习--使用PuTTY

    交代一下背景,在笔记本上装虚拟机,在虚拟机里装了Ubuntu系统,但用着一直感觉很卡.刚好同学有旧的不用的笔记本,就拿来装了一个Ubuntu. 想要从我的笔记本上控制Ubuntu系统,于是就找到了pu ...

  7. CentOS的SSH,Putty配置说明

    基本资源: CentOS5.5 (32位) , Mysql6.0 ,Putty ,SSH   Step: 1.VMWare中装好CentOS    A. 可能存在ifconfig等命令无法正常识别) ...

  8. PuTTY 中文教程

    PuTTY 中文教程 更新记录 2006-11-29初步完成想写的这些东西 2007-06-11PuTTY 的最新版本到了0.6:修改了一下 SSH 隧道:添加了 SSH 反向隧道:添加了用 SSH ...

  9. 使用PuTTY在Windows中向Linux上传文件

    为了防止无良网站的爬虫抓取文章,特此标识,转载请注明文章出处.LaplaceDemon/SJQ. http://www.cnblogs.com/shijiaqi1066/p/3843207.html ...

随机推荐

  1. 解决mysql开启GTID主从同步出现1236错误问题【转】

    最近遇到mysql开启gtid做复制时,从库出现1236错误,导致同步无法进行,本文就这问题记录下处理步骤,有关gtid知识在这里不做介绍,mysql版本为5.7.16. 一.错误原因分析 错误信息如 ...

  2. 017_nginx重定向需求

    重定向的各种需求 需求一. 前端同事需要把特定的url进行重定向,实现如下: location / { root /data/base.apiportal_opsweb; index index.ht ...

  3. 内核中 subsys_initcall 以及初始化标号

    今天在看内核中无线的实现时,发现一个调用 subsys_initcall(cfg80211_init);搜索一些资料: subsys_initcall 的定义在 include/linux/init. ...

  4. 统一异常处理@ExceptionHandler

    异常处理功能中用到的注解是:@ExceptionHandler(异常类型.class). 这个注解的功能是:自动捕获controller层出现的指定类型异常,并对该异常进行相应的异常处理. 比如我要在 ...

  5. java.net.ServerSocket 解析

    注:本文来自:简书:jianshu 作者:jijs链接:http://www.jianshu.com/p/7c0722a8b66f來源:简书著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注 ...

  6. js字符串截取为数组

    var str="hello,word,java,eclipse,jsp"; //字符串截取为数组 var strArr=str.split(","); for ...

  7. Laravel collection 报错 join(): Invalid arguments passed

    混淆了 array 与 collection,join 并不支持 collection. array 与 collection 不同的 join 实现 collect([1, 2, 3, 4, 5]) ...

  8. python 全栈开发,Day123(图灵机器人,web录音实现自动化交互问答)

    昨日内容回顾 . 百度ai开放平台 . AipSpeech技术,语言合成,语言识别 . Nlp技术,短文本相似度 . 实现一个简单的问答机器人 . 语言识别 ffmpeg (目前所有音乐,视频领域,这 ...

  9. C++传值、传引用

    C++传值.传引用 C++的函数参数传递方式,可以是传值方式,也可以是传引用方式.传值的本质是:形参是实参的一份复制.传引用的本质是:形参和实参是同一个东西. 传值和传引用,对大多数常见类型都是适用的 ...

  10. (第1篇)什么是hadoop大数据?我又为什么要写这篇文章?

    摘要: hadoop是什么?hadoop是如何发展起来的?怎样才能正确安装hadoop环境? 这些天,有很多人咨询我大数据相关的一些信息,觉得大数据再未来会是一个朝阳行业,希望能尽早学会.入行,借这个 ...