linux 信任关系 linux查看防火墙命令

各位老铁们好,相信很多人对linux 信任关系都不是特别的了解,因此呢,今天就来为大家分享下关于linux 信任关系以及linux查看防火墙命令的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!

如何建立linux ssh信任的方法与常见问题

在Linux服务器之间建立信任关系,是很多线上服务系统的基础性工作,这样能便于程序在多台服务器之间自动传输数据,或者方便用户不输入密码就可以在不同的主机间完成登录或者各种操作。

网上关于建立Linux信任关系(ssh trust)的中文文章有一些,但是写得都不太详细,这里汇总了方方面面的资料,把多机信任关系建立方法说说清楚(文/陈运文)

一建立信任关系的基本操作

基本场景是想从一台Server服务器直接登录另一台,或者将Server服务器的数据不需密码验证直接拷贝至Client服务器,以下我们简称Server服务器为S(待发送的数据文件在这台服务器上),Client服务为C,信任关系的最简单操作方法如下:

1在S服务器上,进入当前用户根目录下的隐藏目录.ssh,命令如下:

cd~/.ssh

(注:目录名前的点好”.”表示该文件夹是一个特殊的隐藏文件夹,ls命令下默认是看不到的,通过 ls–a命令观察到)

2生成S服务器的私钥和公钥:

ssh-keygen-t rsa

(注:rsa是一种加密算法的名称,此处也可以使用dsa,关于rsa和dsa算法的介绍可见本文后半章节)

ssh-keygen生成密钥用于信任关系生成

-此时会显示Generating public/private key pair.并提示生成的公钥私钥文件的存放路径和文件名,默认是放在/home/username/.ssh/id_rsa这样的文件里的,通常不用改,回车就可以

然后Enter passphrase(empty for no passphrase):通常直接回车,默认不需要口令

Enter same passphrase again:也直接回车

然后会显式密钥fingerprint生成好的提示,并给出一个RSA加密协议的方框图形。此时在.ssh目录下ls,就可以看到生成好的私钥文件id_rsa和公钥文件id_rsa.pub了

以下是各种补充说明:

注1:如果此时提示 id_rsaalready exists,Overwrite(y/n)则说明之前已经有人建好了密钥,此时选择n忽略本次操作就行,可以直接用之前生成好的文件;当然选y覆盖一下也无妨

注2:公钥用于加密,它是向所有人公开的(pub是公开的单词public的缩写);私钥用于解密,只有密文的接收者持有。

3在Server服务器上加载私钥文件

仍然在.ssh目录下,执行命令:

ssh-add id_rsa

系统如果提示:Identity added: id_rsa(id_rsa)就表明加载成功了

下面有几个异常情况处理:

–如果系统提示:could not open a connection to your authentication agent

则需要执行一下命令:

ssh-agent bash

然后再执行上述的ssh-add id_rsa命令

–如果系统提示id_rsa: No such file or directory

这是系统无法找到私钥文件id_rsa,需要看看当前路径是不是不在.ssh目录,或者私钥文件改了名字,例如如果建立的时候改成 aa_rsa,则这边命令中也需要相应改一下

-如果系统提示 command not found,那肯定是你命令敲错字符了J

-提示Agent admitted failure to sign using the key,私钥没有加载成功,重试ssh-add

-注意id_rsa/id_rsa.pub文件不要删除,存放在.ssh目录下

4把公钥拷贝至Client服务器上

很简单,例如 scp id_rsa.pub user@10.11.xx.xx:~

5 ssh登录到Client服务器上,然后在Client服务器上,把公钥的内容追加到authorized_keys文件末尾(这个文件也在隐藏文件夹.ssh下,没有的话可以建立,没有关系)

cat id_rsa.pub>>~/.ssh/authorized_keys

以下是各种补充说明,遇到问题时可以参考:

