Archive for 十一月 18th, 2005

笔记本安全防护

从别处贴过来的,不错的帖子,但后半段有点Tinkpad枪手的味道.

在众多笔记本电脑保护设备中,一些设备的作用是防止笔记本电脑被偷的,而另一些则是为了如果发生最坏的情况,比如笔记本电脑落入不法分子手里,尽量保护失窃信息不会被别人看到的。

如果你关心的只是保护昂贵的硬件,那么就应当认真关注可能合适的预防措施。除了著名的Kensington安全锁外,还可以使用报警系统和移动传感器。然 而,只有使用加密软件对存放在笔记本电脑上的文件进行保护,笔记本电脑才算得到真正的保护。这意味着,最有效的安全包括硬件和软件两方面的保护。

但别指望本文介绍的任何一个系统能够独立地确保全面的安全防护。你可以在许多系统中发现的免费、内置的机制是最起码的安全机制,譬如Bios口令或者操作系统登录用户名/口令,目的主要是为了阻止偶尔窥视的那些人。

防护措施让窃贼无法得逞

最简单的硬件防护手段就是用锁把笔记本电脑锁在某个坚固物体上,譬如墙上的钩子,或者不能移动的桌腿。这样至少可以减小你在网吧、不安全的办公室或者火车上被人偷走笔记本电脑的风险。

如果你准备使用这样的锁,笔记本电脑的底座上就需要有一个加固的槽(Kensington安全锁槽),如今的大多数笔记本电脑上都内置了这种槽。与 Kensington安全锁槽兼容的锁插入后,可以用一条相连的钢缆系住。窃贼得有一把断线钳,才有可能偷走笔记本电脑。这种安全方法的缺点是,你需要用 什么东西把钢缆固定住; 当然,你还要随身带着锁。

移动传感器则比较灵活。这种防盗设备(如Targus Defcon 1,50欧元)也使用钢缆锁在Kensington安全锁槽上; 你可以在离开笔记本电脑时,开启这种设备。如果窃贼接近笔记本电脑,或者企图切断钢缆,移动传感器就会发出很响的报警声。不过只有你在离笔记本电脑不太 远,并且能马上赶回来的场合下,移动传感器才可以派上用场。另外如果它发出误报,你还需要通过遥控器关闭报警。

较为复杂的笔记本电脑报警系统(如Caveo公司的防盗系统,100欧元)工作原理相似,不过更加智能化。这种系统有一块装有移动传感器的PC卡。如果打 开了报警功能,要是窃贼把笔记本电脑移到你原先设定的范围外,警报系统就会发出很响的声音,而且PC卡阻止访问操作系统。你得输入安全代码,才可以重新获 得对系统的访问权。

免费的基本安全

存放在笔记本电脑上的数据可能比实际硬件还要来得宝贵,所以它们同样需要加以保护。你可以获得最低级别的一些内置保护机制,具体取决于你使用的是哪种操作 系统。譬如说,Windows NT4、2000 和XP、Linux及Mac OS X都要求用户使用口令,这一关很难绕过。如果不知道这个口令,就无法进入系统。Windows 95、98和ME则没有这种基本的安全级别。

但不管在什么情况下,窃贼只要把笔记本电脑上的硬盘拆下来,作为从盘安装到另一台PC机上,这样不需要口令,就可以读出其中的数据。那样的话,任何未经加密的数据都完全可以读取。

另一项基本的防护技术就是,使用要求在Bios级进行验证的启动口令。只有输入正确的口令后,系统才会启动。笔记本电脑的Bios里面的这项功能通常可以通过像“Set Power-On Password”这类选项(具体名称取决于Bios的版本)来激活。

许多Bios还允许你另外增设口令,防止有人进入Bios设置菜单。然而,这种免费功能只能提供最起码的保护机制。举例来说,有人只要使用相当简单的Windows实用程序,获得对登录后系统的物理访问权,就很容易读取口令。

更让人担心的是,只要把主板上的CMOS电池取出一小会,有些笔记本电脑上的Bios口令就会失效,因而Bios会恢复到出厂时候的缺省值。这样就无法阻止窃贼把你笔记本电脑的硬盘安装到台式PC上后读取里面的数据。

数据加密

对于已经铁了心的窃贼,大多数系统和Bios口令能够做到的只是暂时阻止他们。比较好的一种办法是采用加密工具,譬如Utimaco公司的 Safeguard。这种程序能够对文件、文件夹甚至整个分区进行加密,只有输入口令后,才能够访问数据。即使窃贼把笔记本电脑硬盘拆下来装到另一台PC 上,他所看到的也只是一堆毫无意义的垃圾。

这种程序使用起来特别简单,譬如Safeguard或者Steganos公司的Safe 6,用户无须干预,它们就会对文件进行实时加密。这意味着,你不会忘了对宝贵数据进行加密。此外,你也用不着长时间地等数据加密过程完成。然而,即便使用 实时加密产品,首次对硬盘进行全部加密也需要花好几个小时。

所有的商业加密程序都使用了下面介绍的编码方法。所有这些方法、就连有点过时的数据加密标准(DES)都针对攻击提供了足够的防护机制。从理论上来说,破解这些加密方法的办法不是没有,但实际上意义不大,因为单单破解一把密钥,就需要成千上万台PC。

口令过期

上面所述的这些软件如Safeguard只有在输入口令后,才提供对数据的访问。有些软件同时使用口令和特殊的USB令牌,其中之一就是 Securstar公司的Drivecrypt。从外表上来看,这种设备类似广泛使用的USB存储棒,不过里面存放有你的个人软件加密密钥。

只有插入正确的USB令牌,加密软件才会对数据进行解密。这意味着,要想破解口令是不可能的任务。如果拔掉USB令牌,系统就会自动锁住,加密目录里面的文件就无法读取。这种验证方法的主要缺点是,如果笔记本电脑和USB令牌同时失窃,数据就暴露无遗。

尽管可以采用其他一些方法,但口令仍是应用非常广泛的一种方法,所以这里介绍确保口令安全的几个建议。我们建议口令至少要采用八位,其中包括诸如“$”、 “%”、“!” 或者 “?”此类的字符。你可以使用数位较多的单字或者短语,然后把部分字符换成符号。譬如说,Personal Computer World可以换成Pe350n/- 9degm9ute>; =r-c。为了进一步加强安全,使用不同的口令用于不同登录是个好办法,譬如登录Windows、网络访问、电子邮件等使用不同口令。最后,你应当定期更 换口令。

