第七天(12月4日)

RHCE的考试安排在今天下午,这两天一直在做模拟训练,相信应对考试问题不大。下午1点半开始考试,时间2个小时,我订了4点半的返程车票,预计回到家里已是深夜了。
在RHCE考试时,一定要记下之前考过RHCSA认证的编号,而且邮箱和名字也必须与RHCSA考试时一致。
下面是考试的模拟训练:
 
在考试前建议首先将防火墙配置好:
[root@localhost ~]# iptables –F                                       删除原有的防火墙规则
[root@localhost ~]# iptables -A INPUT -s 192.168.0.0/24 -j ACCEPT        允许访问
[root@localhost ~]# iptables -A INPUT -s 172.16.0.0/16 -j REJECT           拒绝访问
[root@localhost ~]# service iptables save                          保存设置
iptables:将防火墙规则保存到 /etc/sysconfig/iptables:      [确定]
[root@localhost ~]# iptables –L                                         查看设置
Chain INPUT (policy ACCEPT)
target      prot opt source               destination
ACCEPT      all -- 192.168.0.0/24       anywhere
REJECT    all -- 172.16.0.0/16         anywhere      reject-with icmp-port-unreachable
 
1、配置SELinux必须工作在Enforcing模式。
在Linux系统中,SELinux默认是启动的,并且工作在Enforcing强制模式,通过setenforce命令可以修改selinux的启动模式,但这种修改只是临时修改。要永久修改SELinux的启动模式需要修改配置文件:
# vim /etc/sysconfig/selinux
SELINUX=enforcing
保存退出。修改完成后,必须要将系统重启生效。
重启后,可以执行getenforce命令验证。
2、在您的系统中允许IP转发。
Linux系统的功能是由内核提供的,所以可以借助修改内核参数来改变由内核提供的功能。如Linux默认是作为单纯的主机使用的,修改内核参数启用IP转发功能,就可以使之成为一台简易的路由器。
要使修改的内核参数能永久生效,需要修改配置文件/etc/sysctl.conf。
# vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
保存退出。
执行sysctl –p命令生效,同时能查看到生效的内核参数:
[root@localhost ~]# sysctl -p
net.ipv4.ip_forward = 1
3、不允许用户marjorie使用cron。这个限制不能影响其他用户。
禁止某个用户使用cron计划任务,可以将该用户加入到文件/etc/cron.deny中。
[root@localhost ~]# vim /etc/cron.deny
marjorie
切换到该用户身份,配置计划任务进行验证:
[root@localhost ~]# su - majorie
[marjorie@localhost ~]$ crontab -e
You (marjorie) are not allowed to use this program (crontab)
See crontab(1) for more information
4、在IP为192.168.0.114的主机上配置一个FTP服务器,满足以下要求:
(1)允许匿名用户可以从FTP服务器的/var/ftp/pub下载文件。
(2)在192.168.0.0/24网络以外的客户端不允许访问FTP服务。
操作步骤:
首先安装并启动vsftpd服务:
# yum install vsftpd
# service vsftpd start
# chkconfig vsftpd on
此时默认已经允许匿名下载,第一个要求完成。
第二个要求,首先要修改配置文件/etc/hosts.deny,拒绝所有访问:
# vim /etc/hosts.deny
vsftpd:ALL
然后修改配置文件/etc/hosts.allow,允许192.168.0.0/24网段访问。
# vim /etc/hosts.allow
vsftpd:192.168.0.
重启服务:
# service vsftpd restart
5、根据以下要求配置SMTP邮件服务:
(1)您的邮件服务器能够接收来自于远程主机和localhost邮件。
(2)harry必须能够从远程主机接收邮件。
(3)分发给harry的邮件要放置到harry默认的邮件池/var/spool/mail/harry中。
操作步骤:
postfix服务默认已经安装,但仍需确认服务是否已经运行以及是否开机启动:
# service postfix status
# chkconfig –list postfix
postfix默认只能在本地主机上接收邮件
# netstat -an | grep :25
tcp        0      0 127.0.0.1:25                0.0.0.0:*                   LIST      EN
修改配置文件将所有的网络接口全部开放,允许从任何网络接口接收邮件:
# vim /etc/postfix/main.cf
inet_interfaces = all
重启服务:
# service postfix restart
第二和第三项要求默认就已经实现,无需配置。
6、为您的邮件传输代理配置一个邮件别名,让发送给admin的邮件由本地用户natasha接收。
修改配置文件:
# vim /etc/aliases
admin: natasha
保存退出,执行命令生效:
# newaliases
7、通过SMB共享/common目录
(1)您的SMB服务器必须是STAFF工作组的一个成员。
(2)共享名必须为common。
(3)只有192.168.0.0/24网络内的客户端可以访问common共享。
(4)common必须是可以浏览的。
(5)用户harry必须能够读取共享中的内容,如果需要的话,验证的密码是mishings。
操作步骤:
首先安装并启动服务:
# yum install samba
# service smb start
# chkconfig smb on
修改配置文件:
# vim /etc/samba/smb.conf
workgroup = STAFF
host allow = 192.168.0.
security = user
[common]
   commnet = common
   path = /common
   public = yes
   browseable = yes