注1:这里不推荐用文件覆盖的方式,有些教程直接scp id_rsa.pub到Client服务器的authorized_keys文件,会导致之前建的其他信任关系的数据被破坏,追加到末尾是更稳妥的方式;

注2: cat完以后,Client服务器上刚才拷贝过来的id_rsa.pub文件就不需要了,可以删除或移动到其它地方)

注3:ssh-keygen命令通过-b参数可以指定生成的密钥文件的长度,如果不指定则默认为1024,如果ssh-keygen–b 4096(最长4096),则加密程度提高,但是生成和验证时间会增加。对一般的应用来说,默认长度已经足够胜任了。如果是rsa加密方式,那么最短长度为768 byte

注4:authorized_keys文件的权限问题。如果按上述步骤建立关系后,仍然要验证密码,并且没有其他报错,那么需要检查一下authorized_keys文件的权限,需要作下修改: chmod g-w authorized_keys

OK,现在试试在Server端拷贝一个文件到Client服务器,应该无需交互直接就传过去了。

但是此时从Client传数据到Server服务器,仍然是需要密码验证的。如果需要两台服务器间能直接互传数据,则反过来按上述步骤操作一下就可以了

二删除服务器间信任关系的方法

如果想取消两台服务器之间的信任关系,直接删除公钥或私钥是没有用的,需要在Client服务器上,打开~/.ssh/ authorized_keys文件,找到对应的服务器的公钥字段并删除

每个段落的开头是ssh-rsa字样,段尾是Server服务器的帐号和ip(如下图红框),需要细心的找一下后删除整段

密钥文件内容和删除Linux服务器间信任关系的方法

三各种可能遇到的情况和处理方法

–提示 port 22: Connection refused

可能的原因:没有正确安装最新的openssh-server,安装方法如下

sudo apt-get install openssh-server

不支持apt安装的,可以手工下载:

wget ftp.ssh.com/pub/ssh/ssh-3.2.9.1.tar.gz

–关于目录和文件的权限设置

.ssh目录的权限必须是700,同时本机的私钥的权限必须设置成600:

chmod 600 id_rsa

否则ssh服务器会拒绝登录

四关于RSA和DSA加密算法

在ssh-keygen命令中,-t参数后指定的是加密算法,可以选择rsa或者dsa

RSA取名自算法的三位提出者Ron Rivest, Adi Shamir, and Leonard Adleman的姓名首字母,作为一种非对称加密算法,RSA的安全性基于及其困难的大整数分解(两个素数的乘积的还原问题)。关于RSA算法原理的文章很多,感兴趣的朋友可以找来读一读。

DSA= Digital Signature Algorithm,基于有限域离散对数难题,是Schnorr和ElGamal签名算法的变种,一般用于数字签名和认证,被美国标准局(NIST)采纳为数字签名标准DSS(Digital Signature Standard),based on discrete logarithms computation.

DES= Digital Encryption Standard. Obsolete standard.

RSA算法好在网络容易实现密钥管理,便进行数字签名,算法复杂,加/解速度慢,采用非对称加密。在实际用于信任关系建立中,这两种方法的差异很微小,可以挑选其一使用。

五关于SSH协议的介绍

SSH全称Secure SHell,顾名思义就是非常安全的shell的意思,SSH协议是IETF(Internet Engineering Task Force)的Network Working Group所制定的一种协议。SSH的主要目的是用来取代传统的telnet和R系列命令(rlogin,rsh,rexec等)远程登陆和远程执行命令的工具,实现对远程登陆和远程执行命令加密。防止由于网络监听而出现的密码泄漏,对系统构成威胁。

ssh协议目前有SSH1和SSH2,SSH2协议兼容SSH1。目前实现SSH1和SSH2协议的主要软件有OpenSSH和SSH Communications Security Corporation公司的SSH Communications软件。前者是OpenBSD组织开发的一款免费的SSH软件,后者是商业软件,因此在linux、FreeBSD、OpenBSD、NetBSD等免费类UNIX系统种,通畅都使用OpenSSH作为SSH协议的实现软件。因此,本文重点介绍一下OpenSSH的使用。需要注意的是OpenSSH和SSH Communications的登陆公钥/私钥的格式是不同的,如果想用SSH Communications产生的私钥/公钥对来登入到使用OpenSSH的linux系统需要对公钥/私钥进行格式转换。