指纹验证

较之使用相对不安全的口令进行登录,使用指纹阅读器是一种切合实际的替代办法。有些笔记本电脑厂商如富士通西门子和三星把指纹扫描器集成到了各自的笔记本电脑上,这样就没必要使用口令进行登录了。

譬如,在富士通西门子的Celsius Mobile H笔记本电脑上,可以使用指纹来保护对Bios的访问。惠普和IBM为各自的笔记本电脑提供了指纹阅读器,作为一种额外的选件(PC卡或者外置USB模 块)。还有一些第三方厂商的产品,譬如Sitecom PC-011 PC卡(250欧元)。然而,这些解决方案仅仅面向Windows系统,无法与Bios进行集成。

指纹阅读器的缺点在于,它们很容易上当受骗。只记录指纹图案、却没有记录指纹深度或者指纹温度的指纹扫描器特别容易受骗。简单的指纹印模就可以误导这些设 备。但是,如果你的手指温度较低,或者指尖上一个小地方给割破了,指纹扫描器就有可能很难识别你,从而把你这个合法用户同样“拒之门外”。

除了指纹阅读器和USB软件狗外,还有各种各样的硬件产品可以阻止或允许对笔记本电脑的访问。宏和戴尔等制造商把智能卡阅读器做到了各自的部分型号的笔记 本电脑里面。如果你插入智能卡,就可以登录进去,访问经过加密的数据。智能卡的最大优点就是,它同信用卡一样大小,便于携带。

PC卡(如Ce-Infosys公司的Cryptcard)可以作为硬件密钥使用。这种卡能够对硬盘进行加密,从而在启动过程中保护系统。只有把卡插入后,才允许启动。你在正常工作时,硬盘上的数据加密过程就会实时进行。

提到笔记本电脑的安全,IBM的Thinkpad特别值得一提。可以给Thinkpad配备加密芯片,而加密芯片是IBM的嵌入式安全子系统的一部分。该系统由主板上集成的一块芯片和Windows软件组成。

该软件能够实现硬盘加密、带有口令管理器,而且支持安全的802.1x无线局域网。特别之处在于,软件和加密处理器紧密配合。因为进出芯片的数据流是安全 的,所以别人不可能截获存放在芯片上的口令。如果启用了这些功能,Thinkpad在默认状态下就可以非常有效地防范数据失窃.

No Comments

把sftp用户限制在自己的家目录中

  SSH最初是由程序员Tatu Yloenen开发,包括SSH协议和服务软件,英文全称为Secure Shell(即安全外壳)。它实现了密钥交换协议及主机和客户端认证协议,在传送数据时把所有数据都加密传输,在接收方再进行解密,以防止网络窃听的发生。
SSH已经有了很多商品化版本,而且还有多种Unix/Linux系统平台上的免费版本。本文将主要以Linux操作系统为服务器(在其它的Unix或 Unix的派生操作系统上的操作也一样),Windows操作系统为客户端,介绍免费的商业SSH版本的安装及其实现。其重点是Linux服务器的配置。

软件的获得和安装

软件的获得可从http://www.openssh.org下载OpenSSH,当前最新版本为3.6.1,或者从http://www.ssh.com/ 下载针对Linux的非商业版本,当前最新版本为3.2,具体地址为:
SSH服务器地址 http://www.ssh.com/support/downloads/secureshellserver/non-commercial.html
SSH客户端地址 http://www.ssh.com/support/downloads/secureshellwks/non-commercial.html(这是一个For Windows的版本)。
不管是OpenSSh还是SSH Communications Security公司的SSH版本,在使用功能上基本一样,只是前者完全免费,而后者使用时要注意许可协议。从使用角度上可考虑,笔者认为后者更好用一些。本文着重介绍后者的安装和使用。
从SSH Communications Security公司下载的SSH服务器是源代码方式,文件名为ssh-3.2.3.tar.gz,必须对其进行编译和安装之后才能够使用。
我们假设软件的下载目录为root用户的宿主目录,即“/root”目录。解压缩完成后会生成一个“ssh-3.2.3”的源代码目录,然后切换到源代码代码目录,进行软件安装前的配置,编译和安装。
安装成功后,在“/etc/”目录下会增加一个“ssh2”目录,这个目录是用来存放SSH服务器的所有配置文件;在“/usr/local/”目录下会生成“ssh3.2.3”子目录,它是SSH程序文件和其它文件的存放位置。

基本配置和应用

默认安装,每次重新启动系统后都要重复上述操作才能启动SSH服务器。为了保证SSH服务器每次开机时自动启动,还要在“/etc/rc.d/rc.local”文件(此文件类似于DOS下的autoexec.bat文件令)的最后加入以下内容:
#start ssh3.2
/usr/local/ssh2/sbin/sshd &
其中第一行为注释内容,第二行为启动SSH服务器并作为后台守护进程运行。
接下来要做的是配置SSH服务器,所有的配置都是通过修改“/etc/ssh2/sshd2_config”文件实现的。文件的默认配置已经能满足一般的要求。下面介绍几种比较常见的应用:

使超级用户root能够直接登录服务器
使用Telnet时root用户默认情况下不能直接从远程登录系统,一般要先以普通用户登录,然后,使用su切换到root身份,这也是出于安全性的考 虑。由于SSH使用了加密方式传输数据,所以可以放心地直接使用root登录服务器,那么我们需要将sshd2_config文件中的
#PermitRootLogin  yes
取消注释,然后,重新启动SSH服务器,即可通过SSH以root身份登录Linux服务器。当然,如果您要禁止超级用户登录的话,可将“yes”改为“no”即可。

允许或禁止某些用户或组用户使用SSH登录
要实现禁止用户或组使用SSH登录服务器,只需要修改sshd2_config文件中的以下几行内容:
#AllowUsers sj.*,s[[:digit:]]*,s(jl|amza)
#DenyUsers skuuppa,warezdude,31373
#DenyUsers don@untrusted.org
#AllowGroups staff,users
#DenyGroups guest,anonymou
可以根据自己的实际需要,取消注释符“#”,加入实际的用户名或者组名,然后重新启动SSH服务器即可禁止(或允许)某些用户或者组使用SSH,具体操作这里不再详述。

