第一章、架设服务器前的准备工作 基本架设服务器流程

1.2 基本架设服务器流程

 


1.2.1 网络服务器成功联机的分析

 

网络联机至服务器所需经过的各项环节
图 1.2-1、网络联机至服务器所需经过的各项环节

上图显示的是:首先,客户端到服务器的网络要能够通,等到客户端到达服务器后,会先由服务器的防火墙判断该联机能否放行, 等到放行之后才能使用到服务器软件的功能。而该功能又得要通过 SELinux 这个细部权限设定的项目后,才能够读取到文件系统。 但能不能读到文件系统又跟文件系统的权限 (rwx) 有关!上述的每个部分都要能够成功,否则就无法顺利读取数据。

所以,根据上面的流程我们大概可以将整个联机分为几个部分,包括:网络、服务器本身、内部防火墙软件设定、各项服务配置文件、细部权限的 SELinux 以及最终最重要的档案权限。

  1. 网络:了解网络基础知识与所需服务之通讯协议

     

    • 基本的网络基础知识:包括以太网络硬件与协议、TCP/IP、网络联机所需参数等;
    • 各网络服务所对应的通讯协议原理,以及各通讯协议所需对应的软件。
  2. 服务器本身:了解架网络服务器之目的以配合主机的安装规划

     

  3. 服务器本身:了解操作系统的基本操作

    网络服务软件是需要建置在操作系统上面的,所以基本的操作系统操作就得要了解才行!包括软件如何安装与移除, 如何让系统进行例行的工作管理?如何依据服务器服务之目的规划文件系统?如何让文件系统具有未来扩充性 (LVM 之类)? 系统如何管理各项服务之启动?系统的开机流程为何?系统出错时,该如何进行快速复原等等!

  4. 内部防火墙设定:管理系统的可分享资源

    不管你的防火墙系统设定的再怎么严格,只要是你要开放的服务, 那防火墙对于该服务就没有保护的效果。

  5. 服务器软件设定:学习设定技巧与开机是否自动执行

     
    • 软件如何安装、如何查询相关配置文件所在位置;
    • 服务器软件如何设定?
    • 服务器软件如何启动?如何设定自动开机启动?如何观察启动的埠口?
    • 服务器软件激活失败如何除错?如何观察登录档?如何透过登录档进行除错?
    • 透过客户端进行联机测试,如果失败该如何处理?联机失败的原因是服务器还是防火墙?
    • 服务器的设定修改是否有建立日志?登录档是否有定期分析?
    • 服务器所提供或分享的数据有无定期备份?如何定期自动备份或异地备份?
  6. 细部权限设定:包括 SELinux 与档案权限

     

1.2.2 一个常见的服务器设定案例分析

 

  • 网络环境:假设你的环境里面 (不管是家里还是宿舍) 共有五部计算机,这五部计算机需要串接在一起,且都可以对外联机;
  • 对外网络:你的环境只有一个对外的联机方式,这里假设是台湾较流行的 ADSL 或 10M 的光纤这种透过电话线拨接的类型;
  • 额外服务:你想要让这五部计算机都可以上网,而且其中还有一部可以做为网络驱动器机,提供同学或家人作为数据备份与分享之用;
  • 服务器管理:由于你可能需要进行远程管理,因此你这部服务器得要开放联机机制,以让远程计算机可以联机到这部主机来进行维护;
  • 防火墙管理:因为担心这部做为档案分享服务器的系统被攻击,因此你需要针对 IP 来源进行登入权力的控制;
  • 账号管理:另外,由于同学的数据有隐密与共享之分,因此你还得要提供每个同学个别的账号, 且每个账号都有磁盘容量的使用限制;
  • 后端分析:最后,由于担心系统出问题所以你得要让系统自动定期分析磁盘使用量、登录文件参数信息等等。

 


1.2.2-1 了解网络基础

  • 硬件规划

我们想要将五部计算机串接在一块,但是却又只有一个可以对外的联机,此时就得要购买集线器 (hub) 或者是交换器 (switch) 来串接所有的计算机了。网络线被称为 RJ-45 的网络线, 但网络线材竟然有等级之分。

  • 联机规划

由于只有一条对外联机而已,因此通常我们就建议你可以用如下的方式来串接你的网络:

硬件的网络联机示意图
图 1.2-2、硬件的网络联机示意图

透过 IP 分享器,我们的五部计算机就都能够上网了。此时你得要注意,能否上网与 Internet 有关,Internet 就是那有名的 TCP/IP 通讯协议,而想要了解网络就得要知道啥是 OSI 七层协定。我们也知道能连上 Internet 与所谓的 IP 有关,那么我们内部这五部计算机所取得的 IP 能不能拿来架站?也就是说, IP 有没有不同种类? 如果 IP 分享器突然挂了,那你的这五部计算机能不能联机玩魔兽?这就考虑你的网络参数设定问题了!

  • 网络基础

如果你的主机明明可以使用 ping 这个指令去接触远方的主机 (ping IP),但是就是无法使用 ping hostname 去接触远方的主机,请问,这个原因是什么? DNS 出问题了!

 


1.2.2-2 服务器本身的安装规划与架站目的的搭配

Server 端是在那五部计算机之中,而且 Server 必须要提供针对不同账号给予网络驱动器机,我们这边会提供网芳 (SAMBA) 这个服务,因为他可以在 Linux/Windows 之间通用之故。 且由于需要提供账号给使用者,以及想到未来的磁盘扩充情况,因此我们想要将 /home 独立出来,且使用 LVM 这个管理模式, 并搭配 Quota 机制来控制每个账号的磁盘使用量。

所以说,你得知道 Linux 目录下的 FHS (Filesystem Hierarchy Standard) 的规范,否则分割槽给到错误的目录,会造成无法开机!那为什么要将 /home 独立放入一个分割槽? 那是因为 quota 仅支持 filesystem 而不支持单一目录!

