使用Openssh工具远程管理Solaris 10 ——1
上一篇 / 下一篇 2007-11-12 10:41:48 / 个人分类:linux
链接:http://www.xxlinux.com/linux/article/unix/rumen/2007-08-17/9351.html
m n+cF8QT051Testing软件测试网Gl&B [&`e7X$XAF一、 SSH服务器工作原理51Testing软件测试网"?9o#^RG`J)c8`5O
51Testing软件测试网)jG_8i%_l1.传统远程登录安全隐患
T!T0s6qP8h051Testing软件测试网 inawhnK7V在异构网络中,很多用户选择Solaris 10作为网络操作系统,利用其简单的配置和用户熟悉的图形界面提供Internet服务,Telnet便是其提供的服务之一。Telnet最基本应用就是 用于Internet的远程登录,共享远程系统中的资源。它可以使用户坐在已上网的电脑键盘前通过网络进入的另一台已上网的电脑,并负责把用户输入的每个字符传递给主机,再将主机输出的每个信息回显在屏幕上。这种连通可以发生在同一房间里面的电脑或是在世界各范围内已上网的电脑。Telnet服务与其他网络应用一样属于客户机/服务器模型,一旦连通后,客户机可以享有服务器所提供的一切服务。51Testing软件测试网"hd:d5l?d!R"LBV
51Testing软件测试网 C*J |O'@sZu但是传统的网络服务程序telnet在本质上都是不安全的,因为它在网络上用明文传送口令和数据,别有用心的人非常容易就可以截获这些口令和数据。而且,这些服务程序的安全验证方式也是有其弱点的,就是很容易受到“中间人”(man-in-the-middle)这种方式的攻击。所谓“中间人”的攻击方式,就是“中间人”冒充真正的服务器接收你传给服务器的数据,然后再冒充你把数据传给真正的服务器。服务器和你之间的数据传送被“中间人”转手后做了手脚之后,就会出现很严重的问题。
o#H+`(f8c|5@051Testing软件测试网a }F#p4x[%i#W0F(a2.SSH能保护什么
sA*f+U M051Testing软件测试网;jM7kBJWPSSH可以防止IP地址欺骗、DNS欺骗和源路径攻击。SSH提供给用户身份认证的主要方法就是使用公共密钥加密法。根据所用SSH版本的不同,可以采用RSA或者Diffie-Helman和数字签名标准来实现。也可以选择使用各种不同的身份认证方法,包括公共密钥法、rhosts/shosts认证法和密码认证,这些方法都很简单安全。的确,利用SSH即便是使用.rhosts认证方式也能确保安全性。SSH所提供的是通过网络进入某个特定账号的安全方法。每个用户都拥有自己的RSA密钥。通过严格的主机密钥检查,用户可以核对来自服务器的公共密钥同先前所定义的是否一致。这样就防止了某个用户访问一个他没有相应公共密钥的主机。注意如果你想了解更多有关RSA、公共密钥加密和身份认证的知识,只需进行很小的修补,SSH就能保护一些不安全的连接,如X窗口。这将帮助你提高所管理的网络连接的安全性。由于SSH提供了主机身份认证,利用公共密钥而不是IP地址,所以它使网络更加安全可靠,并且不容易受到IP地址欺骗的攻击。这有助于辨认连接到你系统上的访问者身份,从而防止非法访问者登录到你的系统中。如果用户或系统打算采用rhosts/shosts的身份认证方式,主机就面临着公共密钥和私人密钥信息交换的挑战。否则,就得使用其他认证方式。在认证发生之前,会话已经通过对称密钥技术进行了加密,如DES、三重DES、IDEA、Twofish或Blowfish。这就使得会话自身被加密,从而防止了别人在你输入或同别人聊天时截取你的信息。同时也意味着你所输入的密码不会被他人读取,因为它也被加密了。加密技术基本上可以防止有人监听你的数据,同时也确保了数据的完整性,即防止有人肆意篡改你的信息和数据。表1列出了SSH所能防范的网络攻击。51Testing软件测试网*F^2m4GM8w8s ]A&`
表1 SSH可以防范的网络攻击类型51Testing软件测试网O3u A __$}9K
G 网络攻击类型 "fl^.o I~5a4ArE0 | 51Testing软件测试网2x`0`!^3aaUo j 网络攻击简述51Testing软件测试网"n"?S#e.x4T0j |
(z"Wn2E])Y)L.j^,Q0数据包欺骗51Testing软件测试网3jB#S*fY | 51Testing软件测试网-X8P)^_i!GZ5O;V2[ 某IP数据包并不是你的,但被伪造成了你的。51Testing软件测试网1MU4e$\*\}#N |
51Testing软件测试网J5` F'_ky IP或者主机欺骗 #Im4wgo N0 | 9C*kM:Xx0T0 IP或主机名被中间人使用了。51Testing软件测试网.Y[2n-i0K*m |
OiVl?0口令截获51Testing软件测试网2J8C i$l4k | 51Testing软件测试网
i[9~.y A#T0M 中间人从网上截获了含有你口令的数据包。 :Z z9DT#d5b_7a&y0 |
&Ii&Vs{:xU0网络嗅探51Testing软件测试网8e^#|q2qg+J | 4{1AA iYO(]#~)[0 中间人从网上读取你的包,破解分析其内容。SSH通信是加密的,即使截获会话内容,也不能将其解密。51Testing软件测试网up&{7t^4EE |
ug#g Sm0插入攻击51Testing软件测试网[pE{2l f3T | {:[O p;J0 这种攻击可以客户和服务器之间发送的正文数据流之间插入任意数据。ssh1 1.2.25后和openssh的所有版本都专门进行了设计,来检测并防止这种攻击。这种检测程序增大了插入攻击的难度,但是并不能完全防止。ssh2使用强加密完整性检测手段来防止这个问题。可以用3DES算法来防止这种攻击。 }^dMFl"|/h0 |
说明:3DES算法是系统加密算法,其符合OpenPGP标准。它基于DES,使用3个独立的56bit密钥对交换的信息进行3次DES加密,使其有效长度达到168bit。 3DES(即Triple DES)是DES向AES过渡的加密算法(1999年,NIST将3-DES指定为过渡的加密标准),是DES的一个更安全的变形。它以DES为基本模块,通过组合分组方法设计出分组加密算法,多年来,它在对付强力攻击时是比较安全的。51Testing软件测试网"t"gqu8fCO t
51Testing软件测试网~y ^D I:^/f4KaSSH所不能保护的网络攻击:尽管SSH提供了大量的安全措施,但它仍不能为你的系统提供完全的在线保护。SSH并不
3s?e~N*I051Testing软件测试网md8?b(kT能堵住所有其他端口上的全部漏洞:包括NFS攻击等。51Testing软件测试网8TV Eqz:Y)]&a
51Testing软件测试网r7ci*Q@i_ h#kAb6l3. SSH服务器和客户端工作流程51Testing软件测试网z%H7QW$`^
Vv`SCR6GY0 SSH服务器和客户端工作流程如图13-1。51Testing软件测试网(z+r+j4P0x%a
51Testing软件测试网X:{5D&uz1|x
图1 SSH服务器和客户端工作流程51Testing软件测试网;aE6?7n;|8A^i
51Testing软件测试网'P+]m3l)uQ1. SSH客户端发出请求连接SSH服务器,通常使用22端口;51Testing软件测试网)z4WGBxl}
51Testing软件测试网VrFiM7l ^h2. SSH检查申请SSH客户端数据包和IP地址;51Testing软件测试网"RS'X ]d@K2F;E
A0OM6^8f-x0 3. 如果客户端通过安全验证,SSH服务器发送密钥给ssh客户;51Testing软件测试网0\9VI/sC
'BvOB[c0 4. 本地sshd守护进程将密钥会送到远程sshd 服务器。
*RB7f5lU,m/s051Testing软件测试网^]CH+Kh U`b&q客户端会生成一个或者文件,其中储存服务器的密钥。密钥内容通常如下:
*\![S)\YXt\!\ `051Testing软件测试网"Fy+g)w%oM5f6]-f(a!J2\server 1024 35 0744831885522065092886345918214809000874876031312
0lB_Nu,S,p9O08l'd}7@x-l5}0 663202636556140699569229172676719815525201670198606754982042373651Testing软件测试网J-AI `G:g
CT-x1])f;jZ0 393736593998729350847306606972263971147429524250769197415119584251Testing软件测试网q$]NAT f~|3p
51Testing软件测试网)HW9[Ef9560631766264598422692206187855359804332680624600001698251375726
r@2M&w @051Testing软件测试网+y"xWL7{Z$W2927556592987704211810142126175715452796748871506131894685401576