第一次登陆后,ssh就会把登陆的ssh指纹存放在用户home目录的.ssh目录的know_hosts文件中,如果远程系统重装过系统,ssh指纹已经改变,你需要把.ssh目录下的know_hosts中的相应指纹删除,再登陆回答yes,方可登陆。请注意.ssh目录是开头是”.”的隐藏目录,需要ls–a参数才能看到。而且这个目录的权限必须是700,并且用户的home目录也不能给其他用户写权限,否则ssh服务器会拒绝登陆。如果发生不能登陆的问题,请察看服务器上的日志文件/var/log/secure。通常能很快找到不能登陆的原因。

六关于ssh_config和sshd_config文件配置的说明

/etc/ssh/ssh_config:

Host*

选项“Host”只对能够匹配后面字串的计算机有效。“*”表示所有的计算机。

ForwardAgent no

“ForwardAgent”设置连接是否经过验证代理(如果存在)转发给远程计算机。

ForwardX11 no

“ForwardX11”设置X11连接是否被自动重定向到安全的通道和显示集(DISPLAY set)。

RhostsAuthentication no

“RhostsAuthentication”设置是否使用基于rhosts的安全验证。

RhostsRSAAuthentication no

“RhostsRSAAuthentication”设置是否使用用RSA算法的基于rhosts的安全验证。

RSAAuthentication yes

“RSAAuthentication”设置是否使用RSA算法进行安全验证。

PasswordAuthentication yes

“PasswordAuthentication”设置是否使用口令验证。

FallBackToRsh no

“FallBackToRsh”设置如果用ssh连接出现错误是否自动使用rsh。

UseRsh no

“UseRsh”设置是否在这台计算机上使用“rlogin/rsh”。

BatchMode no

“BatchMode”如果设为“yes”,passphrase/password(交互式输入口令)的提示将被禁止。当不能交互式输入口令的时候,这个选项对脚本文件和批处理任务十分有用。

CheckHostIP yes

“CheckHostIP”设置ssh是否查看连接到服务器的主机的IP地址以防止DNS欺骗。建议设置为“yes”。

StrictHostKeyChecking no

“StrictHostKeyChecking”如果设置成“yes”,ssh就不会自动把计算机的密匙加入“$HOME/.ssh/known_hosts”文件,并且一旦计算机的密匙发生了变化,就拒绝连接。

IdentityFile~/.ssh/identity

“IdentityFile”设置从哪个文件读取用户的RSA安全验证标识。

Port 22

“Port”设置连接到远程主机的端口。

Cipher blowfish

“Cipher”设置加密用的密码。

EscapeChar~

“EscapeChar”设置escape字符。

/etc/ssh/sshd_config:

Port 22

“Port”设置sshd监听的端口号。

ListenAddress 192.168.1.1

“ListenAddress”设置sshd服务器绑定的IP地址。

HostKey/etc/ssh/ssh_host_key

“HostKey”设置包含计算机私人密匙的文件。

ServerKeyBits 1024

“ServerKeyBits”定义服务器密匙的位数。

LoginGraceTime 600

“LoginGraceTime”设置如果用户不能成功登录,在切断连接之前服务器需要等待的时间(以秒为单位)。

KeyRegenerationInterval 3600

“KeyRegenerationInterval”设置在多少秒之后自动重新生成服务器的密匙(如果使用密匙)。重新生成密匙是为了防止用盗用的密匙解密被截获的信息。

PermitRootLogin no

“PermitRootLogin”设置root能不能用ssh登录。这个选项一定不要设成“yes”。

IgnoreRhosts yes

