`
liyuan1943
  • 浏览: 18340 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

SSH客户端之SSH Secure Shell 的连接方法

阅读更多
一、SSH客户端之SSH Secure Shell 的连接方法

1、运行环境
WINDOWS下安装SSH客户端,名字是SSHSecureShellClient-3.2.9.exe,可以到http://www.ssh.com/下载,当然了,在SERVER端我们也可以安装Openssh,但此文章着重介绍的是ssh的技术,所以我们使用的是http://www.ssh.com/ for UNIX/LINUX 的SERVER 端,现在最新版本是ssh-3.2.9-1.i386.rpm(如果你是AIX或者SOLARIS,要下不同的版本,这里以RHCE3为例子)。确定把UNIX类主机的默认的Openssh全部卸载掉后安装ssh-3.2.9-1.i386.rpm。

2、为什么要公私钥认证方法(连接到主机不输入密码)
我们需要知道Publick Key是指公钥,而private key是指私钥。认证的过程是这样的:public key对数据进行加密而且只能用于加密,private key只能对所匹配的public key加密过的数据进行解密。我们把public key放在远程系统合适的位置,然后从本地开始进行ssh连接。此时,远程的sshd会产生一个随机数并用我们产生的public key进行加密后发给本地,本地会用private key进行解密并把这个随机数发回给远程系统。最后,远程系统的sshd会得出结论——我们拥有匹配的private key允许我们登录。就这么简单!

3、在本机生成密钥过程
WINDOWS下寻找ssh-keygen2.exe文件,这是生成密钥的文件,我的在C:\Program Files\SSH Communications Security\SSH Secure Shell,在DOS下执行这个文件,方法是
C:\Program Files\SSH Communications Security\SSH Secure Shell> ssh-keygen2 -t rsa
我用的是rsa的密钥,默认是2048位,足够我们用的了,还可以使用dsa方式的密钥。我就不在这里说明了
系统自动生成密钥对,默认放在C:\Documents and Settings\XXX\Application Data\SSH\UserKeys目录下,其中XXX是你执行程序时用的帐户,默认名称是id_rsa_2048_a和id_rsa_2048_a.pub,而后者就是我们要传到服务器上的公钥。(生成密钥对的同时让你输入一个密码,因为我们想不输入密码直接登陆服务器,所以就直接回车了,但如果你想更安全一些,还是建议你在这里也输入密码。)

4、用SSH客户端从本机登陆到远程UNIX类服务器上
我们还按以前的方法登陆到远程UNIX类服务器上,这样登陆后我们会在用户目录下,PWD一下,你可以看到你的用户目录路径,比如我的就是/home/test,那么好了,我们建立一个.ssh2的文件夹,在里面建立一个文件,authorization,内容如下:
key id_rsa_2048_a.pub
然后把你WINDOWS客户端上的id_rsa_2048_a.pub上传到你在UNIX类服务器上刚建立好的.ssh2文件夹下,关闭SSH客户端。

5、用SSH客户端公钥认证状态登陆
重新启动SSH客户端,在登陆认证状态栏选择Public Key方式,登陆到你刚才放id_rsa_2048_a.pub的那台服务器,你会发现你马上就登陆进来了,没有密码限制了。这个时候用公私钥认证和用密码认证同时存在,还没有达到我们的要求,那我们就在UNIX类服务器上修改/etc/ssh2/sshd2_config文件

把以下如下三行的password 删除,下面这三行是修改好的
AllowedAuthentications publickey
AllowedAuthentications hostbased,publickey
RequiredAuthentications publickey


第二章 SSH客户端之Putty的连接方法

1、运行环境
WINDOWS下安装的SSH客户端,名字是putty-0.56-installer.exe,可以到如下地址下载:
http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html,这个安装包是所有工具的集合,其实如果只做为连接用,你可以只下putty0.56.exe的。但我们这里因为要做密钥对,所以就下整个包安装吧。

2、在本机生成密钥过程
用putty套装的puttygen来产生密钥。密钥的类型选择SSH2 RSA。密钥的位数选择2048,然后点击"Generator",此时密钥生成当然也有几个选项出现。如果你有不止一个key,你可以在“Key comment”作注释用于区别其他的key。“Key passphrase“和“Confirm passphrase“用于对硬盘上的key进行加密,如过你自己一个人用机器觉得安全有保障的话可以让它们为空。然后保存两个key,用默认方式保存,那么公钥你可以指定文件名,私钥默认的文件扩展名是.ppk。在这里我们命名它为test.ppk,而公钥我们保存为test.pub,需要注意的是,如果用putty连接,私钥的扩展名必须是.ppk,而且你还可以将这个.ppk的私钥保存为SSH Secure Shell 格式和Openssh格式认知的私钥,这个对两个UNIX类主机之间相互通信提供了很大帮助。(我们以后会将两个UNIX类主机通过公私钥认证的方法给大家讲讲)

4、用Putty从本机登陆到远程UNIX类服务器上
我们还按先前的方法登陆到远程UNIX类服务器上,这样登陆后我们会在用户目录下,PWD一下,你可以看到你的用户目录路径,比如我的就是/home/test,那么好了,我们建立一个.ssh2的文件夹,在里面建立一个文件,authorization,内容如下:
key test.pub
然后把你WINDOWS客户端上的test.pub上传到你在UNIX类服务器上刚建立好的.ssh2文件夹下,关闭Putty。这个上传命令你可以用 put ,下载就用get。你的通道可以用PSFTP建立,这个也在PUTTY的组件中。

5、用SSH客户端公钥认证状态登陆
重新启动Putty,建立一个session命名为test,设定你要登陆的远程ip,协议设为ssh,Connection设定在ssh的auth选项中,将private key的文件选择为刚才我们由puttygen产生的密钥test.ppk。点Open,要求输入username,我们输入用户名后远程系统开始public key认证,如果密钥有passphrase 则需要输入,否则直接就登录了。这个时候用公私钥认证和用密码认证同时存在,还没有达到我们的要求,那我们就在UNIX类服务器上修改/etc/ssh2/sshd2_config文件

分享到:
评论

相关推荐

    SSH Secure Shell

    SSH(Secure Shell)是一种网络协议,用于在不安全的网络上提供安全的远程登录和其他服务。它是IT领域中广泛使用的工具,特别是在管理Linux或Unix服务器时。SSH Secure Shell提供了加密的数据传输,确保了用户的身份...

    SSH Secure Shell服务器Linux连接

    总的来说,SSH Secure Shell服务器Linux连接涉及的知识点包括:SSH协议、身份验证机制(公钥/私钥)、SSH客户端工具(如ssh2.exe、sftp2.exe、scp2.exe)、配置文件(ssh2_config、keymap22.map、Output.map)以及...

    SSH Secure Shell绿色版 经典版

    总的来说,SSH Secure Shell经典版作为一款绿色版的SSH客户端工具,以其便捷性和安全性,为用户提供了高效、安全的远程访问解决方案,尤其适合IT管理员和开发者在日常工作中使用。其轻量级的特性使得用户无需繁琐的...

    SSH Secure Shell工具

    SSH(Secure Shell)是一种网络协议,用于在不安全的网络上提供安全的远程登录和其他服务。SSH Secure Shell工具是Linux环境中广泛使用的工具,它允许用户通过加密的方式与远程服务器进行交互,确保数据传输的安全性...

    SSH Secure Shell Client 3.2.0 客户端

    SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定;SSH 为建立在应用层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以...

    SSH Secure Shell Client 3.2.9

    SSH 为 Secure Shell 的缩写,由 IETF 的网络工作小组(Network Working Group)所制定;SSH 为建立在应用层和传输层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 ...

    SSH Secure Shell.rar

    "SSH Secure Shell.rar"这个压缩包很可能包含了一个SSH客户端软件,使得Windows用户能够方便地连接到Linux服务器。 SSH协议的工作原理是通过加密技术确保数据在传输过程中不被窃取或篡改。它提供了两种主要的服务:...

    SSH Secure Shell Client(sftp)

    SSH Secure Shell Client是一款强大的安全连接工具,主要用于在不安全的网络环境中提供安全的远程登录和其他网络服务。这个软件集成了SSH(Secure Shell)协议和SFTP(Secure File Transfer Protocol),使得用户...

    SSH Secure Shell Client

    SSH Secure Shell Client是一款用于安全远程访问Linux操作系统的客户端软件,它是对传统不安全协议如TELNET、FTP和R命令的升级。SSH(Secure Shell)的主要目的是解决网络通信中口令和其他敏感信息明文传输的安全...

    SSH Secure Shell绿色版

    SSH Secure Shell Client是一款深受IT专业人士喜爱的工具,主要用于安全地连接到远程Linux系统。这款绿色版客户端提供了便捷的SSH(Secure SHell)访问方式,确保数据传输的安全性,避免了传统telnet或ftp等不安全的...

    ssh secure shell client-3.2.9.zip

    在标题"ssh secure shell client-3.2.9.zip"中,"ssh"指的是Secure Shell,"secure shell client"是指SSH客户端软件,用于连接到支持SSH服务的远程服务器。版本号"3.2.9"表明这是该软件的一个特定发行版,通常包括...

    SSH Secure Shell免安装版

    SSH Secure Shell免安装版,解压后,直接运行SshClient SSH Secure Shell免安装版,解压后,直接运行SshClient

    SSH,The Secure Shell:The Definitive Guide(2nd)

    SSH(Secure Shell)具有透明、保密性强、公钥认证可信的特点,并具有高度可配置的客户端/服务器体系结构,是基于TCP/IP协议、目前十分流行且健壮的网络安全与隐私保护解决方案。SSH支持安全远程登录,可用于计算机...

    ssh 客户端

    SSH(Secure Shell)客户端是用于安全远程登录到服务器的工具,它允许用户通过加密网络连接进行文本模式的命令行操作。SSH客户端不仅提供了命令行接口,还有图形化的用户界面,使得非技术用户也能轻松地执行上传和...

    SSH Secure Shell.rar Windows小巧客户端

    SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定;SSH 为建立在应用层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以...

Global site tag (gtag.js) - Google Analytics