使用SFTP代替FTP传输文件
FTP(文件传输协议)是一种使用非常广泛的在网络中传输文件的方式,但是,它也同样存在被网络窃听的危险,因为它也是以明文传送用户认证信息。 其实在SSH软件包中,已经包含了一个叫作SFTP(Secure FTP)的安全文件传输子系统,SFTP本身没有单独的守护进程,它必须使用sshd守护进程(端口号默认是22)来完成相应的连接操作,所以从某种意义 上来说,SFTP并不像一个服务器程序,而更像是一个客户端程序。SFTP同样是使用加密传输认证信息和传输的数据,所以,使用SFTP是非常安全的。但 是,由于这种传输方式使用了加密/解密技术,所以传输效率比普通的FTP要低得多,如果您对网络安全性要求更高时,可以使用SFTP代替FTP。若要开启 SFTP功能可以修改sshd2_config文件的下列内容:
#   subsystem-sftp  sftp-server
去掉行首的“#”,然后重新启动SSH服务器,这样在进行SSH连接时就可以同时使用SFTP传输文件。

关于客户端设置
以上是对服务器的设置,其实在SSH服务器中已经包含了一些客户端工具(如SSH,SFTP工具)。但是,更多的客户端用户使用Windows系统,下面就对Windows上的客户端系统设置加以说明。
首先从上文给出的网址下载“SSHSecureShellClient-3.2.3.exe”文件并安装。安装完成后,在桌面上会产成两个快捷方 式,一个是“SSH Secure Shell Client”,用于远程管理,另一个是“SSH Secure File Transfer Client”,用于和服务器进行文件传输。在工具栏中点击“quick connnect”,输入正确的主机名和用户名,然后在弹出的对话框中输入密码完成登录,即可开始执行命令或者传输文件。在使用SFTP时,默认只能显示 用户的宿主目录的内容和非隐藏文件。但是,有时候您可能还要查看其它目录或者隐藏文件,这时只需要在菜单“eidt->setting-> file transfer”的选项中选中“show root directory”和“show hidden file”两个选项即可。

使普通用户仅使用SFTP而没有使用Shell的权限
默认情况下管理员给系统添加的账号将同时具有SFTP和SSH的权限。让普通用户使用shell执行命令也是有很大的安全隐患的,如果能够禁止用户使用shell执行命令而仅使用SFTP传输文件,就能消除这种安全隐患,完全实现FTP的功能,
正如上文所述,SFTP没有单独的守护进程,只能借助于sshd守护进程,所以我们仍然需要使用SSH服务器,要保证sshd守护进程处于运行状态。具体实现方法如下:
首先,在编译安装时,编译中一定要有“–enable-static” 选项。安装成功后,在安装目录下的bin目录中执行下面的命令:
[root@localhost bin]#  ls  -l  ssh-dummy-shell*  sftp-server2*
将看到下列输出内容:
-rwxr-xr-x    1 root root 1350417 Apr 28 16:30 sftp-server2
-rwxr-xr-x    1 root root 3566890 Apr 28 16:30 sftp-server2.static
-rwxr-xr-x    1 root root 72388 Apr 28 16:30 ssh-dummy-shell
-rwxr-xr-x    1 root root 1813412 Apr 28 16:30 ssh-dummy-shell.static
其中带“static”后缀名,且比较大的两个文件就是加上“–enable-static”选项后生成的,后面我们将用到这里两个文件。
下面以添加普通账号test为例讲述具体操作步骤。
1.在“/home”目录(或者将要存放普通用户宿主目录的目录)下创建“bin”子目录,并将两个static文件复制到此目录下(复制后改名去掉static后缀),执行如下命令:
[root@localhost bin]# cd /usr/local/ssh3.2/bin
[root@localhost bin]#cp ssh-dummy-shell.static  /home/bin/ssh-dummy-shell
[root@localhost bin]# cp sftp-server2.static /home/bin/sftp-server
[root@localhost bin]#chown  -R  root.root  /home/bin
[root@localhost bin]#chmod  -R  755  /home/bin
2.添加一个组,使以后所有禁止使用shell的用户都属于这个组,这样便于管理更多的用户:
[root@localhost bin]#groupadd  template
3.在添加系统账号时使用如下命令:
[root@localhost root]#useradd -s /bin/ssh-dummy-shell -g template test
[root@localhost root]#passwd test
[root@localhost root]#mkdir /home/test/bin
[root@localhost root]#cd /home/test/bin
[root@localhost bin]#ln /home/bin/ssh-dummy-shell ssh-dummy-shell
[root@localhost bin]#ln /home/bin/sftp-server sftp-server
[root@localhost bin]#chown  -R  root.root  /home/test/bin
[root@localhost bin]#chmod  -R  755  /home/test/bin
3.用户添加成功后,还需要修改/etc/ssh2/sshd2_config文件,将下列内容:
#ChRootGroups  sftp,guest
改为:
ChRootGroups  sftp,guest,template
修改上面这行内容,主要是为了禁止普通用户查看系统的其它目录,把其权限限制在自己的主目录下。重新启动SSH服务器程序,在客户端使用SSH Secure File Transfer Client登录,即使选择显示根目录,普通用户也看不到其它的任何目录,而是把自己的主目录当作根目录。注意,这里使用的是按用户所属组限制,这样可以 使包含在template组内的所有用户都可以实现此功能。若您只要限制个别用户的话,可以修改下面的内容:
#ChRootUsers  anonymous,ftp,guest

, ,

No Comments

启动多个mysqld

为达到启动多个mysqld服务,只要启动时使用不同pid-file,datadir,socket,port是完全的可行。

步骤:
1、准备目录
mkdir /mysql1
chown mysql:mysql /mysql1
chmod 755 mysql /mysql1
2、准备新的服务要读取的数据库
cp /path/to/mysql/var /mysql1
3、创建mysqld启动脚本
#start_msyql
#!/bin/sh
rundir="$1"
port="$2"
echo "$rundir"
/www/mysql/bin/safe_mysqld –user=mysql –pid-file="$rundir"/mysql.pid 

