收藏 分销(赏)

Win7下用SSH客户端工具连接CentOS54的SSH证书配置方法.docx

上传人:xrp****65 文档编号:8876873 上传时间:2025-03-06 格式:DOCX 页数:11 大小:845.48KB 下载积分:10 金币
下载 相关 举报
Win7下用SSH客户端工具连接CentOS54的SSH证书配置方法.docx_第1页
第1页 / 共11页
Win7下用SSH客户端工具连接CentOS54的SSH证书配置方法.docx_第2页
第2页 / 共11页


点击查看更多>>
资源描述
Win7用SSH客户端工具连接虚拟机CentOS5.4的 SSH 证书配置方法 1.什么是ssh 传统的网络服务程序,如:ftp、POP和telnet在本质上都是不安全的,因为它们在网络上用明文传送口令和数据,别有用心的人非常容易就可以截获这些口令和数据。而且,这些服务程序的安全验证方式也是有其弱点的,就是很容易受到“中间人”(man-in- the-middle)这种方式的攻击。所谓 “中间人”的攻击方式,就是“中间人”冒充真正的服务器接收你传给服务器的数据,然后再冒充你把数据传给真正的服务器。服务器和你之间的数据传送被“中间人”一转手做了手脚之后,就会出现很严重的问题。 从前,一个名为Tatu Ylonen的芬兰程序员开发了一种网络协议和服务软件,称为SSH(Secure SHell的缩写)。通过使用SSH,你可以把所有传输的数据进行加密,这样“中间人”这种攻击方式就不可能实现了,而且也能够防止DNS和IP欺骗。还有一个额外的好处就是传输的数据是经过压缩的,所以可以加快传输的速度。SSH有很多功能,虽然许多人把Secure Shell仅当作Telnet的替代物,但你可以使用它来保护你的网络连接的安全。你可以通过本地或远程系统上的Secure Shell转发其他网络通信,如POP、X、PPP和FTP。你还可以转发其他类型的网络通信,包括CVS和任意其他的TCP通信。另外,你可以使用带 TCP包装的Secure Shell,以加强连接的安全性。除此之外,Secure Shell还有一些其他的方便的功能,可用于诸如Oracle之类的应用,也可以将它用于远程备份和像SecurID卡一样的附加认证。 2.ssh的工作机制 SSH分为两部分:客户端部分和服务端部分。 服务端是一个守护进程(demon),他在后台运行并响应来自客户端的连接请求。服务端一般是sshd进程,提供了对远程连接的处理,一般包括公共密钥认证、密钥交换、对称密钥加密和非安全连接。 客户端包含ssh程序以及像scp(远程拷贝)、slogin(远程登陆)、sftp(安全文件传输)等其他的应用程序。 他们的工作机制大致是本地的客户端发送一个连接请求到远程的服务端,服务端检查申请的包和IP地址再发送密钥给SSH的客户端,本地再将密钥发回给服务端,自此连接建立。 SSH被设计成为工作于自己的基础之上而不利用超级服务器(inetd),虽然可以通过inetd上的tcpd来运行SSH进程,但是这完全没有必要。启动SSH服务器后,sshd运行起来并在默认的22端口进行监听(你可以用 # ps -waux | grep sshd来查看sshd是否已经被正确的运行了)如果不是通过inetd启动的SSH,那么SSH就将一直等待连接请求。当请求到来的时候SSH守护进程会产生一个子进程,该子进程进行这次的连接处理。 但是因为受版权和加密算法的限制,现在很多人都转而使用OpenSSH。OpenSSH是SSH的替代软件,而且是免费的, 3.安装使用OpenSSH CentOS5.4中已经包括了OpenSSH,也可以从网络上下载并安装OpenSSH,它是完全免费的。 在VirtualBox中的CentOS虚拟机上登录,图形方式则打开一个Terminal 命令终端(命令行方式则直接敲命令)。 # cd ~/.ssh 执行以下命令生成密钥对: # ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/yu/.ssh/id_rsa): //密钥将要保存的目录 Enter passphrase (empty for no passphrase): //输入远程登录的口令 Enter same passphrase again: Your identification has been saved in /home/yu/.ssh/id_rsa. //生成的私钥 Your public key has been saved in /home/yu/.ssh/id_rsa.pub. //生成的公钥 The key fingerprint is: 51:3e:d7:77:a4:22:d8:bb:f2:d2:2e:e6:5c:e3:33:ed 其中公共密钥保存在 ~/.ssh/id_rsa.pub,私有密钥保存在 ~/.ssh/id_rsa 在输入口令后可能会提示open /home/yu/.ssh/id_rsa failed: No such file or directory. 是因为相应的目录和文件不存在,去这个目录下检查一下,如果没有,先创建。我是直接在Xwindow模式下创建相应目录和一个id_rsa.pub空文件。 #echo id_rsa.pub >> authorized_keys //重命名生成的公钥,以备SecureCRT下载使用 #rm -rf id_rsa.pub //删除原始公钥文件 #chmod 700 /home/yu/.ssh //修改目录属性 #chmod 600 authorized_keys //修改公钥文件属性,只允许root修改 在用SSH Secure Shell Client登陆的时候走了一点弯路,所以回头在CentOS里面ping了一下IP: 注意:这里的IP是192.168.65.130 而进入win7下面的虚拟IP则是192.168.65.1 密钥在服务端已经生成了,此时回到SecureCRT,用password方式登录到服务器上,进入~/.ssh目录 用SSH Secure Shell Client登陆如下: 注意:第一次登陆,用password方式,要用CentOS里面ping出来的IP即192.168.65.130。 用SecureCRT登陆进去后执行如下命令: #sz id_rsa //发送文件,SecureCRT中有默认的下载目录 #sz authorized_keys 将公私钥发送到客户端,此时在SecureCRT的download目录下重命名authorized_keys为id_rsa.pub,只要保证两个文件名一致就行。 //这里我们是在使用本机的虚拟机作为server端, //在XP系统下使用CRT登录虚拟主机中的server,所以才有此步骤 详细的细节可以参见鸟哥的私房菜,chapter13,远程联机服务器篇 设置好ip地址,端口号,此时就可以顺利在SecureCRT中使用PublicKey方式远程登陆上CentOS服务器了。 居然提示命令没找到! 算了,还是用SSH Secure Shell Client吧。 选择菜单中“Edit”-> “Setting”,在打开的窗口左侧依次选择“Global Settings”->“User Authentication”->“Keys”; 点击“Generate New”,在打开的窗口中点击“Next”,选择 “RSA”和 “2048”,然后点击“Next”,稍等一会,会计算一个密钥。 看到如下图,参照图片中的内容进行填写,比如在Passphrase中填写一个密码,这个是保护本地私有密钥的密码,也就是说,即使有人盗用了你的计算机,没有这个密码,也仍然不能使用你的密钥。注意,这个不是服务器上用户密码。 填写完毕后,点击“下一步”,密钥就生成完了,点击完成。 选择刚才生成的密钥,点击“Upload”,会弹出如下窗口:参考窗口中的内容填写,注意名称是自动出现的,不用管。第二项需要修改为 .ssh ,第三项不用管。然后点“Upload”,如下图所示: 如果没有提示错误,那么公钥就自动被上传到服务器上去了。接着要做一些手工的操作,在命令行界面里,输入如下命令: (左脚注意前面的$符号不是命令,只是个提示符) #cd .ssh/ # ls -l 会至少看到你刚才生成的 .pub 公钥文件和一个 authorization 认证配置文件。如果没有你刚才起的名子的文件,那就有问题,检查上面的过程。 接着做下面的命令,假设我生成的是 mkey.pub # ssh-keygen -i -f mkey.pub >> authorized_keys (关键就是这句命令) 然后,删除刚才生成的文件: # rm -rf mkey.pub #rm -rf authorization #chmod 400 * # cd .. #chmod 700 .ssh 退出 SSH 工具。重新发起一次链接,参照下图进行选择:注意最后一项“P lic Key” 点击链接,然后会看到下面的提示: 这个提示就是要你输入刚才设置的“Passphrase”密码,输入正确后,就会登录到系统中了。 客户端配置最后一步,也最重要: 本地会保存你生成的私钥和公钥,刚才所上传上去的就是公钥。每次登录,软件都会自动拿本地的私钥和远端的公钥做加密 运算,然后才能登录。所以,我们必须保护我们本地的密钥文件,这个就象招商银行网上银行专业版的数字证书一样,丢了就不 能再次登录了。密钥文件存放在本地目录: (如果是WinXP系统,可能是这样的目录) C:\Documents and Settings\uplinux\Application Data\SSH\UserKeys (如果是Win7系统,我找了半天没找到,只好用笨方法找了,如下图) 把这个目录里的文件备份出来,压缩成带密码的压缩包,弄到手机里或者U盘里,以备重做系统后可用。 使用root用户编辑/etc/ssh/sshd_config文件,将PasswordAuthentication yes改为PasswordAuthentication no,保存文件并退出, 重新启动sshd服务。 至此之后,服务器不再接受密码认证,客户端必须使用密钥才能正常登录。不过一定要注意密钥不要搞丢了,不然自已也不能远程登录系统了。
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服