“IgnoreRhosts”设置验证的时候是否使用“rhosts”和“shosts”文件。

IgnoreUserKnownHosts yes

“IgnoreUserKnownHosts”设置ssh daemon是否在进行RhostsRSAAuthentication安全验证的时候忽略用户的“$HOME/.ssh/known_hosts”

StrictModes yes

“StrictModes”设置ssh在接收登录请求之前是否检查用户家目录和rhosts文件的权限和所有权。这通常是必要的,因为新手经常会把自己的目录和文件设成任何人都有写权限。

X11Forwarding no

“X11Forwarding”设置是否允许X11转发。

PrintMotd yes

“PrintMotd”设置sshd是否在用户登录的时候显示“/etc/motd”中的信息。

SyslogFacility AUTH

“SyslogFacility”设置在记录来自sshd的消息的时候,是否给出“facility code”。

LogLevel INFO

“LogLevel”设置记录sshd日志消息的层次。INFO是一个好的选择。查看sshd的man帮助页,已获取更多的信息。

RhostsAuthentication no

“RhostsAuthentication”设置只用rhosts或“/etc/hosts.equiv”进行安全验证是否已经足够了。

RhostsRSAAuthentication no

“RhostsRSA”设置是否允许用rhosts或“/etc/hosts.equiv”加上RSA进行安全验证。

RSAAuthentication yes

“RSAAuthentication”设置是否允许只有RSA安全验证。

PasswordAuthentication yes

“PasswordAuthentication”设置是否允许口令验证。

PermitEmptyPasswords no

“PermitEmptyPasswords”设置是否允许用口令为空的帐号登录。

AllowUsers admin

“AllowUsers”的后面可以跟着任意的数量的用户名的匹配串(patterns)或user@host这样的匹配串,这些字符串用空格隔开。主机名可以是DNS名或IP地址。

windows,linux,unix系统有什么区别为什么说黑客偏爱linux

2003年6月,一些计算机黑客举行了一次“篡改者挑战赛”,目标是在6小时内篡改6000个网站的页面。根据所攻破的操作系统的不同为参与者计分。采用Windows系统的网站计1分,UNIX或Linux,3分。也就是说,他们认为UNIX和linux比较难以攻破。

一、理解误区:

误区一:linux比windows更容易被攻击

有人任务Linux的代码完全开放,也就是说,何人都能得到UNIX和Linux中的“透明代码”——包括黑客、心怀不满的员工和竞争对手——而Windows的代码是收到严格保护的知识产权,那么UNIX和Linux就应该比Windows更容易受到攻击了,对吧?

“不对,”Justin Steinman,Novell北美区经理说,“和Windows所谓‘以隐匿求安全’相比,Linux的‘以透明求安全’更为安全。因为整个Linux团体都在完善和关注其代码。一旦有人发现安全漏洞,人们就会对它进行修补,并把补丁程序发布给整个团队。”

Steinman把这种响应速度和微软的“补丁星期二”做了对比。微软每个月的的第二个星期二发布Windows操作系统和其他应用软件的补丁程序。“如果你在第二个星期三发现了漏洞呢?你得等上30天才能得到补丁程序。”他说。

误区二:大多数Windows能干的事Linux干不了

像我们日常用的一些QQ,暴风影音,Word在Linux上都能使用,相对一些更加专业话的软件Linux更是一个先驱者,比如 Matlab, Mathematica, AutoCAD, Candence的,Synopsys的,Avant!的......全都是先有 UNIX的版本(包括Linux),然后再考虑移植给Windows,甚至根本不移植给 Windows,因为 Windows的机器一般没有足够的能力运行这样的程序。

误区三:IDE

有些人在抱怨为什么 Linux没有一个良好的 IDE开发环境。Linux现在已经有一些 IDE了,但是总是有很多问题。你是不是正在寻找,正在期望 Linux某一天可以有一个VC那样的开发环境?你有没有发现你正在进入微软给你设下的怪圈?你为什么一定要用 IDE?你说:"IDE开发迅速,调试方便,适合大型程序......"那说明微软的程序在我们的脑子里已经比较根深蒂固,真的是时候需要好好清醒一下了。

