Chinaunix首页 | 论坛 | 博客
  • 博客访问: 108230
  • 博文数量: 16
  • 博客积分: 1425
  • 博客等级: 上尉
  • 技术积分: 216
  • 用 户 组: 普通用户
  • 注册时间: 2009-03-04 14:29
文章分类

全部博文(16)

文章存档

2014年(1)

2010年(7)

2009年(8)

我的朋友

分类: LINUX

2009-04-10 18:18:14

putty我用的最多的ssh工具,也觉得很实用。但是,只是会有putty.exe。它的兄弟姐妹只是见过,基本上没点过没看过。今天心血来潮,想看看这些东东怎么用,有啥好功能,能够为己所用。
 
putty网站
下载网址
 
包含的软件如下
putty.exe
puttygen.exe
psftp.exe
pscp.exe
plink.exe
pageant.exe
 
下面就一一介绍,各位看客有啥想法或补充的,可以回复评论。我会更正。
 
putty我就先不介绍,实在是说简单了,就是可以作为ssh,telnet的工具。实际上里面的参数实在太多,写一本书绰绰有余。不过,我会在后面把我常用到的一些参数列出来。
 
1.先介绍plink
plink是一个在windows指令模式下,连接linux和unix的工具,它没有putty的图形窗口。完全是在command窗口中运行。
指令格式:  plink [options] [user@]host [command]
同时 host能够使用putty里面保存主机名称
最简单的指令如下:
E:\putty>plink
Using username "root".
password:
Last login: Fri Apr 10 16:52:24 2009 from 192.168.100.245
←]0;root@vmware:~[root@vmware ~]#
这样就能够在DOS下登录到linux机器进行操作了
 
具体参数:
Options:
  -V        显示版本
  -pgpfp    显示PGP密钥信息
  -v        显示指令详细信息
  -load sessname  调用现有保存的session
  -ssh -telnet -rlogin -raw
            强制使用指定协议
  -P port   连接到指定端口
  -l user   使用指定帐号连接
  -batch    关闭交互信息显示
以下参数仅仅适用于ssh
  -pw passw 登录密码
  -D [listen-IP:]listen-port
            Dynamic SOCKS-based port forwarding
  -L [listen-IP:]listen-port:host:port
            Forward local port to remote address
  -R [listen-IP:]listen-port:host:port
            Forward remote port to local address
  -X -x     enable / disable X11 forwarding
  -A -a     enable / disable agent forwarding
  -t -T     enable / disable pty allocation
  -1 -2     强制设定SSH协议版本,SSH1或SSH2
  -4 -6     强制设定IP协议,IPv4 或 IPv6
  -C        启用压缩功能
  -i key    使用私钥认证
  -noagent  禁用Pageant
  -agent    启用Pageant
  -m file   从文件中读取操作指令
  -s        指令运行在SSH子系统(SSH-2 only)
  -N        don't start a shell/command (SSH-2 only)
  -nc host:port
            open tunnel in place of session (SSH-2 only)
 
2.pscp介绍
pscp相当于scp的windows版本。用于和远端主机进行加密复制传输文件
指令格式:
pscp [options] [user@]host:source target
pscp [options] source [source...] [user@]host:target
pscp [options] -ls [user@]host:filespec
第一个,用于从远端主机复制到本地
第二个,本地的文件复制到远端主机
第三个,罗列远端主机的文件清单信息
 
常用方法: pscp PUTTY.CHM
 
具体参数:
  -V        显示pscp版本
  -pgpfp    显示PGP密钥指纹信息
  -p        保持文件属性
  -q        不显示统计结果
  -r        复制目标目录下的所有目录
  -v        显示详细信息
  -load sessname  导出已有的session的配置
  -P port   连接至特定借口
  -l user   连接到指定帐户
  -pw passw 使用指定密码
  -1 -2     强制使用指定的SSH版本
  -4 -6     强制使用IPv4或IPv6
  -C        使用压缩传输模式
  -i key    提供私钥认证
  -noagent  禁用Pageant
  -agent    启用Pageant
  -batch    禁用所有交互提示信息
  -unsafe   允许在远端主机使用通配符方式 (非安全模式)
  -sftp     强制使用SFTP协议
  -scp      强制使用SCP协议
 