–datadir="$rundir"/var -O max_connections=500 -O wait_timeout=600 -O key_buffer=32M 

–port="$port" –socket="$rundir"/mysql.sock &
说明:
脚本使用方法./start_mysql /mysql1 3307
./start_mysql dir port
dir:指的是mysql数据库及运行时产生的文件所在目录
port:指新的mysqld监听的端口

4、创建mysqld的停止脚本
#stop_mysql
#!/bin/sh
rundir="$1"
echo "$rundir"
/www/mysql/bin/mysqladmin -u root -p -S"$rundir"/mysql.sock shutdown

No Comments

细说高端服务器

高端服务器作为与网络关系最为密切的硬件产品之一,是在网络环境下提供网上客户机共享资源(包括查询、存储和计算等)的设备。它具有高可靠性、高性能、高 吞吐能力和大内存容量等特点,并且具备强大的网络功能和友好的人机界面,是以网络为中心的现代计算环境的关键设备。随着互联网的高速发展,高端服务器在整 个信息高速公路基础结构中的作用越发重要。

高端服务器综述

  服务器可以细分为两部分:一部分是IA(Intel Architecture)服务器,也就是我们常说的PC服务器或NT服务器;另一部分是比IA服务器性能更高的机器,如RISC/Unix服务器等,这种服务器被称为高端服务器。高端服务器的种类很多,从小型机、大型机到巨型机都有。

  高端服务器领域的竞争很激烈,国外品牌有IBM、HP、Sun、SGI等实力雄厚的大公司。国内的曙光公司背靠国家智能中心、中科院计算所,是"国家 863"计划的试点企业。诸如"曙光1000"、"曙光2000—I"和"曙光2000—II"等超级服务器称得上是里程碑式的产品。曙光的产品不仅仅局 限于高端产品,曙光是我国目前唯一拥有全系列服务器产品的生产商,产品系列包括:天阔PC服务器、天演UNIX服务器和天潮超级服务器。联想在前一段时间 推出了8路机架式服务器,显示了其具备的技术和进军高端服务器市场的信心。浪潮的小型机采用对称多处理器技术,主要用于国民经济部门,并有一定的销售数 量,浪潮是国内小型机产品的领头厂商。

  目前,大多数高端服务器都是RISC/Unix服务器。所以,谈到高端服务器的发展历史,就不能不提到RISC(精简指令集计算—Reduced Instruction Set Computing)技术。

  20世纪70年代,IBM发明了RISC技术。80年代后期,RISC结构逐渐代替了CISC (复杂指令集计算- Complex Instruction Set Computing),成为主流微处理器设计结构。使用
RISC技术是为了优化指令系统、加快程序编译、提高运行速度。RISC技术采用了更加简单和统一的指令格式、固定的指令长度以及优化的寻址方式,使整个 计算结构更加合理。一般来说,RISC处理器比同等的CISC处理器要快50%~75%,同时RISC处理器更容易设计和纠错。

  在RISC架构的基础上,各厂家又研制出了自己的处理器。目前在使用的主要有PowerPC处理器、SPARC处理器、PA-RISC处理器和MIPS处理器。

PowerPC处理器

  90年代,IBM、Apple和Motorola开发PowerPC芯片成功,并制造出基于PowerPC的多处理器计算机。PowerPC 架构的特点是可伸缩性好、方便灵活。第一代PowerPC采用0.6微米的生产工
艺,晶体管的集成度达到单芯片300万个。1998年,铜芯片问世,开创了一个新的历史纪元。2000年,IBM开始大批推出采用铜芯片的产品,如 RS/6000的X80系列产品。铜技术取代了已经沿用了30年的铝技术,使硅芯片多CPU的生产工艺达到了0.20微米的水平,单芯片集成2亿个晶体 管,大大提高了运算性能。而1.85V的低电压*作(原为2.5V)大大降低了芯片的功耗,容易散热,从而大大提高了系统的稳定性。

  现在,1GHz的Power4处理器已经完成设计。Power4除了将时钟频率从现在的500MHz提高到1GHz之外,还将率先采用 0.11微米工艺,晶体管集成度达1.7亿,以及7层铜和SOI(绝缘
硅-Silicon On Insulator)技术。这些技术将使Power4跃上服务器芯片的历史新台阶。

SPARC处理器

  1987年,Sun和TI公司合作开发了RISC微处理器—SPARC。SPARC微处理器最突出的特点就是它的可扩展性,这是业界出现的第一款有可扩展性功能的微处理器。SPARC的推出为Sun赢得了高端微处理器市场的领先地位。

  1999年6月,UltraSPARCⅢ首次亮相。它采用先进的0.18微米工艺制造,全部采用64位结构和VIS指令集,时钟频率从 600MHz起,可用于高达1000个处理器协同工作的系统上。
UltraSPARCⅢ和Solaris*作系统的应用实现了百分之百的二进制兼容,完全支持客户的软件投资,得到众多的独立软件供应商的支持。

  在64位UltraSPARC处理器方面,Sun公司主要有3个系列。首先是可扩展式s系列,主要用于高性能、易扩展的多处理器系统。目前 UltraSPARCⅢs的频率已经达到750GHz。还有将推出的
UltraSPARC Ⅳs和UltraSPARC Ⅴs等型号。其中 UltraSPARC Ⅳs的频率为1GHz,UltraSPARC
Ⅴs则为1.5GHz。其次是集成式i系列,它将多种系统功能集成在一个处理器上,为单处理器系统提供了更高的效益。已经推出的UltraSPARC Ⅲi的频率达到700MHz,未来的UltraSPARC Ⅳi的频率将达到
1GHz。

PA-RISC处理器

  HP公司的RISC芯片PA-RISC于1986年问世。第一款芯片的型号为PA-8000,主频为180MHz,后来陆续推出PA-8200、PA-8500和PA-8600等型号。

  HP公司开发的64位微处理器PA-8700将于2001年上半年正式投入服务器和工作站的使用。这种新型处理器的设计主频达到800MHz 以上。PA-8700使用的工艺是0.18微米SOI铜CMOS工艺,采用7层铜
