ChinaUnix.net 首页 | 博客 | Linux | 论坛 | 人才 | 培训 | 知识库 | 资料 | 读书 | 手册 | 精华 | 下载 | 沙龙 | 搜索
Linux首页 | Linux论坛 | 论坛精华 | 开源新闻 | 技术文章 | 专题专栏 | 新手指南 | 迁移方案 | 产品方案 | 开源项目 | 开源图书 | 软件下载 | 人才招聘 | Linux博客
  搜索

  产品与方案
·中科红旗全面打造现代化邮政体系
·红旗助力“网上审批服务” 推动电子政务
·红旗正版化开创呼和浩特网吧建设新起点
·红旗Linux助信息产业部邮件服务器“快跑”
·中标普华Linux 为电子政务信息化保驾护航
·中标普华Linux助力基金产业
·中标普华Office率先支持UOF标准
·中标普华邮件系统助力西藏政府信息化建设
·红旗Linux助力国库集中支付系统改革
·红旗助中信卫星 掀起GIS通信应用风暴
·红旗软件助力烟草总局 全面建设“数字烟草”
·红旗助力“信访阳光工程”打造畅通信访渠道
·红帽联合FIS发布下一代实时核心银行平台
·红旗助力金盾 打造全无忧出入境信息系统
·红旗Linux全力打造中国邮政总局名址信息库
·爱尔兰证交所从Unix迁移到红帽企业Linux
·一流的意大利银行选择使用红帽企业Linux
·PLUS Finanzservice选择使用红帽企业Linux
·红帽助力TransACT Communications 公司
·法国零售业巨头Lapeyre采用Redhat Linux
·旅游预订网站选择使用红帽企业Linux
·马哈拉施特拉邦政府的红帽解决之道
·美国联邦政府案例
·红帽为慕尼黑展览会提供现代化集群系统
·Yuba郡用开源软件和红帽产品提高了效率
·红帽企业Linux助印度理工建立高性能计算中心
·采用红帽Linux 将系统维护时间缩短了65%
·从UNIX迁移到Linux使Peñoles公司获益非浅
·Hikal公司用红帽企业Linux开展任务关键的ERP项目
·KDE3.5.4新版本发布
·芝加哥商业交易所从Unix向Linux迁移
·南方基金管理有限公司成功案例 Red Hat Linux
·广东北电通讯设备有限公司成功案例
·挪威国家石油公司从UNIX迁移到红帽Linux,成本减半
·中央电视台CCTV动画部案例 Red Hat Linux

  图书

鸟哥的Linux私房菜基础学..


Linux程序设计.第3版


Linux设备驱动开发详解


  下载
·Endian Firewall
·linux kernel(Linux 内核)
·CentOS
·Fedora Core 6
·Scientific Linux
·Slackware 11.0
·Gentoo Linux
·ubuntu-6.10-i386服务器版本
·ubuntu-6.10-amd64服务器版
·ubuntu-6.10-i386桌面版
·ubuntu-6.10-amd64桌面版
·Engarde Linux
您的位置: Linux时代 > 技术文档 > 系统安全 >

使用OpenSSH 建立更有效的安全性能

日期:2006-09-05 作者:Chad Perrin 来自:zdnet


老Linux管理员们都知道SSH(安全shell协议),这是他们软件工具箱中最便利最有用的工具。在工作站X Windows环境下使用多端竞争或者通过Screen utility,Linux服务器管理员或者其它基于Unix操作系统的服务器管理员,能轻松地同时管理几个系统。网络管理shell或者Perl脚本,能利用SSH在多个服务器上简单安全地自动执行工作。

网络shell效应RSH比SSh要长。但是SSH在其功能中添加了强大的加密功能和数据压缩功能,并且大多数现代SSH实现在同一包内提供SFTP和SCP,它们用于网络中的安全文件传输。

最流行最普遍的SSH实现以OpenSSH的形式出现,它是由OpenBSD社团构思和维护的项目。OpenSSH被导入每一个操作系统平台,包括微软的Windows,虽然在Window环境中它最广泛的应用是:做为基于Unix系统上的OpenSSH服务器的客户端。这些基于Unix系统包括:Linux、Solaris和OpenBSD。

SSH的职责

