执行lab-resetvm还原虚拟机,以下所有操作均在虚拟机上完成:

1. 编写防火墙脚本,并实现开机自动生效,要求如下:

   1)允许来自回环接口的所有封包

   2)允许所有ESTABLISHED,RELATED封包

   3)拒绝所有非192.168.0.0/24网络的ping

   4) 只允许192.168.0.0/24网络访问sshd、httpd、vsftpd服务

   5)拒绝所有未允许的封包

   参考答案:
       iptables -A INPUT -i lo -j ACCEPT
           iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
       iptables -A INPUT -s 192.168.0.0/24 -j ACCEPT
           iptables -A INPUT -s 192.168.0.0/24  -p tcp --dport 22 -j ACCEPT
       iptables -A INPUT -s 192.168.0.0/24  -p tcp --dport 21 -j ACCEPT
       iptables -A INPUT -s 192.168.0.0/24  -p tcp --dport 80 -j ACCEPT

2. 配置rsyslog,将serverX上所有*.info日志消息以UDP发送到desktopX上,确认desktopX可以接收。

 参考答案:
         在server27上:
                 vi /etc/rsyslog.conf
                *.info           @192.168.0.27(接收端的IP)
             在desktop27上:
             vi /etc/rsyslog.conf
                 $ModLoad imudp.so
             $UDPServerRun 514
    的注释去掉,然后分别在两台机子上重启:service rsyslog  restart
    在虚拟机上测试:
         logger  test
        然后在desktop27上用:   tail  /var/log/message
         可看到效果呢!!
     上述使用的UDP来发信息。
   下面介绍一下用TCP的介绍:
        在server27上:
                 vi /etc/rsyslog.conf
                *.info           @@192.168.0.127
             在desktop27上:
             vi /etc/rsyslog.conf
                 $ModLoad imtcp.so
             $InputTCPServerRun 514
    的注释去掉,然后分别在两台机子上重启:service rsyslog  restart
    在虚拟机上测试:
         logger  test
        然后在desktop27上用:   tail  /var/log/message

3. 配置iscsi,目标ip:192.168.0.254 目标:iqn.2010-09.com.example:rdisks.serverX, 分区格式化并永久挂载到/iscsi。

    参考答案:   iscsiadm -m discovery -t st -p 192.168.0.254 (查找iscsi服务器所提供的iscsi目标)
        iscsiadm -m node -T iqn.2010-09.com.example:rdisks.server3 -p 192.168.0.254 -l (登录服务器上的一个iscsi 目标)    
          /etc/init.d/iscsi restart
              /etc/init.d/iscsid restart
    /etc/init.d/iscsi status
   可看到挂载得iscsi磁盘的名称:假如为 sda
    fdisk -cu /dev/sda
       partx -a /dev/sda
           mkfs.ext4   /dev/sda1
      mkdir /iscsi
      vi  /etc/fstab  
   UUID="c4bd9488-9b43-4046-b58d-0bfeec3446bd"  /iscsi            ext4    _netdev
   mount -a
   mount 查看已经挂载上了。  

4. 配置https,自签名证书,要求如下:

   密钥为1024位,无需密钥短语

   国家/地区代码:CN

   州/省/自治区/直辖市: Shaanxi

   所在地:Xi'an   

   单位:Westos

   通用名称:serverX.example.com

参考答案:
    yum install crypto-utils mod_ssl -y
     genkey --days  365 server27.example.com
        .
        .Would you like to send a Certificate Request (CSR) │
             │ to a Certificate Authority (CA)?                   │
             │                                                    │
             │                  ┌─────┐  ┌────┐                   │
             │                  │ Yes │  │ No │                   │
             │                  └─────┘  └────┘                   │
选择NO
             │                                       
        .
    vi /etc/httpd/conf.d/ssl.conf

       SSLCertificateFile /etc/pki/tls/certs/server27.example.com.crt
          SSLCertificateKeyFile /etc/pki/tls/private/server27.example.com.key
/etc/init.d/httpd restart
确认测试:
       https://server27.example.com
       选择  Add  Exception
         view  便可查看

5. 部署两个虚拟主机,要求如下:

   1)虚拟主机1:http://serverX.example.com, 发布目录:/var/www/virtual

   2)虚拟主机2:http://wwwX.example.com,发布目录:/www/virtual

   3)其中/www/virtual/private是受保护区域,需要用户验证,用户名:wxh 密码:westos

   4)下载CGI文件ftp://instructor/pub/gls/special.cgi,并将其安装为http://wwwX.example.com/cgi-bin/special.cgi

参考答案:
       vim  /etc/httpd/conf/httpd.conf
    NameVirtualHost *:80
   
    <VirtualHost *:80>
        DocumentRoot /var/www/virtual
        ServerName server27.example.com
    </VirtualHost>
    <VirtualHost *:80>
        DocumentRoot /www/virtual
        ServerName www27.example.com
        ScriptAlias /cgi-bin/  "/www/virtual/cgi-bin/"
       <Directory  "/www/virtual/private">
          authname "sushanshan"
          authtype basic
          authuserfile  /etc/httpd/.htpasswd
          require user wxh
         </Directory>
    </VirtualHost>
       mkdir /www/virtual -p
       mkdir  /var/www/virtual
       mkdir /www/virtual/:private
      chcon --reference=/var/www/cgi-bin/  /www/virtual/cgi-bin  -R
 
wget ftp://instructor/pub/gls/special.cgi
chcon --reference=/var/www/html /www/virtual -R
     service httpd restart
   
    htpasswd -cm /etc/httpd/.htpasswd whx
  
     service  httpd restart
     测试:
        http://server27.example.com
        http://www27.example.com
        http://www27.example.com/cgi-bin/special.cgi