导体互连,芯片上的高速缓存达到2.25MB,比PA-8600增加了 50%。

  HP公司未来还将推出PA-8800和PA-8900处理器,其主频分别达到1GHz和1.2GHz。PA-RISC同时也是IA-64的基础。在未 来的IA-64芯片中,会继续保持许多PA-RISC芯片的重要特性,包括PA-RISC的虚拟存储架构、统一数据格式、浮点运算、多媒体和图形加速等。

MIPS处理器

  MIPS技术公司是一家设计制造高性能、高档次及嵌入式32位和64位处理器的厂商,在RISC处理器方面占有重要地位。1984年,MIPS计算机公司成立。1992年,SGI收购了MIPS计算机公司。1998年,MIPS脱离SGI,成为MIPS技术公司。

  MIPS公司设计RISC处理器始于80年代初,1986年推出R2000处理器,1988年推出R3000处理器,1991年推出第一款 64位商用微处理器R4000。之后,又陆续推出R8000(于1994年)、R10000
(于1996年)和R12000(于1997年)等型号。之后,MIPS公司的战略发生变化,把重点放在嵌入式系统。1999年,MIPS公司发布MIPS 32和MIPS 64架构标准,为未来MIPS处理器的开发奠定了基础。新的
架构集成了所有原来MIPS指令集,并且增加了许多更强大的功能。MIPS公司陆续开发了高性能、低功耗的32位处理器内核(core)MIPS 32 4Kc与高性能64位处理器内核MIPS 64 5Kc。2000年,MIPS公司发
布了针对MIPS 32 4Kc的新版本以及未来64位MIPS 64 20Kc处理器内核。

  现在,RISC芯片仍然在Unix系统平台上广泛应用,而且可以支持WindowsNT系统。基于RISC架构的多处理器在像数据库或专用服务器这样的对计算能力有严格要求的领域仍然占据一席之地。

IA-64处理器

  自从1993年Intel及其伙伴企业推出基于486系统的IA服务器以来,IA服务器经历了486系统、PentiumPro系统、PII 系统、PIII系统、XEON系统等几个阶段。处理器系统的处理能力在大幅度提
高,而服务器系统的总线结构始终是IA-32总线体系。

  IA-32服务器在发展到8路XEON服务器以后,体系结构已经开始成为制约服务器性能提高的瓶颈。先是PCI通道带宽瓶颈,现在是内存总线带宽瓶颈 和处理器系统扩展瓶颈。因此,HP和Intel自1994年开始合作开发IA-64架构的处理器,希望通过把HP在RISC领域的十年工作经验和超长指令 字结合起来,在微处理器级上改进性能,以增加指令级上的并行性。

  IA-64结构既不是Intel的32位x86结构的扩充,也不是完全采用HP公司64位PA-RISC结构,而是一种全新的设计样式。IA -64基于EPIC(显性并行指令计算—Explicitly Parallel
Instruction Computing)技术。

  IA-64主要特性表现在几个方面:

  * IA-64的系统内存寻址空间更大,可以支持32GB以上的内存,而IA-32服务器目前可以支持的最大内存容量是16GB。

  * IA-64的处理器寻址、处理能力更强、速度更快。安腾(Itanium)处理器主频起步至少1GHz,二级Cache在2MB以上。

  * IA-64系统增强的128位浮点计算寄存器大大提高了系统的浮点计算能力。

  * IA-64系统将使用基于Infiniband技术的总线结构,它是以交换式系统总线代替目前的共享式总线为核心,将NGIO和 FutureIO两种技术合二为一,使系统总线、内存总线带宽和I/O总线带
宽都将大大提高。IA-64系统带宽在2GB/s以上,而目前的SMPIA- 32服务器的系统带宽是1.06GB/s,PCI带宽一般是0.4GB/s。

  * IA-64包括一系列的内置特征,以延长计算机的正常运转时间,减少宕机时间。机器检测体系在内存和数据路径中提供了错误恢复和纠错能力,它能让IA-64平台从预先导致系统失败的错误中恢复过来。

  目前正式宣布支持IA-64平台的有Monterey、Linux64、HP-UX、Solaris、Win2000等*作系统。

  高端服务器技术

  服务器性能指标以系统响应速度和作业吞吐量为代表。响应速度是指用户从输入信息到服务器完成任务给出响应的时间。作业吞吐量是整个服务器在单位时间内 完成的任务量。假定用户不间断地输入请求,则在系统资源充裕的情况下,单个用户的吞吐量与响应时间成反比,即响应时间越短,吞吐量越大。为了缩短某一用户 或服务的响应时间,可以分配给它更多的资源。性能调整就是根据应用要求和服务器具体运行环境和状态,改变各个用户和服务程序所分配的系统资源,充分发挥系 统能力,用尽量少的资源满足用户要求,达到为更多用户服务的目的。

  技术目标

  服务器所要求的高扩展性、高可用性、易管理性、高可靠性不仅是厂商追求的技术目标,也是用户所需求的。

  可扩展性具体表现在两个方面:一是留有富余的机箱可用空间,二是充裕的I/O带宽。随着处理器运算速度的提高和并行处理器数量的增加,服务器性能的瓶 颈将会归结为PCI及其附属设备。高扩展性意义在于用户可以根据需要随时增加有关部件,在满足系统运行要求同时,又保护投资。

  可用性是以设备处于正常运行状态的时间比例作为衡量指标,例如99.9%的可用性表示每年有8小时的时间设备不能正常运行,99.999%的可用性表 示每年有5分钟的时间设备不能正常运行。部件冗余是提高可用性的基本方法,通常是对发生故障给系统造成危害最大的那些部件(例如电源、硬盘、风扇和PCI 卡)添加冗余配置,并设计方便的更换结构(如热插拔),从而保证这些设备即使发生故障也不会影响系统的正常运行。

  可管理性旨在利用特定的技术和产品来提高系统的可靠性,降低系统的购买、使用、部署和支持费用。最显著的作用体现在减少维护人员的工时占用和避免系统 停机带来的损失。服务器的管理性能直接影响服务器的易用性。可管理性是TCO各种费用之中所占比例最大的一项。有研究表明,系统的部署和支持费用远远超过 了初次购买所花的费用,而付给管理和支持人员的报酬又是其中所占份额最高的。另外,工作效率的降低、商业机会的丧失和营业收入的下滑所带来的财务损失也不 可忽视。因此,系统的可管理性既是IT部门的迫切要求,又对企业经营效益起着非常关键的作用。可管理性产品和工具可通过提供系统内部的有关信息而达到简化 系统管理的目的。通过网络实现远程管理,技术支持人员在自己的桌面上即可解决问题,不必亲赴故障现场。系统部件可自动监视自己的工作状态,如果发现故障隐 患可随时发出警告,提醒维护人员立即采取措施保护企业数据资产,故障部件更换的*作也非常简单方便。

  说到可靠性,简单来说就是要求服务器必须稳定运行,也就是宕机率低。其中的关键在于*作系统与硬件设备的协作,如果待处理的资源控制在CPU 和*作系统上,而不是应用上,就会避免由于某项任