SSH 使用强大的加密功能保护远程会议不被怀有恶意的黑客攻击。从始至终都提供端到端的安全保障,包括客户机与主机进行联系,以及在电脑之间传输用户名和口令之前建立会议专用的密码键交换。它可以使用多种不同的密码方案:AES、3DES、Blowfish以及其它方案。受信任的主机鉴定方案和系统之间键值交换提高安全性,OpenSSH不需要安全证书或优先键交换即可创建安全加密的远程会议。

另外,使用SSH可以解决某些类型的网络拥塞,明显加速网络,因为它在传输数据前先对数据进行了压缩。它通过SFTP加密,能提供类似于FTP的交互式文件传输能力,所以,甚至口令和用户名在网络上传输都没有阻碍。对于文件传输操作,SCP也类似地提供安全而方便的途径完成此项工作——加密的文件拷贝命令,此命令操作网络连接,它是SSH实现的一部份。

SSH是加密交流中众所周知的网络协议。开发它是为了取代RSH效用,RSH也加了密,但是不够安全。SSH不仅继承了RSH的功能,而且扩展加强了其功能,特别是安全性方面。

LinuxOpenSSH

Linux上安装OpenSSH是很容易的。例如,在Debian GNU/Linux系统上,安装OpenSSH时,做为根用户登录,然后输入命令apt-get install ssh即可。类似地,在Fedora Core Linux系统上,安装OpenSSH时,做为根用户登录,然后输入命令yum install ssh即可。你甚至不需要做这些事情,因为在Debian 和Fedora Core中,它们默认安装配置中已经包含了OpenSSH。对于Linux系统来说,如果要确定系统是是否已经安装了OoenSSH,只需要输入命令: ssh。如果系统中安装了OpenSSH,则会给出简单的使用指南信息(Listing A):

Listing A
$ ssh
usage: ssh [-1246AaCfgkMNnqsTtVvXxY] [-b bind_address] [-c cipher_spec]
[-D port] [-e escape_char] [-F configfile]
[-iidentity_file] [-L [bind_address:]port:host:hostport]
[-l login_name] [-m mac_spec] [-O ctl_cmd] [-o option] [-p port]
[-R [bind_address:]port:host:hostport] [-S ctl_path]
[user@]hostname [command]

在OpenSSH说明书上有更完整的使用信息。这个说明书是传统UNIX文件手册系统的一部分,并且在命令行模式下输入man ssh命令,即可访问OpenSSH说明书。说明书提供了OpenSSH客户端命令行选项的信息,关联的配置文件信息、当前版本已知的Bug信息,影响其操作的shell环境变量信息,以及相关说明列表。正如列表所示,上面有sshd的说明书ssh-agent的说明书,以及OpenSSH工具集里其他应用的说明书。 

配置并使用Linux 客户端

在OpenSSH客户端上,从命令行访问OpenSSH服务器上的其他系统时,仅仅只需要输入ssh host命令,这里“host”是目标系统的主机名。有时候这个主机名不能被解析成IP地址,因为你没有那个系统的DNS,并且它没有在本地系统的/etc/hosts文件中列出来。此时有必要指定目标系统的IP地址而不是主机名,例如:输入ssh 192.168.0.1命令,连接此IP表示的系统。更多的SSH命令如下:

SSH一般使用端口22。如果SSH服务器侦听一个不标准端口,使用下面命令,示例端口号为1234:

ssh -p 1234 host

除非指定了用户名,否则它将试图登录到一个远程系统,此时用户名与本地系统上的用户名相同。可以使用命令选项指定不同的用户名。下面给出了一般格式,“user”表示用户名。

ssh -l user host

一个更普遍的指定用户名的方法是使用下面的格式:

ssh user@host

通过SSH而不需要打开shell界面即可以在目标系统上执行命令。下面例子中的“command”表示想要执行的命令:

ssh host command

可以在目标系统上指定当前工作路径。在下面的示例中,指定了/home/user为当前工作路径:

ssh host:/home/user

可以将上面的多个选项组合到一块,形成更复杂的定制操作:

ssh -p 1234 user@host:/home/user
ssh -l user host command

OpenSSH配置文件位于路径/etc/ssh下。OpenSSH客户端主要的配置文件在/etc/ssh/ssh_config路径下,大多数版本都包含足够的解释信息,告诉你怎么使用配置文件。对于有广泛而复杂的说明书系统的版本,例如Debian,可以使用man ssh_config命令,获得足够多的OpenSSH客户端配置信息。

