zoukankan      html  css  js  c++  java
  • PuTTY配置

    目录

    1、作用?

    2、中文问题解决 ?

    3、GUI支持?

    4、使用密钥对实现安全快捷的无密码登陆?

    5、操作习惯(Alt+Enter全屏以及字体配置)

    6、附录(sshd服务器配置)

    1、作用?
    PuTTY是一个Telnet、SSH、rlogin、纯TCP以及串行接口连接软件,一般我都用它远程访问LINUX主机,另一个著名的类似软件是SecureCRT。
    两者相比,PuTTY有几个明显的优势:
    • 免费;
    • 缺省配置就很好用,SecureCRT不是为LINUX准备的,需要经过一番配置才能使用得顺手;
    • SecureCRT对VIM的支持有问题,这也是我几乎不用它的原因,我的代码编辑都需要VIM;
    2、中文问题?
    默认情况下PUTTY使用系统的编码,而WINDOWS的编码是GBK。
    大部分情况下,LINUX的编码是UTF-8,这时中文将显示为乱码。在Linux用如下命令查看编码
    $locale

    显示

    LANG=zh_CN.UTF-8
    LC_CTYPE="zh_CN.UTF-8"
    LC_NUMERIC="zh_CN.UTF-8"
    LC_TIME="zh_CN.UTF-8"
    LC_COLLATE="zh_CN.UTF-8"
    LC_MONETARY="zh_CN.UTF-8"
    LC_MESSAGES="zh_CN.UTF-8"
    LC_ALL=

    Putty应配置成与Linux一样的编码方式才能正常显示中文,具体步骤:

    Window->Translation,将Rmote character set设置为UTF-8,保证中文能够正常显示
    3、GUI(X程序)支持?
    平时我用putty远程到LINUX上,会在上面写些QT测试程序,可是GUI程序在LINUX主机上,需要通过一定手段将界面传送到本地,这就需要在Windows上装上X SERVER以实现远程 使用GUI程序。
    我平时都使用Xming,一直觉得功能不错,关于LINUX上的GUI显示到本地的基本原理及Xming安装,请参考Xming X Server 配置和使用》
     
    这里我描述下基本原理,和Putty和LINUX端的配置,主要也是参考上面这篇文章整理所得。
    基本原理:
    LINUX下的OpenSSh具有X转发功能,将LINUX主机的X程序通过SSH的管道转发给客户端,于是当putty(或SecureCRT)
    连接到主机,接收到LINUX主机转发回来的程序的交互时,将其交给WINDOWS系统下的X SERVER来管理和显示,这样就可以远程使用LINUX的X程序。
     
    Linux要配置SSH服务器允许X11转发。
    编辑/etc/ssh/sshd_config, 找到X11Forwarding这一行,如果没有则手动添加:
    X11Forwrding yes  #允许X11转发
    putty的配置
    Connection->SSH->X11,按照下图配置,即可。
     
     
     4、使用密钥对实现安全快捷的无密码登陆?
     每次登陆Linux都要输密码是不是有点烦?看到SecureCRT可以保存密码是不是有点心动?不用急,PuTTY也有,而且更安全,那就是使用密钥认证方式登陆。
    使用Putty工具集中的puttygen.exe生成密钥对,如下图所示:
     图中显示的一长串的字符串是公钥,下面可以写入注释(一般用自己的邮件名),以及给私钥设密码,该密码用于保护私钥,防止私钥丢失被人盗用,在登陆时如果有设密码会要求输入,注意这个密码与之前登陆用的密码并不一样,私钥的密码不会传输到网络上。由于我们要实现无密码登陆,所以这里不要给私钥加密。
    生成完后,记得保存私钥,后面需要用到,公钥可以不保存,用该软件打开私钥就可以查看公钥。
     
    登陆LINUX,将公钥写入到SSH的认证文件中:
    $cd ~
    $mkdir .ssh
    $chmod 700 .ssh
    $cat > .ssh/authorized_keys
    ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAhDdHT0KV+2fM7+w7Q0d+H4tQSzdcqUJGiWhjJRbn254KE5yOh/X23/14m4nmgeq2Tbs6hx7c6YZVgLaoTpGMz/9Lmwz16wEiuRu1xzIZFTU+TqTLNrrYBziWz1SkREwD4V7iaKp3YTaEykpDc+nCZSb0gv8i1+mfj9Lxt0fNxTqF+otf8oWCCsN4a8rgZnEjYcCYqO7v/vOY2v14en8OjMWberfNFEuD5Ld8t/5up7LMtlKiYakjvM0GFjWmBu1+TvdW7BefU4wgUgBHwbjpnpJiOKZ/1NjjXOK1en0ZzKsN5awuNWycuiRJ89IFCesY0UfC3hCjnjyy3F+zJsUOKw== pheye_rsa-key-20140403
    (将公钥内容拷贝过来,然后按Ctrl+D退出编辑)
    $chmod 600 .ssh/authorized_keys

    打开PuTTY,加载对应的Session,设置登陆名称:

    connection->Data->Auto-login username
     以及设置私钥文件(Connection->SSH->Auth):
    保存Session, 以后登陆就不用再输密码了。
     
    5、操作习惯(Alt+Enter全屏以及字体配置)?

    a)由于长时间在LINUX上编辑代码时,自然要将PuTTY配置得舒适些。

    编辑代码时,我都会将PuTTY切成全屏,默认PuTTY不支持Alt+Enter进行全屏切换,按如下界面修改即可支持。
    Window->Behaviour

    b)建议进入Window->Apperance根据自己习惯调整字体。     

    平时我使用Monaco或Courier字体,12号,粗体。
    6、附录
    如果依据本文章配置无法达到目的,请先检查下LINUX上SSH服务器的配置文件/etc/ssh/sshd_config是否正确,以下是本篇文章相关的一些配置,仅供参考。
    PermitEmptyPasswords no  #不允许空密码登陆
    PasswordAuthentication yes  #允许密码方式登陆
    PermitRootLogin no #不允许ROOT登陆
    RSAAuthentication yes #允许RSA认证,必须yes
    PubkeyAuthentication yes #允许公钥认证,必须yes
    AuthorizedKeysFile  %h/.ssh/authorized_keys #用于用户认证的公钥文件名称,%h表示用户家目录
    #有关X11的配置
    X11Forwarding yes #允许X11转发
     
  • 相关阅读:
    CSS learnning...
    软件工程课程建议
    结对编程(三)
    结对编程(二)
    关于结对编程的感想
    关于“Durian”调查问卷的心得体会
    我的软件工程课目标
    软件工程课程建议
    进阶版《结对编程》
    结对编程实现四则运算
  • 原文地址:https://www.cnblogs.com/pheye/p/3644104.html
Copyright © 2011-2022 走看看