实作题-全新安装
请到昆山科大 (http://ftp.ksu.edu.tw/FTP/CentOS/), 义守大学 (http://ftp.isu.edu.tw/pub/Linux/CentOS/) 或国家高速网络中心 (http://ftp.twaren.net/Linux/CentOS/ ) 下载最新的 Linux 映像档来刻录 (2011/07 可下载最新版为 CentOS 6.0),并且依据上述的需求安装好你的 Linux 系统 (最重要的其实就是那个分割而已,其他的动作可以在安装完成后再说)。
答:
由于 Linux 的安装我们已经在基础篇内的第四章介绍过了,这里我们不再使用图形接口来说明, 仅使用文字说明来介绍你在每个项目应该处理的动作而已。此外,由读者们的响应发现,学习者经常只有一部主机, 因此,这里我们建议你使用 Virtualbox (http://www.virtualbox.org/) 来仿真出一部实体主机,以安装你的测试环境。并请注意, 这部主机将会使用在本书的各个章节测试中。

Virtualbox 的安装与设定请自行参考其官网上面的 Documentation 介绍,这里不再赘言。只是需要注意的是, 若 (1)需要架设网站来上网,建议网络使用桥接模式 (bridge) ,且网络卡类型使用 Intel 的桌面计算机类型即可。 (2)由于我们未来会教导 NAT 服务器,因此最好有两张网卡,一张使用 bridge 一张使用内网 (intnet) 较佳。 而 (3)磁盘配置建议使用 SATA 类型,且容量请给予 25GB 以上。 (4)内存至少该给予 512MB 以上,最好有 1GB 来测试。 其他的请参考官网文件,或者使用默认配置即可。当然啦,如果你有独立的实体机器来安装,那就更好了! 不需理会这一小段文字的说明喔。

默认配置如下:
  • 分割表请依如下方式进行:
    • /  : 2GB
    • /boot: 200MB
    • /usr : 4GB
    • /var : 2GB
    • /tmp : 1GB
    • swap : 1GB
    • /home: 5GB,并且使用 LVM 模式建置
    • 其他容量请保留,未来再来进行额外练习!
  • 软件挑选时,请选择『 basic server 』项目即可;
  • 信息安全部分,防火墙选择启动,SELinux 选择强制 (Enforce);
  • 假设 IP 分享器有自动分配 IP 的功能,所以网络参数先选择 DHCP 即可,未来再自己修改。
实际流程大致如下 (鸟哥以 CentOS 6.0 为例说明)
  1. 由于我们使用光驱开机来安装系统,因此得先进入 BIOS ,选择光驱开机,并且将 CentOS 6.x 的 DVD 放入光驱中;
  2. 在启动安装的画面中,选择『Install or upgrade an existing system』来安装新系统;
  3. 出现『 Disc Found 』字样,此时建议可以选择『 Skip 』即可略过;
  4. 在欢迎画面以鼠标点选『 Next 』;
  5. 语系数据可以选择『Chinese(Traditional)(中文(正体))』;
  6. 键盘格式保留『美式英文』即可;
  7. 安装包含的装置类型,直接选择默认的『基本储存装置』即可;
  8. 因为我们是全新的硬盘,因此会出现一个找不到分割表的错误,此时选择『重新初始化』即可;
  9. 进入网络主机名的设定,先保留『localhost.localdomain』即可。 同画面中还有一个『配置网络』的选项,我们先不要动他!等未来谈到网络设定再来处理即可;
  10. 进入时区选择,请选择『亚洲/台北』即可;
  11. 出现 root 密码制作,这里我们先设定为『 centos 』吧! 这个密码太简单,系统会出现警告,你选择『照样使用』即可。你也可以自行设定其他密码;
  12. 出现哪一类型安装的模式,因为我们有自己的分割考虑,所以,请选择『建立自定义分割格式』来处理喔!
  13. 在出现分割画面中,先点选『sda』项目,然后点选『建立』的按钮,在出现的窗口中, 再点选『标准分割区』项目,然后点『建立』。 在最后的窗口中填写挂载点、容量等信息后,最终按下『确定』即可。最终画面有点像这样:
    分割的参数下达示意图
    图 1.2-3、分割的参数下达示意图

  14. 依据前面的分割规划,持续进行上述的动作,将所有的分割都处理完毕,除了 /home 之外。
  15. 由于 /home 想要使用 LVM 的方式来建立文件系统,因此点选『建立』后,选择『LVM 实体卷册』项目,按下建立,在出现的分割窗口中容量填写 5GB,示意图有点像这样:
    分割出 LVM 分割槽的方式
    图 1.2-4、分割出 LVM 分割槽的方式

    接下来回到原本的分割画面后,按下『建立』并选择『LVM 卷册群组』项目, 在出现的窗口中,卷册组名填写『server』,并且在右下方的逻辑卷册部分按下『新增』, 又会额外出现一个窗口,此时就填入 /home 的相关参数啦!注意,逻辑卷册我们这里设定为 myhome 喔! 画面有点像底下这样:
    建立最终的 LVM 的 LV 与 /home
    图 1.2-5、建立最终的 LVM 的 LV 与 /home

    回到原本的分割画面,最终的显示有点像底下这样,然后请按下『下一步』继续。 但由于新建分割需要格式化,所以又会出现一个警告窗口!没问题的,选择『格式化』以及『将变更写至磁盘』吧!
    分割的最终结果
    图 1.2-6、分割的最终结果

  16. 出现启动加载程序作业,都使用默认值即可,请按『下一步』;
  17. 出现安装类型,因为我们主机的角色为服务器,因此选择『Basic Server』项目! 其他项目保留默认,然后按下『下一步』就开始进行安装程序啰!
  18. 经过一段时间的等待,出现重新启动后,你就重新启动吧!喔!要记得将 DVD 拿出来喔!(怪异的是,鸟哥第一次安装后, 竟然发现电源管理有问题,得在 kernel 处增加 noapic 才能顺利开机呢!)
  19. 装好并重新启动后,就会进入 runlevel 3 的纯文本界面!因为是服务器嘛!

1.2.2-3 服务器本身的基本操作系统操作

既然我们这部主机得要提供不同账号来使用他们自己的网络驱动器,因此还需要建立账号啊,使用磁盘配额 (quota) 等等的。

例题-大量建置账号

假设我的五个朋友账号分别是 vbirduser{1,2,3,4,5},且这五个朋友未来想要共享一个目录,因此应该要加入同一个群组,假设这个群组为 vbirdgroup,且这五个账号的密码均为 password 。那该如何建置这五个账号?

答: 你可以写一支脚本程序来进行上述的工作!

 


posted @ 2014-10-03 03:10  wuhn  阅读(526)  评论(0编辑  收藏  举报