看看大型的 UNIX程序,包括 Linux内核,各种网络服务程序,Xwindow程序在内,哪一个是 IDE搞出来的?还有Candence, Synopsys,Mentor的高性能的图形界面 EDA程序也都不是 IDE写的。微软的人在写 Windows本身的时候也根本不用 IDE!

有的时候,我们甚至将"编辑器"和"编译器"都搞混淆了!一个窗口里输入了代码,点击一个按钮就可以编译程序,但是这里面到底是怎么工作的,不知道!我们被盖在上面的窗口挡住了视线,甚至会以为那个按钮就是编译器!一个 IDE集成了编辑器,编译器,汇编器,调试器,跟踪器......这个编辑器功能肯定比不上 VIM或 Emacs,编译器比不上 GCC,汇编器比不上 as,调试器比不上 gdb, ddd,跟踪器比不上 strace, ltrace, truss。最后我们得到的是一套整合的很好的低能的程序。

而在 UNIX下就不一样了。你可以用你最喜欢的 VIM编辑程序,你在 VIM里可以调用 GNU make,make可以调用 gcc, ld,...实际上 make能帮你很多忙。make的出错信息可以被 VIM捕获,VIM能帮你在源程序里定位。你如果喜欢 icc,你可以让 make用 icc而不是 gcc。你如果觉得 gdb跟踪变量时比较麻烦,你可以用 ddd来显示各种数据结构之间的关系。你还可以在 Emacs里调用 gdb,那样就可以同步显示源代码了。而且 VIM和 Emacs还可以编辑很多其它东西,比如信件,LaTeX文档,HTML,配置文件......你不用另外找一个什么编辑器来干这些杂活了。很多程序比如 Mutt, tin都可以在内部使用 VIM,这样就更方便了。

二、安全性方面

1权限方面:

Quandt指出,Linux和UNIX在架构中采用了“最少特权”概念。她把提供某些门的专用钥匙与提供能打开所有房门的万能钥匙做了比较。在Linux 2.6中,安全架构比以前的版本有了很大改善,支持最少特权,具有以角色为基础的接近权控制,用户只进入他们需要使用的那部分系统即可。

2用户结构方面:

多用户设计假定用户较多,但坦白讲,对他们信任较少。简单来说,Windows把用户程序和操作系统的核心集成到一起,而Linux和UNIX则把核心区域与用户区域区分开来。

“这是固有的安全。” Sun公司Solaris Security经理Mark Thacker说,“UNIX从最开始就是多用户系统,不是逐渐演变为服务器操作系统的台式机系统。UNIX一直都是把用户领域和核心领域分开的,这是任何源于DOS的操作系统所不具备的。”

3运行状况方面:

可以裸奔(无需杀毒软件,反广告/间谍防护软件),甚至可以数月不用重启机器,因为它具有独特的内存管理方式。(大家可以想一下如果windows下裸奔会是怎样的后果;windows如果很长一段时间不关机或是重启,那么它运行肯定不会有刚开机时那么流畅),所以说安全上Linux与windows比较没意思。

二、技术特点分析

这一方面就更加没有意思了,甚至可以夸张的一点描述UNIX/Linux可以将Windows秒出十万八千里。

1内存机制方面

Linux有比 Windows先进的磁盘缓冲技术。你有没有发现你往硬盘写数据的时候,很快就完成了?那是因为 Linux在内存里有很多磁盘缓冲区,你要写到硬盘上的数据先被写到了这些内存里。在一定的间隔时间后,Linux才把数据写回硬盘,这样不但高效,避免了多次硬盘操作,而且减少了文件的不连续,也就是减少了"碎片"。Windows当然也有磁盘缓冲,但是由于它内存管理的低效率,它不敢把大量内存都用来作为磁盘缓冲,因为它没有能力在用的时候随时把内存收回来。

