当前位置: > Linux安全 >

熟悉Linux系统安全和优化(上)

时间:2014-07-08 16:59来源:linux.it.net.cn 作者:IT网
第一章:介绍Linux 
  什么是Linux? 
  Linux是一个操作系统。最初它是由在芬兰赫尔辛基大学念书的Linus Torvalds作为一种业余爱好开发出来的。Linus对用于教学的一种小型的Unix操作系统-Minix很感兴趣,决定开发出超过Minix的操作系统。在1991年,他开始Linux的开发,那时候的Linux是0.02版。到了1994年,Linux内核的1.0版发布了。现在稳定的Linux内核版本是2.2版,开发工作还在继续进行。 
  
  Linux的开发是遵循GPL的,它的源代码任何人都可以免费获得。但是这并不是说Linux以及Linux的发行版本是免费的。只要源代码保持公开,开发人员是可以要求获得适当的报酬。Linux可以用在很多方面,包括:网络、软件开发和桌面平台。Linux常被认为是其它昂贵的操作系统的替代品。 
  
  因为Linux操作系统的稳定和健壮,以及很容易得到,它在世界上越来越流行。成千上万的程序员在根据自己的需要利用Linux的源代码。现在,有很多正在进行中的项目尝试着把Linux移植到不同的硬件平台上,或把Linux用于其它的用途。 
  
  为什么要用Linux 
  首先,它是免费的。尽管Linus Torvalds拥有Linux的商标。Linux的内核和相关的软件是遵循GPL的。这意味着你可以更改源代码,并靠买程序获利,但是最初的作者拥有版权而且你必须公布修改过的源代码。 
  
  尽管Linux在基于Intel平台的计算机上最流行,但是相对其它操作系统,它可以运行在更多的CPU和硬件平台上。其原因是:除了拥有很多天才的开发人员之外,Linux是带着源代码一起发行的,而且它的内核是可移植的。 
  
  现在软件和硬件行业的趋势是让用户去买更快的计算机,不断地扩充内存和增加硬盘空间。Linux并不受这些“增肥”趋势的影响,它甚至可以在内存不是很多的486计算机上运行得很好。