务处理出错而导致系统无法运行,服务器宕机率将大大降低,而这也恰恰是Unix/Linux系统的优势之一。导致日常维护工作的中断有:主机升级、硬件维 护或安装、*作系统升级、应用/文件升级或维护、文件重组、全系统备份等原因。意外的灾难包括硬盘损坏、系统故障、软件故障、用户错误、电源掉电、人为破 坏和自然灾害等因素。

  SMP

  SMP(Symmetrical Multi-Processor)就是对称式多处理器。在对称式结构中,机器里每一位处理器的地位都是一样的,它们连接在一起,共享一个存储器。存储器里 有一个*作系统,每个计算机都能运行这个*作系统,都能响应外部设备的要求,即每个存储器的地位是平等的、对称的。在国内市场上这类机型的处理器一般以4 个或8个为主,有少数是16个处理器。但是一般来讲,SMP结构的机器可扩展性较差,很难做到100个以上多处理器,常规的一般是8个到16个,不过这对 于多数的用户来说已经够用了。这种机器的好处在于它的使用方式和微机或工作站的区别不大,编程的变化相对来说比较小,原来用微机工作站编写的程序如果要移 植到SMP机器上使用,改动起来也相对比较容易。SMP结构的机型可用性比较差。因为4个或8个处理器共享一个*作系统和一个存储器,一旦*作系统出现了 问题,整个机器就完全瘫痪掉了。而且由于这个机器的可扩展性较差,不容易保护用户的投资。但是这类机型技术比较成熟,相应的软件也比较多,因此现在国内市 场上推出的并行机大量都是这一种。

集群技术

  通俗地说,集群是这样一种技术:它至少将两个系统连接到一起,使两台服务器能够像一台机器那样工作或者看起来好像一台机器。采用集群系统通常是为了提 高系统的稳定性和网络中心的数据处理能力及服务能力。自80年代初以来,各种形式的集群技术纷纷涌现。因为集群能够提供高可用性和可伸缩性,所以,它迅速 成为企业和ISP计算的支柱。

  常见集群技术

  1.服务器镜像技术

  服务器镜像技术是将建立在同一个局域网之上的两台服务器通过软件或其他特殊的网络设备(比如镜像卡)将两台服务器的硬盘做镜像。其中,一台服务器被指 定为主服务器,另一台为从服务器。客户只能对主服务器上的镜像的卷进行读写,即只有主服务器通过网络向用户提供服务,从服务器上相应的卷被锁定以防对数据 的存取。主/从服务器分别通过心跳监测线路互相监测对方的运行状态,当主服务器因故障宕机时,从服务器将在很短的时间内接管主服务器的应用。

  服务器镜像技术的特点是成本较低,提高了系统的可用性,保证了在一台服务器宕机的情况下系统仍然可用,但是这种技术仅限于两台服务器的集群,系统不具有可扩展性。

  2. 应用程序错误接管集群技术

  错误接管集群技术是将建立在同一个网络里的两台或多台服务器通过集群技术连接起来,集群节点中的每台服务器各自运行不同的应用,具有自己的广播地址, 对前端用户提供服务,同时每台服务器又监测其他服务器的运行状态,为指定服务器提供热备份作用。当某一节点因故障宕机时,集群系统中指定的服务器会在很短 的时间内接管故障机的数据和应用,继续为前端用户提供服务。

  错误接管集群技术通常需要共享外部存储设备—磁盘阵列柜,两台或多台服务器通过SCSI电缆或光纤与磁盘阵列柜相连,数据都存放在磁盘阵列柜上。这种 集群系统中通常是两个节点互为备份的,而不是几台服务器同时为一台服务器备份,集群系统中的节点通过串口、共享磁盘分区或内部网络来互相监测对方的心跳。

  错误接管集群技术经常用在数据库服务器、MAIL服务器等的集群中。这种集群技术由于采用共享存储设备,所以增加了外设费用。它最多可以实现32台机器的集群,极大地提高了系统的可用性及可扩展性。

  3.容错集群技术

  容错集群技术的一个典型的应用即容错机,在容错机中,每一个部件都具有冗余设计。在容错集群技术中集群系统的每个节点都与其他节点紧密地联系在一起, 它们经常需要共享内存、硬盘、CPU和I/O等重要的子系统,容错集群系统中各个节点被共同映像成为一个独立的系统,并且所有节点都是这个映像系统的一部 分。在容错集群系统中,各种应用在不同节点之间的切换可以很平滑地完成,不需切换时间。

  容错集群技术的实现往往需要特殊的软硬件设计,因此成本很高,但是容错系统最大限度地提高了系统的可用性,是财政、金融和安全部门的最佳选择。

  目前在提高系统的可用性方面用得比较广泛的是应用程序错误接管技术,即我们通常所采用的双机通过SCSI电缆共享磁盘阵列的集群技术,这种技术目前被各家集群软件厂商和*作系统软件厂商进一步扩充,形成了市面上形形色色的集群系统。

  操作系统

  1.Unix

  Unix操作系统具有功能强大、技术成熟、可靠性好、网络及数据库功能强等特点,在计算机技术特别是操作系统技术的发展中具有重要的不可替代的地位和 作用。尽管Unix系统受到了NT的严峻挑战,但它仍是目前唯一能在各个硬件平台上稳定运行的操作系统,并且在技术成熟程度以及稳定性和可靠性等方面仍然 领先于NT。

  Internet的出现对服务器提出了更高的要求,如何适应并满足不断变化、增强的网络应用需求成为服务器技术发展面临的重要问题。作为服务器核心技 术的处理器不能完全依赖主频的提高来提升处理能力,处理器结构成为提高服务器性能的瓶颈。Unix的重要厂商,如HP、IBM、Sun、SGI等的策略之 一就是采用新技术,不断加强性能和容量方面的领先地位,主要包括64位处理器及64位*作系统、快速可扩充的互连技术、大内存及高性能的集群以及高带宽 I/O技术等。

  IA-64体系结构出现后,Unix系统转向IA-64体系已成为业界的大趋势。最重要的是,诸多Unix厂商对IA-64的支持将打破以往 Unix和Wintel两大阵营的对立,将Unix所具备的开放性发挥到顶