2与硬件结合性

由于开放源代码的特点LINUX得到AMD和INTEL公司的关注。因为这两家公司都希望在64位芯片时代能够和开放源代码的操作系统系统紧密联系LINUX的发展速度急快,从它的内核就可以看出。LINUX比其他操作系统更能适应芯片技术发展。

3并行化多任务处理

Linux系统调度每一个进程平等地访问微处理器。由于CPU的处理速度非常快,其结果是,启动的应用程序看起来好像在并行运行。事实上,从处理器执行一个应用程序中的一组指令到Linux调度微处理器再次运行这个程序之间只有很短的时间延迟,用户是感觉不出来的。

经过对最重量级的数据库Oracle 9i测试,在LINUX下的运行速度比在WIN2003 SERVER要快25%。这一篇,LINUX占了上风。每次oracle发布新版数据库的时候,都是会最先发布Linux版本的,而Windows版本的至少要半年以后才发布,深入理解后认为从底层来说俩个版本简直就是2种软件,虽然提供相同的功能。

4网络信息化

Linux的组网能力非常强大,它的TCP/IP代码是最高级的。Linux提供了对于当前的TCP/IP协议的完全支持,并且包括了对下一代Internet。协议Ipv6的支持。Linux内核还包括了IP防火墙代码、IP防伪、IP服务质量控制及许多安全特性。这些特性可以和像Cisco这样的公司提供的高端路由设备的特性相媲美。此外,利用Redhat Linux提供的Samba组(并不是RedHat Linux独有),Linux可以作为Windows客户机的打印和文件服务器,还可以用做NT的文件和打印服务器。运用Linux包含的AppleTalk模块,Linux甚至可以作为一个Macintosh客户机的文件和打印服务器。

三市场方面

1开源性方面:

杨元庆:“Windows不开源严重制约了IT产业发展”,开放源代码是大势所趋,Linux前途广阔。互联网免费的今天,开源性的事物将势必会有更强的生存能力。

2 PC市场方向

全球PC市场出现了历史上最严重的滑坡趋势下,虽然在Window8的强烈攻势下,消费者显得无动于衷,依然转向了智能手机和平板电脑。在如今Android和iOS占据大半江山的背景下,windowsphone的前景愈发暗淡。显然微软在移动终端高速发展的今天,windows操作系统存在天然的弱势。

3费用问题

很多Linux版本是不需要花钱的,恰恰相反,Windows每个版本的安装都是需要另付费用的。

linux操作系统如何使用

一、选择适合自己的linux发行版

谈到linux的发行版本,太多了,可能谁也不能给出一个准确的数字,但是有一点是可以肯定的,linux正在变得越来越流行,面对这么多的Linux发行版,打算从其他系统转到linux系统来的初学者可能会感到困惑,即便是忠实的 Linux用户也没有时间和精力去挨个尝试,因此初学者在学习linux的之前,需要有一个明确的方向,选择一个适合自己的系统开始学习linux至关重要!下面我们就分类介绍。

1.1初学者入门首选-redhat系列

在学习redhat系列linux之前,首先要了解以下redhat linux各个发行版本之间的关系。

1.Red Hat Linux

Red Hat Linux是redhat最早发行的个人版本的linux,其1.0版本于1994年11月3日发行。虽然其历史不及其它linux发行版本悠久,但比起很多的Linux发行套件,Red Hat的历史悠久得多。自从Red Hat 9.0版本发布后,RedHat公司就不再开发桌面版的 Linux发行套件,Red Hat Linux停止了开发,而将全部力量集中在服务器版的开发上,也就是 Red Hat Enterprise Linux版。2004年4月30日,Red Hat公司正式停止对Red Hat 9.0版本的支持,标志著Red Hat Linux的正式完结。原本的桌面版Red Hat Linux发行套件则与来自开源社区的 Fedora进行合并,成为 Fedora Core发行版本。

