Win7下用SSH客户端工具连接CentOS54的SSH证书配置方法.docx
-
资源ID:4926208
资源大小:671.39KB
全文页数:12页
- 资源格式: DOCX
下载积分:15金币
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
Win7下用SSH客户端工具连接CentOS54的SSH证书配置方法.docx
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. 安装使用OpenSSHCentOS5.4中已经包括了 OpenSSH,也可以从网络上下载并安装OpenSSH,它是完全免费的。 在VirtualBox中的CentOS虚拟机上登录,图形方式则打开一个Terminal命令终端(命令行方式 则直接敲命令)。# cd /.ssh执行以下命令生成密钥对:# ssh-keygen -t rsaGenerating 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空文件。'I r口 Xhile tdit View terminal Tabs Help rooWlocalhost -1# cd sshraaWLocalliast . sshtf ssh-keygen -t rsaGenerti ng publi c/pri yste rss kpy pair.Enter file in which to save k=y (/root/.ssh/id rsa): /hom/yu/.stki/id rsaEntcir pssphrase (eupty for no:Enter same passphrase again:Passphrases do not match. Try again.Enter passphi日se fempty for no passphrase):Entei same passphrase again;open /nome/yu/. ssn/ic rsa railed: no sucn me or di rectory.Saving tne Ke/ faiLed: /nome/yu/.ssn/ia rsa.rootlocalhost .ssh# nkdir -p /fiome/yu/.ssh/id rsarootlocalhost .ssh# ssh-keygen -t rsaGenerating public/pri'/ate rsa key pair.Enter file in which to save tie key (/root/.ssh/id rsa): /hame/yu/.ssh/ic rsa /home/yu/.ssh/id rsa already exists.Overwrite (y/nl7 yEnter passphrase (empty for no passphrase):Fnter same passphrase agai n: pen /home/yu/.&h/icl rsa fsi I ed : T& 占 di rsctory .Saving the key failed: /kiame/y/ .ssh/id rsa.rootlocathost .&sh# h-keygen -t rsaGene rating pubticp ri'/atc rsa key pair .Enter file in which tD save tie key (/root/.ssh/id rsa); /home/yu/.ssli/id rsa Enter passphiase (empty for no passphrase): EnLei same passphrase agalri;Your identification has been saved in /home/yu/.ssn/ic rsa.Your public Key nas Deen saved in /nome/yu/.ssn/id rsa.pub.The key fingepint is: ab: aO : 8f: 01: 7b: c2 : a4: 88:0e: fb :96: bo :dd: 88 :e9 mot恒LcKaLIhgt .LocmlijDiiainrootlocalhost .ssh# I#echo id_rsa.pub >> authorized_keys#rm -rf id_rsa.pub#chmod 700 /home/yu/.ssh#chmod 600 authorized_keys重命名生成的公钥,以备SecureCRT下载使用/删除原始公钥文件/修改目录属性修改公钥文件属性,只允许root修改在用SSH Secure Shell Client登陆的时候走了一点弯路,所以回头在CentOS里面ping 了一下IP:HIb Edit View Terminal Tabs Hi&lp7 u BEh scho id_rsaspubauthdrized_keysrm -rf idrsa,pub chmod 70S /hoae/yu/h ssh chmod authorized keysran tlocalhost r dtlacalhost rDDtlQcalhDst roDtlocalhost rontlGcalhost rtlocalhost raatilDcalhDst raatlDcalhost roQ七1ocalhost bash: ifcongfig: rQQtlocalhD5tcd a 55hJr a 5 5 h a &&h# a 55h# a &&h 4r .ssh 4r .ash 4r .ash 4tif corigf igconiand not found .sshman ifconfig Foraatting 口明电 pl ease wait -. roocathost .ash* Ifconfig &th0Link encap: Ethernet Hwaddr SS ! I3C :29: S2! 091: A1 inet addr:192.168.65.130 Beast:192.1G8.SS255 Mask:255.2SS.255.0 inet6 addr: feSG:2&c:29ft:feS2:9al/&4 Scope:Link UP BROADCAST RUNNING MULTIM5T MiTU:1500 Metric:!RX packets:357 errors:0 dropped:0 overrun5i:0 framedTN packets:305 errors dropped:0 overrun&:8 camer:9 coLLi5ion5:0 txqueuelen:1000RX bytes:35?915 (349,5 K16J 丁X bytes:25071 (24.4 KiB) interrupt:67 Base adidire55:0x224Link encap:Local Loopbackinet addr:127.9.0.1 Mask:255,0.®.0lnet6 addr: :1/12B scope:HostUP LOOPBACK RUNNING MTU:163& Metric:LFLA piacKets: 1134 如q5;q dropped Dverruns:o Traine:oIX packets:1134 errorsio droppedDernun&iB carrier:0cd11islong: txqueuplen:RX bj/tes: 1983760 (1.8 M1B) TX Dyt-B 5 : 1983760 £1.8 M1B)注意:这里的IP是192.168.65.130而进入win7下面的虚拟IP则是192.168.65.1寸l控电言呢作 Internet卜网旨flZ其M中心查看基本网窣佳忌并设置逢接4 VMware Network Adapter VN* n etSInLe riet 近柬Wndm防丈堆同法疔博.f5EEHX属性也U特定的MS后您剧.VWnai E: Virtual E themet Adapttr i0D-M-5&-CD-ml8=.6- :i:F否TT工JU批192 iaa.B5 1TT工子同抿归235.235. S5.01职双认网关MF. L止-牌三IWdL;已启用EatBIOS g.是1I?-TJU .t.JM0:.5l«:9:26a9:L5j5.W8T12lTTS我认网无TTS FT书二定fecO:O:O:ffff:l1Sl£ec0:0:0:f££F:2tt.fec0:0:0:fffE:3UII|f关出LJnti-rnE<§ WiaBW 去连是到rrterrrt0 VMware Netwcrk Adapter VMnetL§ VMware Network Adapter Win*密钥在服务端已经生成了,此时回到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 服务器了。文件闩翊:曰宜看:V逢现瑚传蜘T藤本 IMtD帮的H)192 168.65.130se id_rsaf Diitidsz :autharized_keiFs found活 192_16S.65.130 - SecureCRTLraatffil calhostod7. ssh rootlocalhost ssh4 -bask: sz: miranartd noi roi:itlocalhost B sshl# -bash: si: 如irimaiLd not rootlDCslhoB ssItl #居然提示命令没找到!算了,还是用 SSH Secure Shell Client 吧。选择菜单中“Edit”-> “Setting",在打开 的窗口左侧依次选择“Global Settings”->“User Authentication"->"Keys”;点击“Generate New”,在打开的窗口中点击“Next”,选择“RSA”和“2048”,然后点击“Next”, 稍等一会,会计算一个密钥。看到如下图,参照图片中的内容进行填写,比如在Passphrase中填写一个密码,这个是保护 本地私有密钥的密码,也就是说,即使有人盗用了你的计算机,没有这个密码,也仍然不能使用 你的密钥。注意,这个不是服务器上用户密码。填写完毕后,点击“下一步”,密钥就生成完了,点击完成。选择刚才生成的密钥,点击“Upload”,会弹出如下窗口:参考窗口中的内容填写,注意名称 是自动出现的,不用管。第二项需要修改为.ssh,第三项不用管。然后点“Upload”,如下图所 示:SettingsS3KeysM:=ltl:=l£h key pairs used in public_key authenticaticm.After gHnei-ating your key pair, upload the public key to the server by cli eking the Upload butt cm.-Profile SettingE0" C oriiLe c t i on:-Cipher ListAuthenti >2ati oni Colore; Keybi:i:ii-dIi - TijriXLeling白 File Tr:iiLEfer:-Rerriote F aver i t e0 -l:jlob:dl SettingE0 Appe:±r:±rLceFiZiTlIb-Colors:- Mes sages£ User Authentic:±tio:b - Keys; Certi fi catesL -SSH Ac c e e e i on| -FKCS #11:Cunfi gnu- at i o Server Aiithenticat b -Host Keysb - CA Certi fi catesLIlAP Servers File Tr:±rLs£er Adv:iTic e d# I iir I 卜如果没有提示错误,那么公钥就自动被上传到服务器上去了。接着要做一些手工的操作,在 命令行界面里,输入如下命令:(左脚注意前面的$符号不是命令,只是个提示符)#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”点击链接,然后会看到下面的提示:这个提示就是要你输入刚才设置的“Passphras密码,输入正确后,就会登录到系统中了。客户端配置最后一步,也最重要:本地会保存你生成的私钥和公钥,刚才所上传上去的就是公钥。每次登录,软件都会自动拿 本地的私钥和远端的公钥做加密运算,然后才能登录。所以,我们必须保护我们本地的密钥文件,这个就象招商银行网上银 行专业版的数字证书一样,丢了就不能再次登录了。密钥文件存放在本地目录:(如果是WinXP系统,可能是这样的目录)C:Documents and SettingsuplinuxApplication DataSSHUserKeys(如果是Win7系统,我找了半天没找到,只好用笨方法找了,如下图)EetlirtgEjSj Select FolderEbFrcfilft SftttiiiES CatUM-rh.3 an ? CiptiAJ Li£l.Authwiti Citi DTi i- ColarE! - K.47faourd;-TuMitlL-ncFa 1« Trxnx F-it ,FiTQI: Ltij Glcbil StltincsApp« W MGS;:"I "-ColcTSJ :由 Vsat- knthqoit icktia:卜财 r-Cat tLt:3CA.t>iiE ;-SSH Jlccssion! ¥11!>Can.fLgiirA.LidH Serrar Auttunti -:4t;卜 Hm t KeysI CA C&j ificvtas 'IUAP Serv«f=Fa 1« Trxnx F-it ! t MwHigd;7-I ITlravits Key fil. CementPukli c1m7 gutheiitL ta.ti >m Eor tLe U4 C crfiuid Llti4 Cli till.WTJaj:争囱芦四,2011/21 皿明U-iribEt 赤f pairs used. in. putlic_hty 4:atbb!A.FL »t but kh.3 y dw k«ynr*, upl asd LI 3«trvtT jriqlriK tht IJplr-ad bilttKfi.2D4&-lit g 5JlPmlJ-j e Kp n>ui峪囱皿t:Uplmd.I. UekfEjie3 15W58Appli cia.tiaDL Bbt.S2K£, JJ L I巡 Ur一 q,X-W .u . 一门上.新加卷S职芒I )E?y piitr risnpii trit北ui& F iii.i.phr i/iErp-art.roller.垛律槊即就hEi虾Fill” 0. pub),L» Nn把这个目录里的文件备份出来,压缩成带密码的压缩包,弄到手机里或者U盘里,以备重 做系统后可用。使用 root 用 户编辑/etc/ssh/sshd_config 文件,将 PasswordAuthentication yes 改为 PasswordAuthentication no,保存文件并退出,重新启动sshd服务。至此之后,服务器不再接受密码认证,客户端必须使用密钥才能正常登录。不过一定要注意 密钥不要搞丢了,不然自已也不能远程登录系统了。