峰,真正实现应用系统的跨平台使用,为用户提供最大的灵活性。Intel公司将设法建立不同Unix操作系统版本的通用标准,这是Intel为它的高端服 务器和下一代64位Merced芯片市场打下基础而必须达到的关键要求。这也是针对Microsoft与Intel在高端计算机领域存在着分歧而采取的一 个行动。Intel公司的开发战略旨在加速开发在基于Intel的服务器上运行的Unix系统。

  在创建"统一的Unix"的过程中,Intel将与HP、IBM、Sun和SCO等公司展开合作。它们的合作表明,在高端"企业软件"市场上, Unix将继续担当关键的角色,而Microsoft则仍然在"伸缩性"等方面以一个后起之秀的面貌出现。伸缩性是衡量*作系统在处理较大数据量时的稳定 性的一个重要尺度。

  2.Linux

  Linux在企业计算方面的应用主要有下列几个方面:RAS(可靠性Reliability、可用性Availability、可服务性Serviceability)技术、冗余磁盘阵列(RAID)技术、集群计算(Cluster)和并行计算技术。

  RAS、RAID、Cluster是企业运算中最尖端的部分,Linux如果试图进入银行、大型ICP等高端市场,不解决这些方面问题就没有任何可能性。

  Linux这个新兴的操作系统,随着其普及程度的提高和自身的迅速发展,以及伴随今年IA-64这个新一代的企业运算平台而推出的IA- 64Linux和支持多达64个CPU和64GB内存的企业级核心2.4的发布,
Linux必将在企业计算领域发挥越来越大的作用。

  在服务器操作系统市场,Linux不断增强原有的优势,一方面抵抗Windows对低端市场的侵蚀,另一方面向Unix控制下的高端服务器市场发起进 攻。1999年10月,TurboLinux发布了世界上第一个商业集群Linux服务器,这种成本低廉、有着良好扩展性和灵活性、具有广泛应用范围的解 决方案为Linux进入企业级高端应用和大型网站铺平了道路。据统计,大约有20%的Internet服务网站采用集群解决方案,未来这个市场将有惊人的 增长。由于在集群性能方面的进展,Linux正在冲击长期处于Unix控制下的高端服务器市场。

高端服务器选购

  面对市场上众多的品牌、各种专业技术、悬殊的产品价格,如何为网络建设选购功能强大、适应需求的高端服务器,往往让用户感到困惑。其实选购服务器有一些切实可行的方法,用户不妨遵循这样一条MAPSS原则,即M-可管理性;A-可用性;P-性能;S-服务;S-成本。

  一、M-可管理性(Management)

  网络管理员的一项重要工作就是对服务器的管理。服务器的管理工作一方面表现在可以及时地发现服务器的问题,进行及时的维护、维修,避免或减少因为服务 器的宕机造成用户系统的全面瘫痪;另一方面,管理员可以通过管理及时了解服务器性能方面的情况,对在运行中有问题的服务器进行及时的升级。所有这些都可以 大大地提高企业的工作效率。

  二、A-可用性(Availability)

  高端服务器是网络、数据的中心,很多企业(如金融、邮电、证券等)要尽量避免服务器在工作时间内宕机,服务器的宕机会造成企业内外信息的中断,对外收 不到定单、对内业务流程终止,这是现代企业不能允许的。另外,政府机关、医疗机构要保障自身工作的正常运转,也必须避免服务器在工作时间内宕机。选择产品 时,用户需注意服务器能否保证24×7×365不间断工作无宕机,是否采用冗余技术。运行在关键环境下的中心主服务器一般要求多电源、热插拔硬盘、 RAID卡,必要时需提供双机热备份方案。

  有多种原因会造成服务器宕机。硬件:AC供电故障、存储故障、内存、电源、风扇故障、处理器故障、系统板等;软件:系统软件、应用软件;使用:管理员、用户的误*作;环境:火灾、地震、洪水等。

  既然宕机会给用户带来巨大损失,同时宕机的原因有多种多样,用户在选购时就要为有可能发生的最坏情况作好准备。

  1.在AC供电故障问题上采用UPS加以解决。

  2.在内存方面,服务器需支持错误检测和恢复(ECC-Error Checking &
Correcting)技术,此技术可以更正内存中的一位错。如果在ECC技术基础上增加了内存回写技术,就可有效避免两位错的出现。

  3.服务器内部电源需要支持热插拔冗余电源,可避免因某一个电源的损坏而造成服务器的宕机。

  4.服务器在运行时,内部温度会升高。系统温度过高极容易造成死机甚至硬件损坏。所以需要热插拔冗余风扇来帮助服务器进行有效的散热。

  5.对于系统板、软件、使用等原因造成的系统宕机,用户可以采用更高一级的可用性解决方案,如集群技术等方案加以解决。

  用户在为可用性确定服务器配置时,一定要注意两点:1.不可过分节约开支降低可用性,因为由此引发的宕机往往会造成更大的损失。2.选择务服器时,用 户应该详细了解服务器的具体特性和面向的应用环境是否与自己的需求吻合。从自己的实际需求出发,正确认识企业网络规模,合理利用资金,不要盲目追求高配置 而造成资金浪费。同时,用户也不要局限于仅满足当前需求。要有长远眼光,充分考虑到业务的增长,选择易升级、具有高可扩展性的服务器产品。要考虑到保护企 业投资。

  三、P-性能(Performance)

  由于企业的大量数据需要在服务器上运行,因此服务器的性能直接影响到企业的工作效率。一提到服务器性能,很多用户马上想到选用更高主频的CPU、更大的内存。其实这些仅仅是提高服务器整体性能的一部分。服务器整体性能的提高由以下几方面决定:

  1.芯片组

  芯片组用于把计算机上的各个部件连结起来,实现各部件之间的通讯,芯片组是计算机系统的核心部件。芯片组直接决定系统支持的CPU类型、支持的CPU 数目、内存类型、内存最大容量、系统总线类型、系统总线速度等等,归根结底,一个计算机系统的最终性能应由芯片组决定。选择最先进的芯片组结构,就保证了 系统性能的领先。

  2.内存类型、最大支持容量

  由芯片组决定的内存类型、最大支持容量对于系统的运算处理能力也具有非常大的影响。同样,如果我们的应用需要大量的运算处理,如数据库、ERP等应用,建议根据实际情况配置较大的内存容量。

  3.采用高速的I/O通道

  I/O始终是计算机系统的瓶颈,采用高速的I/O通道对服务器整体性能的提高具有非常重要的意义。对于需要客户机经常与服务器交换数据的应用,如数据库、ERP、证券等应用需要更为高速的I/O性能。

  4.网络支持

  服务器必须通过其内部的网卡与客户机通讯,网络带宽对服务器的响应具有决定意义。所以,不要忽视服务器对网络的支持情况。

  四、S-服务(Service)

  性能、价格、服务一贯是用户选购服务器的三个主要因素。服务首先是维修,维修的重中之重是维修速度,因为用户不可能忍受服务器长时间得不到维修而影响工作。7×24的服务对用户来说是非常必要的。其次是技术支持。包括售前、售后电话支持,还有在网站上提供的支持软件。

  五、S-节约成本(Saving Cost)

  有时用户往往被产品本身的价格所迷惑,以为价格越低自己付出的成本越低。其实不然,对于成本,我们应考虑拥有总成本。因为价格不同往往意味着性能、品 质、服务的不同。对于服务器我们必须从MAPS(管理性、可用性、性能、服务)四个方面全面考虑,才可能得到一个真正的成本。服务器性能的每一点提升,都 是以金钱为代价的。在价格方面,过低的价格意味着用户的付出会更多。低价格意味着品质的下降、服务的下降。高端服务器不是普通的计算机产品,其质量的好坏 本身就是用户企业自身的生命,企业用户如果过多地追求低价格,必然会冒服务器宕机以及售后维修、服务周期长的风险。购买知名品牌、性价比合适的产品,意味 着用户在将来不必付出更大的代价,从而降低拥有总成本。