目前Red Hat分为两个系列:由Red Hat公司提供收费技术支持和更新的Red Hat Enterprise Linux,以及由社区开发的免费的Fedora Core。

2.Fedora Core

Fedora Core(缩写为FC)被红帽公司定位为新技术的实验场地,许多新的技术都会在 FC中检验,如果稳定的话红帽公司则会考虑加入 Red Hat Enterprise Linux中。

Fedora Core 1发布于2003年年末,而FC的定位便是桌面用户。FC提供了最新的软件包,同时,它的版本更新周期也非常短,仅6个月。由于版本更新频繁,性能和稳定性得不到保证,因此,一般在服务器上不推荐采用Fedora Core。

其实可以这么认为,Fedora就是Red Hat发行Red Hat企业版linux的一个实验版本,以用户做测试,为Red Hat企业版发布奠定基础。

3.Red Hat Enterprise Linux

Red Hat Enterprise Linux(缩写为RHEL,Red Hat的企业版)。Red Hat现在主要做服务器版的linux开发,在版本上注重了性能和稳定性以及对硬件的支持。由于企业版操作系统的开发周期较长,注重性能、稳定性和服务端软件支持,因此版本更新相对较缓慢。

RedHat Enterprise Linux又分为4个版本 Advanced Server(AS)、ES Workstation(WS)、Desktop,它们的差别不太大,只是功能方面的差别。

4.Centos

CentOS全名为“社区企业操作系统”(Community Enterprise Operating System)

CentOS产生的背景:

Redhat发布Redhat 9。0后,不再开发redhat 10,11……,全面转向Redhat enterprise linux(简写为rhel)的开发,和以往不同的是,新的redhat企业版要求用户先购买lisence,redhat同时承诺确保产品的稳定性,安全性。rhel二进制代码不再提供下载,而是作为redhat服务的一部分,但源代码依然是开放的。在这种情况下,出现了centos、whitebox、dao等等一批open source的企业版本,其中以centos最为活跃。

下面讲述centos是如何制作产生的:

CentOS社区将Redhat的网站上的所有源代码下载下来,进行重新编译。由于AS/ES/WS是商业产品,因此,必须将所有Redhat的Logo和标识改成自己的CentOS标识。比如将AS4.0原版的SRPM源码编译后,换上Centos社区的logo,这样就成为了CentOS 4.0。Redhat Enterprise Linux AS4 Update1的源码编译后,就成为了CentOS4.1。AS4 Update2的源码编译后,就成为了CentOS4.2等等。CentOS就是这样产生的。

因此,可以说CentOS就是Redhat的AS/ES/WS的免费版本,使用centos可以获得与redhat企业级linux一样的功能和性能。同时centos还提供免费的长期升级和更新服务。因此,在众多的RHEL的克隆版本中,CentOS是很出众很优秀的。

虽然说centos是RHEL的克隆,但并不是一模一样,所说的克隆是具有100%的互换性。对于centos其实不尽相同,RHEL的软件在CentOS上面不能保证100%的正常工作。

在了解了Redhat系列各个版本的差异后。其实我们就找到了为何选择Redhat linux作为初学者入门学习的理由了。

首先:在国内,乃至是全世界的Linux用户最熟悉、最耳闻能详的发行版肯定就是Red Hat了。因为Red Hat是linux界的“老大”,美国Red Hat公司发布的Red Hat linux是商业上运作最成功的一个Linux发行套件,因此Red Hat公司发行的linux值得信任, Red Hat linux的功能和性能也毋庸置疑。

其次:Red hat现在拥有庞大的网络用户群体,网络linux资源基本90%都是基于Redhat linux的,如果您在学习过程中遇到任何问题,随便搜索网络,就有成千上万的答案展示在你面前。