Linux正被越来越多的Fortune 5000的企业、政府部门和消费者所采用。不信的话,去问一问IBM、Compaq、Dell、Apple Computer、Burlington Coast Factory、Amtrak、Virginia Power、NASA或成百上千万的Linux用户吧。 
  
  Linux没有技术支持 
  
  尽管有不少人认为Linux是没有技术支持的操作系统,但是每个Linux的发行版都提供12,000多页的文档。Linux的商业发行版,例如:RedHat Linux、Caldera、SuSE 和OpenLinux给注册用户提供安装支持,小企业和公司可以得到一些商业技术支持公司的服务支持。作为一个开放源代码的操作系统,你可以得到Linux的全部源代码。如果你遇到一些问题而且自己有解决问题的能力,就自己解决吧!不用为了得到技术支持等上很长的时间,许多严重的问题(如系统安全问题)可以在Internet上的Linux社团的帮助下几个小时内解决。 
  
  第二章:安装Linux服务器 
  了解你的硬件环境 
  了解硬件环境是成功安装RedHat Linux的关键。因此,必须用一些时间熟悉一下自己的硬件环境。准备好回答如下的问题: 
  
  1. 计算机上有几个硬盘? 
  2. 每个硬盘的大小? 
  3. 如果有两个以上的硬盘,哪一个是主盘? 
  4. 内存有多大? 
  5. 计算机上有SCSI卡吗?如果有,型号是什么?由哪家公司生产的? 
  6. 鼠标是什么类型的(串口,还是PS/2)? 
  7. 鼠标有几个键? 
  8. 如果是串口鼠标,那么连在哪个串口上? 
  9. 显卡的产商和型号,有多少显存? 
  10. 显示器的产商和型号? 
  11. 如果想把计算机连接到网络上,请再注意下面几个问题: 
  a) 计算机的IP地址? 
  b) 网络掩码? 
  c) 网关地址? 
  d) 域名服务器的地址? 
  e) 域名? 
  f) 主机名? 
  g) 网卡型号和厂商? 
  
  创建启动盘,引导Linux 
  如果你安装过很多次Linux,结果都失败了,那么可能需要一个修正过的软盘镜像。在这种情况下,可以去RedHat Linux的勘误网站去下载特殊的软盘镜像。 
  
  因为这是很少见的情况,应该尽可能地先试一下标准的安装软盘,只有在实在不能完成安装的情况下,才有必要去勘误网站看看。RedHat 6.1的光盘可以从光驱直接启动。如果你的计算机不支持直接启动,那么也可以在MS-DOS下创建启动盘,请用下面的命令(假定CD-ROM的盘符是d:,里面放的是RedHat Linux 6.1的光盘): 
  
  在windows下打开MS-DOS方式(开始 | 程序 | MS-DOS方式): 
  C:$#@62; d: 
  D:$#@62; cd dosutils 
  D:dosutils$#@62; rawrite 
  Enter disk image source file name: ..imagesoot.img 
  Enter target diskette drive: a: 
  Please insert a formatted diskette into drive A: and press --ENTER-- : 
  D:dosutils$#@62; 
  
  当rawrite.exe要求输入软盘镜像的时候,输入完整的boot.img的路径名,把软盘插入A驱。当程序问你把镜像写入哪个软盘驱动器的时候,输入a:。 
  
  RedHat Linux的勘误网站是:http://www.redhat.com/errata。 
  
  因为我们不从CD-ROM启动,而从软盘启动安装,所以把软盘插入A:驱,然后重新启动计算机。当出现boot:的时候,按下回车键,继续引导。 
  * 选择语言 
  * 选择键盘类型 
  * 选择鼠标类型 
  
  安装类型和方法 
  RedHat Linux 6.1有以下几种安装类型: 
  * GNOME工作站 
  * KDE工作站 
  * 服务器 
  * 自定义 
  
  有些安装类型(GNOME工作站、KDE工作站和服务器),简化了安装过程,但是失去了很多灵活性。 
  
  因此,我们建议你选择“自定义”安装,这样你可以选择安装什么服务器软件以及如何划分你的硬盘。我们的目标是安装尽可能少的软件,以保证系统的高效率。而且,安装的软件越少,安全漏洞也就越少。 
  
  选择“Custom”,继续安装。 
  
  创建分区 
  警告 
  
  我们强烈建议在分区之前,先备份你当前的系统。为了保证系统高效、稳定和安全,我们还建议你象下面介绍的那样分区。我们这样分区是假定你要配置一个Web和Proxy服务器。 
  
  之所以在分区中有两个特殊的“/chroot”和“/cache”分区是因为:“/chroot”分区是为DNS服务器、Apache服务器和其它需要改变根目录的(chrooted)服务器准备的;“/cache”分区是为Squid Proxy服务器准备的。如果你不打算安装Squid Proxy服务器,那么不必创建“/cache”分区,但是请注意:Squid+Apache的结合会把服务器的性能和安全提高很多。 
  
  如果想让数量比较多的用户访问你的服务器,必须把“/tmp”和“/home”放在不同的分区上,这几乎是强制的。这样做可以避免分区被一些用户文件填满。把“/var”和“/usr”放在不同的分区也是一个好主意。使“/var”和其它分区分开也可以避免分区被填满。 
  
  在我们的分区安排中,特别保留了400MB的磁盘空间给改变根目录的(chrooted)程序,比如:Apache、DNS以及其它软件。这是必须的,因为Apache的DocumentRoot文件和其它可执行的程序都会被安装在这个分区上。注意:Apache chrooted目录在“/chroot”分区上的大小是和“DocumentRoot”文件的大小成正比的。如果不准备安装和使用Apache,可以把分区大小减小到10M,这10M是DNS服务器所必需的。 
  
  最小的分区要求 
  下面是Linux能够正常运行的最小分区要求。这样的分区安排甚至可以适用于只有512MB硬盘的老式486计算机机。当然,这种分区安排只是一个建议。 
  / 35MB 
  /boot 5MB 
  /chroot 10MB 
  /home 100MB 
  /tmp 30MB 
  /usr 232MB 
  /var 25MB 
  
  Disk Druid分区工具 
  Disk Druid是RedHat Linux带的一个分区工具。选择“Add”添加新的分区,“Edit”改变分区,“Delete"删除分区,“Reset”恢复原来的分区状态。在添加一个新分区的时候,会出现一个窗口,要求你添上有关这个分区的一些必要的信息。要求添的信息是: 
  * Mount Point: 分区装载(mount)的目录 
  * Size: 分区的大小,以兆为单位 
  * Partition Type: 分区类型。Linux的文件系统要使用Linux native类型的分区,Linux交换分区请用Linux Swap类型。 
  
  如果你有一个SCSI硬盘,那么这个设备的名称将是“/dev/sda”;如果你有一个IDE硬盘,那么这个设备名称将是“/dev/hda”。如果很在意系统的高性能和稳定性,我们建议你用SCSI硬盘。 
  
  Linux分区的命名方式是字母和数字相结合的,这种命名方式很灵活也很直观。下面是一个小小的总结: 
  * 前两个字母:前两个字母表示设备类型,“hd”代表IDE硬盘,“sd”表示SCSI硬盘 
  * 第三个字母:这个字母是说明具体的设备。例如:“/dev/hda”表示第一个IDE硬盘;“/dev/hdb”表示第二个IDE硬盘。 
  
  请记住这些,这样给Linux分区的时候,会觉得容易一些也不会混淆。 
  
  交换分区 
  交换分区是用 (责任编辑:IT)
------分隔线----------------------------
栏目列表
推荐内容