, ,

No Comments

某君开公司

一年前,某君利用“朋友的朋友”找到我,要我给他的公司“帮帮忙”。

某君系某国内知名网络设备公司的业务员,在原公司做了一段时间后,小赚了一笔后决心自己给自己打工了。开办一家公司,投资100w,主营各类音响制品在线租赁,据称要与当当一决雌雄。

其实他对于网站建设可谓是一窍不通,看看他的前期准备。

 

  1. 寻找资金,凑齐100w开公司;
  2. 在某稍偏远地段(内环线以外,外环线以内)租写字楼一间0.12/m2;
  3. 招聘技术人员2名 1200/月,非技术员工>10名 800/月(送货员);
  4. 从某在校学生手中购得全站程序,花费2w;
  5. 购买服务器4000,没有错,P42.4+512M+40GATA的组装服务器;
  6. 购买网站空间(从来没用过,据说是为了备份)1G,8000/年;
  7. 服务器托管。。。不详,按照其IDC的报价,估计要5000/年;
  8. 仓库一间…不详。

首先别的不说,俗话说外行管内行——越管越忙。当然所谓的技术人员也只是会上网而已。我开始还以为是公司自己开发的网站,谁知到了后来我发现所谓的技术人员连html也不知道,“技术人员还懂什么?”我牢骚到,“发布新闻,扫描图片" ,狂晕。

在 说那个全站程序,PHP源码,包含后台mysql。先不说页面美工到底能不能吓死人,单单移植到服务器上满屏幕的error和warming就能把一个屏 幕占满,整个网站连同图片在内不压缩用一张3寸盘就拷的下——最多一个礼拜的工作量(估计那位同学现在都在狂喜中)。经过联系才知道原站是在 windows下开发的,老板既然非用linux的系统不可(号称是为了安全),给我的任务就是改吧。

鉴于朋友的面子,我接了这个苦差,每周4小时(其实远 远超过的),每月1000块。我起初以为最多2个礼拜就能搞定,谁知改了半天才知道,比重新做一个站点还复杂,改的途中又发现一个接一个的漏洞。我又不得 不找了自己的朋友帮忙做了美工(还好请她吃了几顿饭完事),用PHPBB做了论坛和留言版,总之这个网站程序除了思路之外别的都是我的了。

等到工程进展到80%的时候,他们的攻势全面铺开了,仓库,人员都配备齐了,片子也到货了。先不说加入他们的会员到底跟每周买2张盗版DVD到底有什么价格优势,至少一点正版的出货肯定没有盗版的快(中国特色)。

总算,在我拿到第2个1000块的时候,机房定好了,可以上架了,我的站点也算补丁加补丁的弄好了——内测。

第3个1000块,内测强行结束,要正式运营了,我起初以为他们的市场铺的足够大,可能服务器会吃劲,然而后来才知道所有的担心是多余的,连同老板的朋友总共第一周开发了4个会员,第二周10个,一个月后20个左右,其中还不乏一个人注册多个的情况。

准备拿第4个1000块时,我得到消息,投资方要撤资了。

现在一年过去了,我去访问这个站点——依然存在,只是,跟我走的时候一模一样,没有人更新……

闹剧

No Comments

Sun寄的开发包到了!

在SUN 社区申请了开发包,大概过了有近2个月,SUN方面的开发包才寄到,挂号平信。

开发包为一张DVD(很旧),内含

  • J2EE
  • J2ME
  • J2SE
  • JSC2EA
  • JSE8EA
  • StarSuite
  • Sun Studio 10 (正好赶上Sun今天发布了SS11)

近期Sun也是动作频频,先是Solaris开源,接着Solaris免费大派送,现在又是在派发SDK。一个商业公司能做到这样也算是到家了。

对SUN表示感谢!向太阳致敬!!

No Comments