第三: Red Hat linux系列版本相互补充,相得益彰:如果你第一次接触linux,那么建议你先安装Fedora Core, Fedora Core安装简单,对硬件支持很好,界面也很华丽,同时也可以体验Redhat linux的最新功能;如果你对linux有一定的了解,需要深入学习,建议你使用CENTOS系统;如果你是在做linux企业级应用,建议你使用RHEL版本。

最后: redhat应用范围广,具有典型性和代表性,很多系统(例如红旗redflag,中标linux,oracle发布的Enterprise Linux)都是以Red Hat linux为基准的,因而,可以说学会了Red Hat linux,就能触类旁通,其它类似的linux系统也能很快掌握;现在周围学习linux的一般也都是以redhat linux为主,这样交流方便,学习中出现问题,更容易得到解决。同时redhat linux的安装和使用也是最简单的,因此,基本上不会在”装系统”上浪费过多时间。

1.2企业级应用首选-suse linux

企业级的应用追求的是可靠性和稳定性,这就要求构建企业级应用的系统平台具有高可靠性和高稳定性。企业级linux的发行版本就是解决的这个问题。

SUSE是德国最著名的Linux发行版,在全世界范围中也享有很高的声誉。2003年11月4日,Novell公司对外宣布将收购SuSE。2004年1月该收购顺利完成,Novell同时将SuSE正式命名为SuSE Linux。 Novell公司收购suse,加速了suse linux的发展, suse linux无论在桌面市场还是服务器市场都更加专业化,据不完全统计,suse linux现在欧洲linux市场占有将近80%的份额,大部分关键性应用都是建立在suse linux下。由于suse进入中国时间较短,同时加上suse在中国的营销模式短时间不能被国内接受,因此现在suse在中国的市场份额还不是很大,但是这些并不影响suse linux高可靠与稳定性的事实,随着suse的发展,相信suse linux在中国的应用会越来越多。

1.3游戏娱乐首选-Ubuntu Linux

说到linux桌面市场, Ubuntu Linux几乎占据了桌面linux的半壁江山, Ubuntu Linux主打linux桌面之最,界面美观,简易而不失华丽,如果想在linux下进行娱乐休闲,Ubuntu Linux绝对是首选。

Ubuntu的安装非常的人性化,只须按照提示一步一步进行,安装与Windows一样简单!并且,Ubuntu被誉为对硬件支持最好最全面的Linux发行版之一,许多在其他发行版上无法使用,或者在默认配置时无法使用的硬件,在Ubuntu上都能轻松搞定。因此你可以像安装windows一样轻松的安装Ubuntu。尽情体验Ubuntu linux带来的乐趣。

1.4 linux作为服务器是发展趋势

在上面的章节中主要介绍了几种最常见的linux发行版本,其实linux的发行版本还有很多很多,比较常见的还有Debian GNU/Linux, Mandriva, Gentoo,Slackware, Knoppix,MEPIS, Xandros,国产的红旗redflag,中标linux等等,这里不再一一介绍,其实纵观linux的各个发行版,linux发行版本无非是朝着这两个方面而来,一是服务器市场,而是桌面市场。

以Ubuntu Linux为代表的linux发行版走的是桌面市场路线,虽然它们给用户带来很多惊喜,更新也很快,但是由于桌面市场有着windows这样强劲的对手,linux桌面发展举步维艰。

以redhat系列版本为代表的linux发行版现在主要面向企业级linux的服务器市场,重点开发linux的企业版本,suse linux同样主要力量也集中在开发企业级linux上面,其它的例如国产redhat flag,中标linux等都重点投入在了linux服务器市场。linux两大发布厂商现在都走了linux服务器市场的路线,可见linux作为企业级服务器有着巨大的发展前途,据权威部门统计,linux在服务器市场的占有率每年都在持续上升。

其实很多linux的应用都是针对linux服务器的,本书的讲述也是主要针对linux在服务器下的各种应用展开的。更多Linux知识可参考《Linux就该这么学》。

阅读剩余
THE END