3.介绍psftp
psftp是加密ftp模式,使用方式和ftp相同
常用格式:psftp [options] [user@]host
参数说明:
  -V        显示pscp版本
  -pgpfp    显示PGP密钥指纹信息
  -b file   使用指定的批处理文件
  -bc       输出批处理文件命令信息
  -be       在批处理出现错误时,不停止批处理
  -v        显示详细信息
  -load sessname  导出已有的session的配置
  -P port   连接至特定借口
  -l user   连接到指定帐户
  -pw passw 使用指定密码
  -1 -2     强制使用指定的SSH版本
  -4 -6     强制使用IPv4或IPv6
  -C        使用压缩传输模式
  -i key    使用私钥进行认证
  -noagent  禁用Pageant
  -agent    启用Pageant
  -batch    禁用所有交互提示信息
 
4.介绍pageant
pageant是putty的认证代理工具,直接运行程序后,会以一个小图标显示在右下角中。主要作用是管理私钥,可以将个人的私钥加入到pageant,之后需要登陆服务器时,第一次登陆使用私钥访问输入密码后,会将密码保存,之后就无需再重复输入密码。
 
5.介绍puttygen
用于产生密钥的工具。
 
在putty中使用密钥的方式进行ssh登录
利用密钥登录openssh的优点如下
a. 可以使用同一的密钥密码登录不同的主机,甚至无需使用密码登录远程主机(当然这个是非常危险的)
b. 可以利用pageant来管理密钥,输入一次密钥的密码就可以自动登录主机了。
c. 避免linux帐号密码泄漏的问题。
 
操作步骤如下:
a.开启puttygen
点击generate, ,默认的算法是SSH-2 RSA ,它会自动去生成一对密钥,一个是公钥(public key) 一个是私钥(private key). 在界面上,会有key passphrase对密钥设置密码增强密钥安全。当然,你也可以不设置任何密码。这样在登录远程主机的时候,就无需输入密码,直接登录。
 
点击save private key,就可以将密钥保存了。
同时,将public key下面的文本框内的内容,复制到linux主机,所要登录帐号的默认目录下的.ssh/authorized_keys的文件内。如果该目录下没有这个目录和文件,则需要手动建立,并且将该文件的读写属性改为600。
 
b.开启putty。
a.在session部分,输入IP和保存的session的名称
b.在connect->data部分,在auto-login username中输入登录帐号,也就是公钥所保存位置的帐号
c.在connect->ssh->auth部分,在private key file for authentication:中将密钥所在的路径和文件名输入
d.在session部分,点击save
e.点击下面的open按钮,弹出的窗口显示下面信息
Using username "xxxx".
Authenticating with public key "rsa-key-xxxxxxxx"
Passphrase for key "rsa-key-xxxxxxxx":
输入私钥的密码,而不是登录用户名密码,就可以登录了
c.利用pageant做自动登录
开启pageant,右键点击pageant的logo,在弹出窗口选择add key,然后将所用的私钥选择打开。私钥如果有密码,会提示输入,输入密码后,该私钥则保存在pageant中了。当用户打开已有的session时,会自动先寻找pageant中的私钥进行匹配,如果匹配成功就直接登录,无需输入私钥的密码。
 
6.putty介绍
putty可以通过指令直接登录,而无需通过界面进行登录
常用指令方式
putty.exe [-ssh | -telnet | -rlogin | -raw] [user@]host
如果调用已有的session,则使用
putty.exe -load “session name”
 
要清除所有session记录,可以通过-cleanup来实现。
 
 
7.putty小技巧
7.1 利用Putty实现代理服务器使用
这个功能介绍的比较多,主要是可以通过ssh模式连接到其他IP建立隧道tunnel,然后在IE代理服务器中设置socks代理。
配置连接方式有两种,
一种通过putty,在putty的配置界面 Connection->SSH->Tunnels 在source port输入7070(也可以输入其它端口),选择Dynamic,点击Add按钮
一种通过plink, 在命令行界面,输入plink -N -D 7070
 
然后在浏览器中,设置代理服务器,选择socks模式,IP输入127.0.0.1 端口设置为7070 就可以使用代理服务器了。
 
7.2 如何备份putty的配置信息
未来方便,我们会把一些常用的session保存,方便连接的使用。而putty的session完全保存在注册表中,而不是配置文件。所以在备份session的方法中可以参考putty的帮助"4.26 Storing configuration in a file"
按照上面的操作,做一个BAT文件,里面包括以下代码
@ECHO OFF
regedit /s putty.reg
regedit /s puttyrnd.reg
start /w putty.exe
regedit /ea new.reg HKEY_CURRENT_USER\Software\SimonTatham\PuTTY
copy new.reg putty.reg
del new.reg
regedit /s puttydel.reg
在执行这个BAT文件,就会生成一个putty.reg的文件
 
 
 

 
 
阅读(5479) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~