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) |