保存退出。
添加harry为samba用户:
# smbpasswd –a harry
New SMB password:
Retype new SMB password:
Added user harry.
修改/common目录的上下文:
# chcon –t samba_share_t /common
重启服务:
# service smb restart
在真机上验证:
# smbclient –L 192.168.0.114 –U harry
8、只向192.168.0.0/24网络通过NFS输出您的/common共享目录。
nfs服务默认已经安装,启动服务:
# service nfs start
# chkconfig nfs on
修改配置文件:
# vim /etc/exports
/common 192.168.0.0/24(sync,ro)
保存退出,重启服务:
# service nfs restrat
在真机上验证:
# showmount –e 192.168.0.114
# cd /net/192.168.0.114/common
9、按以下要求配置SSH访问:
(1)用户harry能够从网络192.168.0.0/24访问你的机器。
(2)在网络172.16.0.0/24网络内的机器不能访问你的机器。
# service sshd start
# chkconfig sshd on
 (这道题纯粹是投机取巧,呵呵)
10、为主机192.168.0.114创建一个web服务器,然后执行下述步骤:
(1)从ftp://192.168.0.254/pub/rhce/station.html下载文件,并且将文件重命名为index.html。
(2)将文件index.html拷贝到您的web服务器的DocumentRoot目录下。
(3)不要对文件index.html的内容进行任何修改。
操作步骤:
httpd服务默认已经安装,启动服务:
# service httpd start
# chkconfig httpd on
从服务器下载文件:
# wget ftp://192.168.0.254/pub/rhel6/station.html
# cp station.html /var/www/html/index.html(注意,这里一定是cp复制,而不能用mv移动,否则还要修改selinux上下文。)
11、扩展您的web服务器,为站点http://www.domain170.example.com创建一个虚拟主机,然后执行下述步骤:
(1)设置DocumentRoot为/var/www/virtual
(2)从ftp://192.168.0.254/pub/rhce/www.html下载文件,并且将文件重命名为index.html。
(3)将文件index.html放到虚拟主机的DocumentRoot目录下。
(4)不要对文件index.html的内容进行任何修改。
(5)确保harry用户能够在/var/www/virtual目录下创建文件。
操作步骤:
首先创建虚拟主机的主目录:
# mkdir /var/www/virtual
从服务器下载文件:
[root@server14 ~]# wget ftp://192.168.0.254/pub/rehl6/www.html
将文件改名并移动到主目录中:
[root@server14 ~]# cp www.html /var/www/virtual/index.html
修改配置文件httpd.conf:
[root@server14 ~]# vim /etc/httpd/conf/httpd.conf
按G将光标移动到文件末尾,增加如下内容:
NameVirtualHost 192.168.0.114
    DocumentRoot /var/www/html/
    ServerName station.domain170.example.com
    DocumentRoot /var/www/virtual/
    ServerName www.domain170.example.com