对于安全性而言,一个普遍而重要的配置选项是ForwardX11,它应该被设置成“NO”,从而阻止SSH客户端向网络自动发送X Windows系统信息,甚至在通过SSH连接而没有使用X Windows时,也是一样。使用这个设置,可以指定特定的SSH连接,通过使用- X命令选项,传送X Windows系统信息。在etc/ssh/ssh_config文件中其它配置选项也能执行和服从安全政策,并且可以服务于特殊的安全需要。

基于WindowsSSH客户端

微软的Window系统有很多SSH客户端程序,有些是私人的、商业的应用程序,有些是免费软件或共享软件,还有一些是开源软件,例如:OpenSSH。存在命令行客户端程序时,它们之中有些程序被安装成为类似UNIX shell的一部分,现在最常用SSH的图形用户界面程序。它们之中,WinSCP用于SCP和SFTP性能,PuTTY用于SSHshell性能。通过阅读上述的关于Linux的OpenSSH使用信息,则很容易了解WinSCP和PuTTY的用户界面和它们的配置。还可以获得称为OpenSSH for Windows微软Windows OpenSSH的实际端口。

配置并使用Linux服务器

一般地,OpenSSH服务器运行Liunx系统。它可以在Debian GNU/Linux系统中通过/etc/init.d/ssh命令进行重启。相似地,在启动和停止时,只需要将“restart”置换成“start”“stop”即可。Fedora Core Linux系统使用相同的命令格式,但是需要将/etc/init.d/ssh中的“ssh”置换成“sshd”。

与OpenSSH客户端配置文件相似,OpenSSH服务器配置可以通过/etc/ssh/sshd_config文件完成。它的格式与/etc/ssh/ssh_config非常相似,但是其选项有很多不同。配置细节可以通过输入man sshd_config命令查看。

一般将UsePrivilegeSeparationIgnoreRhosts选项设置成“YES”,而将PermitRootLoginPermitEmptyPasswords选项设置成“NO”。与OpenSSH客户端一样,使用SSH传输X Windows系统信息的风险非常低,如果没有必要,对任何系统它都应该是不活动的。这样,通常将X11Forwarding设置成“NO”。

在Linux上,它们通常有相当具有安全意识的人进行维护,这些配置选项应该进行恰当配置。一般应该包括PermitRootLoginX11Forwarding配置选项。

使用OpenSSH

OpenSSH还有另外功能。例如:其他网络协议可以在OpenSSH协议上“打隧道”,从而提供更高的安全性,这已在本文中有所提示。ssh-agent工具可以简化OpenSSH客户端的管理和使用。还有一些不相关的工具,包括SSH隧道支持,例如:Subversion版本控制系统。它的潜能是无穷尽的,不可能找到它们的终点。

使用多台电脑的Linux新用户,可能不会一下子了解SSH的价值。他们都习惯于微软的Windows操作, Windows上的界面已经优化好了,在某种程度上,反而不易于进行远程管理。即算有服务器管理和远程技术支持,使用诸如Windows Remote Desktop和Terminal Services for Windows等远程管理工具,其有效性也相当有限,并且不鼓励通过网络直接使用Windows资源。

相反,Linux用户在单个系统上运行他们的日常程序,并且在电脑上经过简单安装就能通过SSH访问这些程序。很多 Linux管理员将坐在一台电脑前面,完成不在同一个地方的多台电脑上的工作,包括email、写作、编程,这不是一两个网络应用程序。对SSH的性能越熟悉,则其用处越大,同时也越信任它。但是从Windows中走出来的Linux用户还不能立即感受到SSH推动生产力的能力。

OpenSSH的配置和使用是值得学习的,即使你现在不能立即看出其作用,假以时日,你会离不开它的。

原文链接:http://www.zdnet.com.cn/developer/code/story/0,3800066897,39524195-2,00.htm

本文被浏览



 相关新闻

Linux系统中OpenSSH的安装和配置2001-04-19 16:14:25


 相关评论
关于我们 | 联系方式 | 广告合作 | 诚聘英才 | 网站地图 | 免费注册

Copyright © 2001-2006 ChinaUnix.net All Rights Reserved

感谢所有关心和支持过ChinaUnix的朋友们

京ICP证041476号