项目目的:
该服务环境搭建完毕后,应能够为同一网络(局域网)内的考试机提供考试过程中所涉及的所有网络服务及资源服务。
项目分析:
根据RHCE考场环境、现有的RHCE考试题目及相关资料,分析可知,考试服务器应提供以下服务:
序号 |
服务种类 |
服务内容 |
a |
HTTP服务 |
用于考试题目及相关说明的展示,和考试过程中所需资源的下载 |
b |
FTP服务 |
用于考试过程中所需资源的下载及PXE自助装机安装源 |
c |
RHEL YUM源 |
用于提供考试过程中所需服务的安装来源 |
d |
DNS服务 |
用于考试环境中所需的域名解析 |
e |
DHCP服务 |
用于PXE装机过程中网络参数自动分配 |
f |
TFTP服务 |
用于提供PXE装机时所需启动文件 |
g |
PXE装机服务 |
用于实现考试用机统一标准化快速部署(网络无人值守安装) |
h |
ISCSI服务 |
用于提供考试过程中ISCSI网络硬盘 |
i |
LDAP服务 |
用于实现考试过程中LDAP相关操作 |
注:能力有限,LDAP服务的实现加TLS CA认证短期内还搞不明白,后期补上。 |
项目实现:(以RHEL6.4版本为例)
考场网络参数声明
域: example.com
网段: 192.168.0.0/24
服务器: instructor.example.com
服务器地址: 192.168.0.254/24
网关地址: 192.168.0.254/24
服务器网络参数设定
[root@local ~]# vim /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=instructor.example.com
[root@local ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
TYPE=Ethernet
UUID=8036a915-dc88-47bc-a67b-4eebc77fb308
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.0.254
NETMASK=255.255.255.0
HWADDR=00:0C:29:DA:32:B2
HTTP服务实现
插入光盘,配置YUM源
[root@localhost Desktop]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# rm -rf *
[root@localhost yum.repos.d]# vim abc.repo
[abc]
name=RHEL YUM Source
baseurl=file:///misc/cd/
enabled=1
gpgcheck=0
安装httpd
[root@localhost Desktop]# yum install -y httpd
[root@localhost Desktop]# service httpd start
[root@localhost Desktop]# chkconfig httpd on
FTP服务实现
[root@localhost Desktop]# yum install -y vsftpd
[root@localhost Desktop]# service vsftpd start
[root@localhost Desktop]# chkconfig vsftpd on
[root@localhost Desktop]# cp cdrom.iso /var/ftp/pub/ ;考试用iso镜像
YUM源实现(http、ftp两种方式)
ftp方式实现
[root@localhost ~]# mkdir -p /var/ftp/pub/rhel6/dvd
[root@localhost ~]# mkdir -p /var/ftp/pub/rhel6/site
[root@instructor ~]# cp -r /misc/cd/* /var/ftp/pub/rhel6/dvd/
[root@instructor ~]# echo station.domain.example.com > \
> /var/ftp/pub/rhel6/site/station.html ;创建考试用三个首页文件
[root@instructor ~]# echo www.domain.example.com > \
> /var/ftp/pub/rhel6/site/station.html
[root@instructor ~]# echo Confidential > /var/ftp/pub/rhel6/site/
confidential.html
http方式实现
[root@instructor ~]# vim /etc/httpd/conf/httpd.conf
Options Indexes FollowSymLinks ;实现自动索引启用符号链接
[root@instructor ~]# ln -s /var/ftp/pub/ /var/www/html/
DNS服务实现
[root@instructor ~]# yum install -y bind bind-chroot
[root@instructor ~]# vim /var/named/chroot/etc/named.conf
options {
directory "/var/named";
};
zone "example.com" IN{
type master;
file "example.com.zone";
};
[root@instructor ~]# vim /var/named/chroot/var/named/example.com.zone
$TTL 86400
@ IN SOA example.com. root.example.com. (
0000000001
4H
15M
4H
1D
)
@ IN NS instructor.example.com.
instructor IN A 192.168.0.254
$GENERATE 1-200 station.domain$ IN A 192.168.0.$
[root@instructor ~]# service named start
[root@instructor ~]# chkconfig named on
DHCP服务实现
[root@instructor ~]# yum install -y dhcp
[root@instructor ~]# vim /etc/dhcp/dhcpd.conf
ddns-update-style none;
ignore client-updates;
subnet 192.168.0.0 netmask 255.255.255.0
{
option routers 192.168.0.254;
option subnet-mask 255.255.255.0;
option domain-name "example.com";
option domain-name-servers 192.168.0.254;
range 192.168.0.1 192.168.0.250;
}
[root@instructor ~]# service dhcpd start
[root@instructor ~]# chkconfig dhcpd on
TFTP服务实现
[root@instructor ~]# yum install -y tftp-server
[root@instructor ~]# service xinetd start
[root@instructor ~]# chkconfig tftp on
[root@instructor ~]# chkconfig xinetd on
PXE网络安装服务
PXE网络安装
[root@instructor ~]# cd /var/ftp/pub/rhel6/dvd/isolinux/
[root@instructor isolinux]# cp vmlinuz initrd.img /var/lib/tftpboot/
[root@instructor isolinux]# yum install -y syslinux
[root@instructor isolinux]# cd /usr/share/syslinux/
[root@instructor syslinux]# cp pxelinux.0 /var/lib/tftpboot/
[root@instructor ~]# mkdir /var/lib/tftpboot/pxelinux.cfg/
[root@instructor ~]# cd /var/lib/tftpboot/pxelinux.cfg/
[root@instructor pxelinux.cfg]# cp /var/ftp/pub/rhel6/dvd/isolinux/isolinux.cfg default
无人值守
[root@instructor ~]# yum install -y system-config-kickstart
[root@instructor ~]# system-config-kickstart ;自定义无人值守安装应答文件并保存至/var/ftp/pub/ks.cfg
[root@instructor ~]# vim /var/lib/tftpboot/pxelinux.cfg/default
default linux
#prompt 1
timeout 600
label linux
kernel vmlinuz
append ks=ftp://192.168.0.254/pub/ks.cfg initrd=initrd.img
ISCSI服务
[root@instructor ~]# yum install -y scsi-target-utils
[root@instructor ~]# fdisk -cu /dev/sdb
Command (m for help): p
Device Boot Start End Blocks Id System
/dev/sdb1 2048 41943039 20970496 83 Linux
[root@instructor ~]# partx -a /dev/sdb
[root@instructor ~]# vim /etc/tgt/targets.conf
<target iqn.2008-09.com.example:rdisk.server>
backing-store /dev/sdb1
allow-in-use yes
</target> ;添加ISCSI硬盘