保存退出,重启服务:
# service httpd restart
最后将/var/www/virtual的属主改为harry。
# chown harry /var/www/virtual
12、在您的服务器的DocumentRoot目录下创建一个名为confidential的目录,从ftp://192.168.0.254/pub/rhce/station.html下载一个文件副本到这个目录,并且重命名为index.html,不要对文件的内容进行任何修改。从您的本地主机上可以浏览confidential的内容,但是从其他位置不能访问这个目录的内容。
操作步骤:
创建目录,复制文件:
# mkdir /var/www/html/confidential
# wget ftp://192.168.0.254/pub/rhel6/station.html
# cp station.html /var/www/html/confidential/index.html
修改配置文件:
# vim /etc/httpd/conf/httpd.conf
    DocumentRoot /var/www/html/
    ServerName station.domain170.example.com
   
    Order allow,deny
      Allow from 192.168.0.114
   
重启服务:
# service httpd restart
13、创建一个名为/root/script.sh的脚本,让其提供以下特性:
(1)当运行/root/script.sh all时,输出none。
(2)当运行/root/script.sh none时,输出all。
(3)当没有任何参数或者参数不是all或none时,其向stderr产生以下的输出:/root/script.sh all|none
操作步骤:
# vim script.sh
#!/bin/bash
case $1 in
 all)
 echo “none”
;;
 none)
 echo “all”
;;
 *)
 echo “/root/script.sh all|none”
;;
esac
保存退出,进行测试:
[root@localhost ~]# ./script.sh none
all
[root@localhost ~]# ./script.sh all
none
14、配置您的系统,让系统在启动的时候,将位于/root/disc.iso的文件系统镜像自动挂载到/mnt/virtdisk目录中。
操作步骤:
# mkdir /mnt/virtdisk
# vim /etc/rc.local
mount –o loop /root/disc.iso /mnt/virtdisk
保存退出。
15、修改您的系统,将系统的启动参数kernctl设置为5,您的修改应该在/proc/cmdline文件中可见。
操作步骤:
# vim /etc/grub.conf
在kernel的最后加上kerctl=5
重启后验证:cat /proc/cmdline
16、系统(IP:192.168.0.254)通过标准端口(3260)提供了一个iSCSI块设备,在您的虚拟机连接此设备,并完成如下要求:
(1)在iSCSI设备上创建一个大小为1400MB的分区,并格式化为ext4,将分区挂载到您的虚拟机上的/mnt/data。
(2)此文件系统将包括 ftp://192.168.0.254/pub/iscsi.txt文件的副本,拥有人为root,权限为0644,不要更改文件的任何内容。
(3)此文件系统在系统启动时自动挂载。
操作步骤:
查看帮助手册,复制相关命令:
# man iscsiadm
# iscsiadm --mode discoverydb --type sendtargets --portal 192.168.0.254 --discover    
192.168.0.254:3260,1 iqn.2010-09.com.example:rdisks.server14
# iscsiadm --mode node --targetname iqn.2010-09.com.example:rdisks.server14 --portal 192.168.0.254:3260 --login
查看设备文件名:
# fdisk -l
用fdisk命令进行分区。
将分区格式化:
# mkfs -t ext4 /dev/sdb1
挂载分区:
# mount /dev/sdb1 /mnt/data
下载文件,修改权限
# wget ftp://192.168.0.254/pub/iscsi.txt
# cp iscsi.txt /mnt/data
# chmod 644 /mnt/data/iscsi.txt
最后修改/etc/fstab文件实现永久挂载:
# vim /etc/fstab
/dev/sdb1 /mnt/data ext4 _netdev 0 0
保存退出。