红帽认证工程师篇

rht-labcheck 

1.配置SELinux

确保您的两个虚拟机的SELinux处于强制启用模式 

  
  
  1. <span style= ”font-size:14px;”>[root@server0 ~] # vim /etc/selinux/config
  2. SELINUX=enforcing
  3. [root@server0 ~] # getenforce
  4. Enforcing< /span>


2.配置SSH访问

按以下要求配置 SSH 访问:用户能够从域 example.com 内的客户端 SSH 远程访问您的两个虚拟机系统在域 my133t.org 内的客户端不能访问您的两个虚拟机系统
<span style="font-size:14px;">[root@server0 ~]# firewall-cmd --permanent --add-source=172.34.0.0/24 --zone=block</span>
  
  
<span style="font-size:14px;">[root@desktop0 ~]# firewall-cmd --permanent --add-source=172.34.0.0/24 --zone=block</span>
  
  

3.自定义用户环境

在系统 server0 和 desktop0 上创建自定义命令为 qstat:

此自定义命令将执行以下命令:/bin/ps -Ao pid,tt,user,fname,rsz此命令对系统中所有用户有效

  
  
  1. <span style= "font-size:14px;">[root@server0 ~] # vim /etc/bashrc
  2. alias qstat= '/bin/ps-Ao pid,tt,user,fname,rsz'
  3. [root@server0 ~] # exit</span>


  
  
  1. <span style= "font-size:14px;">[root@desktop0 ~] # vim /etc/bashrc
  2. alias qstat= '/bin/ps-Ao pid,tt,user,fname,rsz'
  3. [root@desktop0 ~] # exit</span>


4.配置防火墙端口转发

在系统 server 0  上配置端口转发,要求如下:在 172.25. 0.0/24 网络中的系统,访问 server 0 的本地端口 5423 将被转发到80此设置必须永久有效


  
  
  1. <span style= "font-size:14px;">[root@server0 ~] # firewall-cmd --permanent --zone=trusted --add-forward-port=port=5423:proto=tcp:toport=80
  2. [root@server0 ~] # firewall-cmd --reload </span>


5.配置链路聚合

在 server0.example.com 和 desktop0.example.com 之间按以下要求配置一个链路team0: 此链路使用接口 eth1 和 eth2 此链路在一个接口失效时仍然能工作 此链路在 server0 使用下面的地址 172.16.3.20/255.255.255.0 此链路在 desktop0 使用下面的地址 172.16.3.25/255.255.255.0 此链路在系统重启之后依然保持正常状态

Server0:

1.创建虚拟网卡,虚拟网卡的名称是team0  (man teamd.conf  –> /example通过这种方式复制热备份代码)

<span style="font-size:14px;">[root@server0 ~]# nmcli connection add type team con-name team0 ifname team0 autoconnect yes config '{"runner": {"name": "activebackup"}}'</span>
  
  

2.创建两个奴隶,这两个奴隶分别是eth1,eth2。


  
  
  1. <span style= "font-size:14px;">[root@server0 ~] # nmcli connection add type team-slave con-name team0-1 ifname eth1 master team0 </span>
  2. <span style= "font-size:14px;">
  3. [root@server0 ~] # nmcli connection add type team-slave con-name team0-2 ifname eth2 master team0 </span>

3.为虚拟网卡配置ip地址

<span style="font-size:14px;">[root@server0 ~]# nmcli connection modify team0 ipv4.method manual ipv4.addresses 172.16.3.20/24 connection.autoconnect yes</span>
  
  

4.激活虚拟网卡和真实网卡


  
  
  1. <span style= "font-size:14px;">[root@server0 ~] # nmcli connection up team0
  2. [root@server0 ~] # nmcli connection up team0-1
  3. [root@server0 ~] # nmcli connection up team0-2</span>

5.查看虚拟网卡的状态

<span style="font-size:14px;">[root@server0 ~]# teamdctl team0 state</span>
  
  

desktop0操作同上



6.配置IPv6地址

在您的两个考试系统上配置接口 eth0 使用下列 IPv6 地址:server 0 上的地址应该是 2003:ac18::305/64desktop 0 上的地址应该是 2003:ac18::306/64两个系统必须能与网络 2003:ac18/64 内的系统通信地址必须在重启系统后依旧生效两个系统必须保持当前的 IPv4 地址并仍然能够通信

Server0:

[root@server0 ~]# nmcli connection modify ‘System eth0’ ipv6.method manual ipv6.addresses 2003:ac18::305/64

[root@server0 ~]# nmcli connection up ‘System eth0’

Desktop0:

同上


7.配置本地邮件服务

在系统 server0 和 desktop0 上配置邮件服务,满足以下要求:

这些系统不接收外部发送来的邮件在这些系统上本地发送的任何邮件都会自动路由到 smtp0.example.com从这些系统上发送的邮件显示来自于 desktop 0.example.com您可以通过在 server 0.example.com 发送邮件到本地用户 student 来测试您的配置,并将系统 desktop 0.example.com 配置为后端邮件服务器,确保可接收并投递来自 server 0 的邮件

1.修改/etc/postfix/main.cf这个配置文件

[root@localhost ~]# vim /etc/postfix/main.cf 

relayhost = [smtp0.example.com]     #中继主机       319row

inet_interfaces = loopback-only       #仅接收本机发送的邮件

myorigin = desktop0.example.com   #邮件的来源域    98row

mynetworks = 127.0.0.0/8                #信任网络设置为本机  267row

mydestination =                              #此项必须设置为空   165row

2.重启服务

[root@server0 ~]# systemctl restart postfix

[root@server0 ~]# systemctl enable postfix

3.发送邮件

[root@localhost ~]# echo ‘This is a confirm Email’ | mail -s ‘check Eamil’ student

4.在desktop0上进行测试

[root@desktop0 dev]# mail -u student



8.通过 Samba 发布共享目录

在 server0 通过 SMB 共享/common 目录: 您的 SMB 服务器必须是 STAFF 工作组的一个成员 共享名必须为 common 只有 example.com 域内的客户端可以访问 common 共享 common 必须是可以浏览的 用户 harry 必须能够读取共享中的内容,如果需要的话,验证的密码是 migwhisk


1.安装服务端的samba软件

[root@localhost ~]# yum -y install samba

2.创建共享目录/common

[root@localhost ~]# mkdir /common/

3.开放SElinux的访问控制

[root@localhost ~]# setsebool -P samba_export_all_rw 1

[root@localhost ~]# getsebool -a | grep samba   #查看修改后的权限值

4.添加harry用户,并把这个用户添加到samba共享帐号中去

[root@localhost ~]# useradd harry

[root@localhost ~]# pdbedit -a harry

[root@localhost ~]# pdbedit -L                         #查询Samba共享帐号

5.修改/etc/samba/smb.conf这个配置文件

[root@localhost ~]# vim /etc/samba/smb.conf

workgroup = STAFF                #设置这台Samba服务器是STAFF组的一个成员

[common]
path=/common                     #设置共享目录为/common
hosts allow=172.25.0.0/24       #只有example.com域内的用户可以访问这个共享目录

9.配置多用户Samba挂载

在 server 0  通过 SMB 共享目录/devops,并满足以下要求:共享名为 devops共享目录 devops 只能被 example.com 域中的客户端使用共享目录 devops 必须可以被浏览用户 kenji 必须能以读的方式访问此共享,该问密码是 atenorth用户 chihiro 必须能以读写的方式访问此共享,访问密码是 atenorth此共享永久挂载在 desktop 0.example.com 上的/mnt/dev 目录,并使用用户 kenji 作为认证。任何用户可以通过用户 chihiro 来临时获取写的权限

Server0:

1.创建共享文件夹

[root@localhost ~]# mkdir /devops

2.添加kenji,chihiro这两个用户,并把他们放入Samba共享帐号

[root@localhost ~]# useradd kenji             [root@localhost ~]# pdbedit -a kenji

[root@localhost ~]# useradd chihiro          [root@localhost ~]# pdbedit -a chihiro

[root@localhost ~]# pdbedit -L              #查看Samba共享帐号的成员

3.为chihiro这个用户添加/devops这个目录的rw权限  (harry属于/devops的其他用户,有r-x权限)


[root@localhost ~]# setfacl -m u:chihiro:rwx /devops/


4.修改 /etc/samba/smb.conf 配置文件

[root@localhost ~]# vim /etc/samba/smb.conf 

[devops]
path=/devops

write list=chihiro

hosts allow=172.25.0.0/24

5.重启服务

[root@localhost ~]# systemctl restart smb


Desktop0:

1.安装samba-client,cifs-utils软件

[root@desktop0 ~]# yum -y install samba-client cifs-utils

2.查看指定Samba服务器提供了哪些共享

[root@desktop0 ~]# smbclient -L server0.example.com

3.创建挂载目录

[root@desktop0 ~]# mkdir /mnt/dev

4.修改/etc/fstab配置文件,实现自动挂载

[root@desktop0 ~]# vim /etc/fstab 

//172.25.0.11/devops /mnt/dev cifs username=kenji,password=123,multiuser,sec=ntlmssp,_netdev 0 0

5.验证挂载

[root@desktop0 ~]# mount -a

[root@desktop0 ~]# df -h

6.切换为student用户,并向服务器提交用户认证凭据(普通用户提交chihiro的用户权限,使得普通用户也可以获取临时的读写权限)

[root@desktop0 home]# su student

[student@desktop0 home] cifscredsadduchihiro172.25.0.11<br></p><p>7./mnt/dev</p><p>[student@desktop0dev] c i f s c r e d s a d d − u c h i h i r o 172.25.0.11 < b r >< / p >< p > 7. 验 证 普 通 用 户 在 / m n t / d e v 下 创 建 文 件 < / p >< p > [ s t u d e n t @ d e s k t o p 0 d e v ] touch 1.txt
[student@desktop0 dev]ls<br>1.txt<br></p><p><br></p><p></p><h2 style="color:rgb(0,0,0);font-family:'Times New Roman';"><a name="t14"></a>10.配置NFS共享服务</h2><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">在 server</span><span style="color:#FF0000;font-family:'Times New Roman';font-size:14px;">0</span><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">&nbsp;配置 NFS 服务,要求如下:</span>以只读的方式共享目录 /public,只能被 example.com 域中的系统访问以读写的方式共享目录 /protected,只能被 example.com 域中的系统访问访问 /protected 需要通过 Kerberos 安全加密,您可以使用下面 URL 提供的密钥:<a href="http://classroom.example.com/pub/keytabs/server0.keytab" rel="nofollow" target="_blank">http://classroom.example.com/pub/keytabs/server<span style="color:#FF0000;">0</span>.keytab</a>目录 /protected 应该包含名为 project 拥有人为 ldapuser<span style="color:#FF0000;">0</span>&nbsp;的子目录用户 ldapuser<span style="color:#FF0000;">0</span>&nbsp;能以读写方式访问 /protected/project<p>1.创建共享文件夹</p><p>[root@localhost ~]# mkdir -p /public /protected/project<br></p><p>2.修改/protected/project文件夹的所有者为ldapuser0</p><p>[root@localhost home]# chown ldapuser0 /protected/project<br></p><p>3.从服务端下载秘钥文件另存为/etc/krb5.keytab</p><p>[root@localhost home]# wget -O /etc/krb5.keytab http://classroom.example.com/pub/keytabs/server0.keytab<br></p><p>4.修改配置文件</p><p>[root@localhost etc]# vim /etc/exports<br></p><p>/public 172.25.0.0/24(ro)<br></p><p>/protected 172.25.0.0/24(rw,sec=krb5p)</p><p>5.重启nfs-secure-server,nfs-server服务</p><p>[root@localhost etc]# systemctl restart nfs-secure-server nfs-server<br></p><p>[root@localhost etc]# systemctl enable nfs-secure-server nfs-server</p><p><br></p><p></p><h2 style="color:rgb(0,0,0);font-family:'Times New Roman';"><a name="t15"></a>11.挂载NFS共享</h2><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">在 desktop</span><span style="color:#FF0000;font-family:'Times New Roman';font-size:14px;">0</span><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">&nbsp;上挂载一个来自 server</span><span style="color:#FF0000;font-family:'Times New Roman';font-size:14px;">0</span><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">.example.com 的共享,并符合下列要求:</span>/public 挂载在下面的目录上 /mnt/nfsmount/protected 挂载在下面的目录上 /mnt/nfssecure 并使用安全的方式,密钥下载 URL:<a href="http://classroom.example.com/pub/keytabs/desktop0.keytab" rel="nofollow" target="_blank">http://classroom.example.com/pub/keytabs/desktop<span style="color:#FF0000;">0</span>.keytab</a>用户 ldapuser<span style="color:#FF0000;">0</span>&nbsp;能够在/mnt/nfssecure/project 上创建文件这些文件系统在系统启动时自动挂载<p>1.创建两个挂载点</p><p>[root@desktop0 ~]# mkdir /mnt/nfsmount &nbsp; &nbsp;/mnt/nfssecure<br></p><p>2.下载安全的秘钥文件在/etc目录下</p><p>[root@desktop0 ~]# wget -O /etc/krb5.keytab http://classroom.example.com/pub/keytabs/desktop0.keytab<br></p><p>3.启动客户端的服务</p><p>[root@desktop0 ~]# systemctl restart nfs-secure<br></p><p>[root@desktop0 ~]# systemctl enable nfs-secure</p><p>4.查看server0.example.com服务器共享了哪些资源</p><p>[root@desktop0 ~]# showmount -e 172.25.0.11<br></p><p>5.修改配置文件</p><p>172.25.0.11:/public /mnt/nfsmount nfs _netdev 0 0<br></p><p>172.25.0.11:/protected /mnt/nfssecure nfs sec=krb5p,_netdev 0 0</p><p>6.验证挂载结果</p><p>[root@desktop0 ~]# mount -a<br></p><p>[root@desktop0 ~]# df -h<br></p><p><img src="https://img-blog.csdn.net/20180407181902407?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM2NDQxMDI3/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70" alt=""><br></p><p>7.ssh登录获取通行证,并验证在/mnt/nfssecure/project/下创建文件结果</p><p>[root@desktop0 nfssecure]# ssh ldapuser0@desktop0.example.com<br></p><p>ldapuser0@desktop0.example.com's password: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;#密码 kerberos(练习环境)<br></p><p>[ldapuser0@desktop0 project] ls<br>1.txt<br></p><p><br></p><p></p><h2 style="color:rgb(0,0,0);font-family:'Times New Roman';"><a name="t14"></a>10.配置NFS共享服务</h2><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">在 server</span><span style="color:#FF0000;font-family:'Times New Roman';font-size:14px;">0</span><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">&nbsp;配置 NFS 服务,要求如下:</span>以只读的方式共享目录 /public,只能被 example.com 域中的系统访问以读写的方式共享目录 /protected,只能被 example.com 域中的系统访问访问 /protected 需要通过 Kerberos 安全加密,您可以使用下面 URL 提供的密钥:<a href="http://classroom.example.com/pub/keytabs/server0.keytab" rel="nofollow" target="_blank">http://classroom.example.com/pub/keytabs/server<span style="color:#FF0000;">0</span>.keytab</a>目录 /protected 应该包含名为 project 拥有人为 ldapuser<span style="color:#FF0000;">0</span>&nbsp;的子目录用户 ldapuser<span style="color:#FF0000;">0</span>&nbsp;能以读写方式访问 /protected/project<p>1.创建共享文件夹</p><p>[root@localhost ~]# mkdir -p /public /protected/project<br></p><p>2.修改/protected/project文件夹的所有者为ldapuser0</p><p>[root@localhost home]# chown ldapuser0 /protected/project<br></p><p>3.从服务端下载秘钥文件另存为/etc/krb5.keytab</p><p>[root@localhost home]# wget -O /etc/krb5.keytab http://classroom.example.com/pub/keytabs/server0.keytab<br></p><p>4.修改配置文件</p><p>[root@localhost etc]# vim /etc/exports<br></p><p>/public 172.25.0.0/24(ro)<br></p><p>/protected 172.25.0.0/24(rw,sec=krb5p)</p><p>5.重启nfs-secure-server,nfs-server服务</p><p>[root@localhost etc]# systemctl restart nfs-secure-server nfs-server<br></p><p>[root@localhost etc]# systemctl enable nfs-secure-server nfs-server</p><p><br></p><p></p><h2 style="color:rgb(0,0,0);font-family:'Times New Roman';"><a name="t15"></a>11.挂载NFS共享</h2><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">在 desktop</span><span style="color:#FF0000;font-family:'Times New Roman';font-size:14px;">0</span><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">&nbsp;上挂载一个来自 server</span><span style="color:#FF0000;font-family:'Times New Roman';font-size:14px;">0</span><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">.example.com 的共享,并符合下列要求:</span>/public 挂载在下面的目录上 /mnt/nfsmount/protected 挂载在下面的目录上 /mnt/nfssecure 并使用安全的方式,密钥下载 URL:<a href="http://classroom.example.com/pub/keytabs/desktop0.keytab" rel="nofollow" target="_blank">http://classroom.example.com/pub/keytabs/desktop<span style="color:#FF0000;">0</span>.keytab</a>用户 ldapuser<span style="color:#FF0000;">0</span>&nbsp;能够在/mnt/nfssecure/project 上创建文件这些文件系统在系统启动时自动挂载<p>1.创建两个挂载点</p><p>[root@desktop0 ~]# mkdir /mnt/nfsmount &nbsp; &nbsp;/mnt/nfssecure<br></p><p>2.下载安全的秘钥文件在/etc目录下</p><p>[root@desktop0 ~]# wget -O /etc/krb5.keytab http://classroom.example.com/pub/keytabs/desktop0.keytab<br></p><p>3.启动客户端的服务</p><p>[root@desktop0 ~]# systemctl restart nfs-secure<br></p><p>[root@desktop0 ~]# systemctl enable nfs-secure</p><p>4.查看server0.example.com服务器共享了哪些资源</p><p>[root@desktop0 ~]# showmount -e 172.25.0.11<br></p><p>5.修改配置文件</p><p>172.25.0.11:/public /mnt/nfsmount nfs _netdev 0 0<br></p><p>172.25.0.11:/protected /mnt/nfssecure nfs sec=krb5p,_netdev 0 0</p><p>6.验证挂载结果</p><p>[root@desktop0 ~]# mount -a<br></p><p>[root@desktop0 ~]# df -h<br></p><p><img src="https://img-blog.csdn.net/20180407181902407?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM2NDQxMDI3/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70" alt=""><br></p><p>7.ssh登录获取通行证,并验证在/mnt/nfssecure/project/下创建文件结果</p><p>[root@desktop0 nfssecure]# ssh ldapuser0@desktop0.example.com<br></p><p>ldapuser0@desktop0.example.com's password: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;#密码 kerberos(练习环境)<br></p><p>[ldapuser0@desktop0 project] touch 1.txt
[ldapuser0@desktop0 project]ls<br></p><p>1.txt &nbsp;</p><p><br></p><p></p><h2 style="color:rgb(0,0,0);font-family:'Times New Roman';"><a name="t16"></a>12.实现一个Web服务器</h2><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">为 http://server</span><span style="color:#FF0000;font-family:'Times New Roman';font-size:14px;">0</span><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">.example.com 配置 Web 服务器:</span>从URL地址&nbsp;<a href="http://classroom.example.com/pub/materials/station.html" rel="nofollow" target="_blank">http://classroom.example.com/pub/materials/station.html</a>&nbsp;下载一个主页文件,并将该文件重命名为 index.html将文件 index.html 拷贝到您的 web 服务器的 DocumentRoot 目录下不要对文件 index.html 的内容进行任何修改<p>1.安装httpd</p><p>[root@server0 ~]# yum -y install httpd<br></p><p>2.在/etc/httpd/conf.d/目录下添加一个*.conf的配置文件</p><p>vim /etc/httpd/conf.d/myIndexHtml.conf<br></p><p>&lt;Virtualhost *:80&gt;<br>&nbsp; &nbsp; &nbsp; &nbsp; serverName server0.example.com<br>&nbsp; &nbsp; &nbsp; &nbsp; DocumentRoot /var/www/html<br></p><p>&lt;/Virtualhost&gt;</p><p>3.在/var/www/html/目录下下载主页文件,并重命名为index.html</p><p>[root@server0 html]# wget http://classroom.example.com/pub/materials/station.html<br></p><p>[root@server0 html]# mv station.html index.html<br></p><p><br></p><p></p><h2 style="color:rgb(0,0,0);font-family:'Times New Roman';"><a name="t17"></a>13.配置安全Web服务</h2><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">为站点 http://server</span><span style="color:#FF0000;font-family:'Times New Roman';font-size:14px;">0</span><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">.example.com 配置TLS加密:</span>一个已签名证书从&nbsp;<a href="http://classroom.example.com/pub/tls/certs/server0.crt" rel="nofollow" target="_blank">http://classroom.example.com/pub/tls/certs/server<span style="color:#FF0000;">0</span>.crt</a>&nbsp;获取此证书的密钥从&nbsp;<a href="http://classroom.example.com/pub/tls/certs/server0.key" rel="nofollow" target="_blank">http://classroom.example.com/pub/tls/private/server<span style="color:#FF0000;">0</span>.key</a>&nbsp;获取此证书的签名授权信息从&nbsp;<a href="http://classroom.example.com/pub/example-ca.crt" rel="nofollow" target="_blank">http://classroom.example.com/pub/example-ca.crt</a>&nbsp;获取<p>1.部署网站证书(营业执照)</p><p>[root@server0 ~]# cd /etc/pki/tls/certs/<br></p><p>[root@server0 certs]# wget http://classroom.example.com/pub/tls/certs/server0.crt<br></p><p>2.部署根证书(公安局证书,颁发网站证书的服务器信息)</p><p>[root@server0 ~]# cd /etc/pki/tls/certs/<br></p><p>[root@server0 certs]# wget http://classroom.example.com/pub/example-ca.crt<br></p><p>3.部署解密的秘钥文件</p><p>[root@server0 ~]# cd /etc/pki/tls/private/<br></p><p>[root@server0 private]# wget http://classroom.example.com/pub/tls/private/server0.key&nbsp;<br></p><p>4.安装支持安全web的软件mod_ssl</p><p>[root@server0 ~]# yum -y install mod_ssl<br></p><p>5.修改配置文件指定网站证书,根证书,秘钥证书</p><p></p><p>&nbsp;59行 &nbsp; &nbsp; DocumentRoot "/var/www/html" &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; #指定默认访问路径</p><p>&nbsp;60行 &nbsp; &nbsp; ServerName server0.example.com:443&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; &nbsp; #指定安全web的服务器域名和端口号</p><p>100行 &nbsp; &nbsp;SSLCertificateFile /etc/pki/tls/certs/server0.crt &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; #指定网站证书<br></p><p>107行 &nbsp; &nbsp; &nbsp; SSLCertificateKeyFile /etc/pki/tls/private/server0.key &nbsp;#指定秘钥证书<br></p><p>122行 &nbsp; &nbsp; &nbsp; SSLCACertificateFile /etc/pki/tls/certs/example-ca.crt &nbsp;#根证书<br></p><p>6.重启httpd服务</p><p>[root@server0 private]# systemctl restart httpd<br></p><p>7.在desktop上进行测试</p><p>[root@desktop0 ~]# firefox https://server0.example.com<br></p><p><img src="https://img-blog.csdn.net/20180407203213150?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM2NDQxMDI3/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70" alt=""><br></p><p><br></p><p></p><h2 style="color:rgb(0,0,0);font-family:'Times New Roman';"><a name="t18"></a>14.配置虚拟主机</h2><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">在 server</span><span style="color:#FF0000;font-family:'Times New Roman';font-size:14px;">0</span><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">&nbsp;上扩展您的 web 服务器,为站点 http://www</span><span style="color:#FF0000;font-family:'Times New Roman';font-size:14px;">0</span><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">.example.com 创建一个虚拟主机,然后执行下述步骤:</span>设置 DocumentRoot 为/var/www/virtual从&nbsp;<a href="http://classroom.example.com/pub/materials/www.html" rel="nofollow" target="_blank">http://classroom.example.com/pub/materials/www.html</a>&nbsp;下载文件并重命名为index.html不要对文件 index.html 的内容进行任何修改将文件 index.html 放到虚拟主机的 DocumentRoot 目录下确保 fleyd 用户能够在/var/www/virtual 目录下创建文件<p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">注意:原始站点 http://server</span><span style="color:#FF0000;font-family:'Times New Roman';font-size:14px;">0</span><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">.example.com 必须仍然能够访问,名称服务器 example.com 提供对主机名 www</span><span style="color:#FF0000;font-family:'Times New Roman';font-size:14px;">0</span><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">.example.com 的域名解析。&nbsp;</span></p><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">1.创建/var/www/virtual目录,并下载www.html重命名为index.html</span></p><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">[root@server0 ~]# mkdir /var/www/virtual<br></span></p><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">[root@server0 ~]# wget &nbsp;http://classroom.example.com/pub/materials/www.html&nbsp;<br></span></p><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">[root@server0 virtual]# cp ~/www.html index.html<br></span></p><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">2.新建fleyd用户,并给fleyd赋予/var/www/virtual/目录的rwx权限</span></p><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">[root@server0 home]# useradd fleyd<br></span></p><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">[root@server0 home]# setfacl -m u:fleyd:rwx /var/www/virtual/<br></span></p><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">3.在<span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">/etc/httpd/conf.d/目录下创建*.conf虚拟主机配置文件</span></span></p><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">[root@server0 ~]# vim /etc/httpd/conf.d/VirtualHost_www0.conf<br></span></p><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">&lt;VirtualHost *:80&gt;<br>&nbsp; &nbsp; &nbsp; &nbsp; serverName www0.example.com<br>&nbsp; &nbsp; &nbsp; &nbsp; DocumentRoot /var/www/virtual<br></span></p><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">&lt;/VirtualHost&gt;</span></p><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">4.重启httpd服务</span></p><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">[root@server0 ~]# systemctl restart httpd<br></span></p><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">5.客户端验证</span></p><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">[root@desktop0 ~]# firefox http://www0.example.com<br></span></p><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;"><img src="https://img-blog.csdn.net/20180407204903224?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM2NDQxMDI3/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70" alt=""><br></span></p><p></p><h2 style="color:rgb(0,0,0);font-family:'Times New Roman';"><a name="t19"></a>15.配置Web内容访问</h2><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">在您的 server</span><span style="color:#FF0000;font-family:'Times New Roman';font-size:14px;">0</span><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">&nbsp;web服务器的 DocumentRoot 目录下创建一个名为 private 的目录,要求如下:</span>从&nbsp;<a href="http://classroom.example.com/pub/materials/private.html" rel="nofollow" target="_blank">http://classroom.example.com/pub/materials/private.html</a>&nbsp;下载一个文件副本到这个目录,并且命名为 index.html不要对这个文件的内容做任何修改从 server<span style="color:#FF0000;">0</span>&nbsp;上,任何人都可以浏览 private 的内容,但是从其他系统不能访问这个目录的内容<p>1.在/var/www/html目录下创建private目录,下载private.html文件,重命名为index.html</p><p>[root@server0 html]# mkdir private<br></p><p>[root@server0 private]# wget -O index.html &nbsp;http://classroom.example.com/pub/materials/private.html<br></p><p>2.修改域名为server0.example.com的虚拟主机配置文件</p><p>[root@server0 ~]# vim /etc/httpd/conf.d/VirtualHost<br></p><p>&lt;Directory /var/www/html/private&gt;<br>&nbsp; &nbsp; &nbsp; &nbsp; Require ip 172.25.0.11<br>&lt;/Directory&gt;<br></p><p>3.重启httpd服务</p><p>[root@server0 ~]# systemctl restart httpd<br></p><p>4.访问验证</p><p>[root@server0 ~]# firefox server0.example.com/private<br></p><p><img src="https://img-blog.csdn.net/20180407210230989?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM2NDQxMDI3/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70" alt=""><br></p><p>[root@desktop0 ~]# firefox server0.example.com/private</p><p><img src="https://img-blog.csdn.net/20180407210317484?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM2NDQxMDI3/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70" alt=""><br></p><p><br></p><p></p><h2 style="color:rgb(0,0,0);font-family:'Times New Roman';"><a name="t20"></a>16.实现动态Web内容</h2><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">在 server</span><span style="color:#FF0000;font-family:'Times New Roman';font-size:14px;">0</span><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">&nbsp;上配置提供动态Web内容,要求如下:</span>动态内容由名为 webapp<span style="color:#FF0000;">0</span>.example.com 的虚拟主机提供虚拟主机侦听在端口 8909从&nbsp;<a href="http://classroom.example.com/pub/materials/webinfo.wsgi" rel="nofollow" target="_blank">http://classroom.example.com/pub/materials/webinfo.wsgi</a>&nbsp;下载一个脚本,然后放在适当的位置,无论如何不要修改此文件的内容客户端访问&nbsp;<a href="http://webapp0.example.com:8909/" rel="nofollow" target="_blank">http://webapp<span style="color:#FF0000;">0</span>.example.com:8909</a>&nbsp;可接收到动态生成的 Web 页此 http://webapp<span style="color:#FF0000;">0</span>.example.com:8909/必须能被 example.com 域内的所有系统访问<p>1.创建/var/www/webapp0文件夹,在这个文件夹下下载webinfo.wsgi</p><p>[root@server0 ~]# mkdir /var/www/webapp0<br></p><p>[root@server0 webapp0]# wget http://classroom.example.com/pub/materials/webinfo.wsgi<br></p><p>2.安装可以识别Python代码的软件</p><p>[root@server0 webapp0]# yum -y install mod_wsgi<br></p><p>3.在/etc/httpd/conf.d/目录下新建虚拟主机配置文件VirtualHost_Wsgi.conf</p><p>[root@server0 webapp0]# vim /etc/httpd/conf.d/VirtualHost_Wsgi.conf<br></p><p>Listen 8909<br>&lt;VirtualHost *:8909&gt;<br>&nbsp; &nbsp; &nbsp; &nbsp; ServerName webapp0.example.com<br>&nbsp; &nbsp; &nbsp; &nbsp; DocumentRoot /var/www/webapp0<br>&nbsp; &nbsp; &nbsp; &nbsp; WSGIScriptAlias / /var/www/webapp0/webinfo.wsgi<br>&lt;/VirtualHost&gt;<br></p><p>4.重启httpd服务</p><p>[root@server0 ~]# systemctl restart httpd<br></p><p>5.客户端访问测试</p><p>[root@desktop0 ~]# firefox webapp0.example.com:8909<br></p><p><img src="https://img-blog.csdn.net/20180407213130920?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM2NDQxMDI3/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70" alt=""><br></p><p></p><h2 style="color:rgb(0,0,0);font-family:'Times New Roman';"><a name="t21"></a>17.创建一个脚本</h2><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">在 server</span><span style="color:#FF0000;font-family:'Times New Roman';font-size:14px;">0</span><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">&nbsp;上创建一个名为/root/foo.sh 的脚本,让其提供下列特性:</span></p>当运行/root/foo.sh redhat,输出为 fedora当运行/root/foo.sh fedora,输出为 redhat当没有任何参数或者参数不是 redhat 或者 fedora 时,其错误输出产生以下的信息:/root/foo.sh redhat|fedora<p>#!/bin/bash<br>if [ ls<br></p><p>1.txt &nbsp;</p><p><br></p><p></p><h2 style="color:rgb(0,0,0);font-family:'Times New Roman';"><a name="t16"></a>12.实现一个Web服务器</h2><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">为 http://server</span><span style="color:#FF0000;font-family:'Times New Roman';font-size:14px;">0</span><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">.example.com 配置 Web 服务器:</span>从URL地址&nbsp;<a href="http://classroom.example.com/pub/materials/station.html" rel="nofollow" target="_blank">http://classroom.example.com/pub/materials/station.html</a>&nbsp;下载一个主页文件,并将该文件重命名为 index.html将文件 index.html 拷贝到您的 web 服务器的 DocumentRoot 目录下不要对文件 index.html 的内容进行任何修改<p>1.安装httpd</p><p>[root@server0 ~]# yum -y install httpd<br></p><p>2.在/etc/httpd/conf.d/目录下添加一个*.conf的配置文件</p><p>vim /etc/httpd/conf.d/myIndexHtml.conf<br></p><p>&lt;Virtualhost *:80&gt;<br>&nbsp; &nbsp; &nbsp; &nbsp; serverName server0.example.com<br>&nbsp; &nbsp; &nbsp; &nbsp; DocumentRoot /var/www/html<br></p><p>&lt;/Virtualhost&gt;</p><p>3.在/var/www/html/目录下下载主页文件,并重命名为index.html</p><p>[root@server0 html]# wget http://classroom.example.com/pub/materials/station.html<br></p><p>[root@server0 html]# mv station.html index.html<br></p><p><br></p><p></p><h2 style="color:rgb(0,0,0);font-family:'Times New Roman';"><a name="t17"></a>13.配置安全Web服务</h2><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">为站点 http://server</span><span style="color:#FF0000;font-family:'Times New Roman';font-size:14px;">0</span><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">.example.com 配置TLS加密:</span>一个已签名证书从&nbsp;<a href="http://classroom.example.com/pub/tls/certs/server0.crt" rel="nofollow" target="_blank">http://classroom.example.com/pub/tls/certs/server<span style="color:#FF0000;">0</span>.crt</a>&nbsp;获取此证书的密钥从&nbsp;<a href="http://classroom.example.com/pub/tls/certs/server0.key" rel="nofollow" target="_blank">http://classroom.example.com/pub/tls/private/server<span style="color:#FF0000;">0</span>.key</a>&nbsp;获取此证书的签名授权信息从&nbsp;<a href="http://classroom.example.com/pub/example-ca.crt" rel="nofollow" target="_blank">http://classroom.example.com/pub/example-ca.crt</a>&nbsp;获取<p>1.部署网站证书(营业执照)</p><p>[root@server0 ~]# cd /etc/pki/tls/certs/<br></p><p>[root@server0 certs]# wget http://classroom.example.com/pub/tls/certs/server0.crt<br></p><p>2.部署根证书(公安局证书,颁发网站证书的服务器信息)</p><p>[root@server0 ~]# cd /etc/pki/tls/certs/<br></p><p>[root@server0 certs]# wget http://classroom.example.com/pub/example-ca.crt<br></p><p>3.部署解密的秘钥文件</p><p>[root@server0 ~]# cd /etc/pki/tls/private/<br></p><p>[root@server0 private]# wget http://classroom.example.com/pub/tls/private/server0.key&nbsp;<br></p><p>4.安装支持安全web的软件mod_ssl</p><p>[root@server0 ~]# yum -y install mod_ssl<br></p><p>5.修改配置文件指定网站证书,根证书,秘钥证书</p><p></p><p>&nbsp;59行 &nbsp; &nbsp; DocumentRoot "/var/www/html" &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; #指定默认访问路径</p><p>&nbsp;60行 &nbsp; &nbsp; ServerName server0.example.com:443&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; &nbsp; #指定安全web的服务器域名和端口号</p><p>100行 &nbsp; &nbsp;SSLCertificateFile /etc/pki/tls/certs/server0.crt &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; #指定网站证书<br></p><p>107行 &nbsp; &nbsp; &nbsp; SSLCertificateKeyFile /etc/pki/tls/private/server0.key &nbsp;#指定秘钥证书<br></p><p>122行 &nbsp; &nbsp; &nbsp; SSLCACertificateFile /etc/pki/tls/certs/example-ca.crt &nbsp;#根证书<br></p><p>6.重启httpd服务</p><p>[root@server0 private]# systemctl restart httpd<br></p><p>7.在desktop上进行测试</p><p>[root@desktop0 ~]# firefox https://server0.example.com<br></p><p><img src="https://img-blog.csdn.net/20180407203213150?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM2NDQxMDI3/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70" alt=""><br></p><p><br></p><p></p><h2 style="color:rgb(0,0,0);font-family:'Times New Roman';"><a name="t18"></a>14.配置虚拟主机</h2><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">在 server</span><span style="color:#FF0000;font-family:'Times New Roman';font-size:14px;">0</span><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">&nbsp;上扩展您的 web 服务器,为站点 http://www</span><span style="color:#FF0000;font-family:'Times New Roman';font-size:14px;">0</span><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">.example.com 创建一个虚拟主机,然后执行下述步骤:</span>设置 DocumentRoot 为/var/www/virtual从&nbsp;<a href="http://classroom.example.com/pub/materials/www.html" rel="nofollow" target="_blank">http://classroom.example.com/pub/materials/www.html</a>&nbsp;下载文件并重命名为index.html不要对文件 index.html 的内容进行任何修改将文件 index.html 放到虚拟主机的 DocumentRoot 目录下确保 fleyd 用户能够在/var/www/virtual 目录下创建文件<p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">注意:原始站点 http://server</span><span style="color:#FF0000;font-family:'Times New Roman';font-size:14px;">0</span><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">.example.com 必须仍然能够访问,名称服务器 example.com 提供对主机名 www</span><span style="color:#FF0000;font-family:'Times New Roman';font-size:14px;">0</span><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">.example.com 的域名解析。&nbsp;</span></p><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">1.创建/var/www/virtual目录,并下载www.html重命名为index.html</span></p><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">[root@server0 ~]# mkdir /var/www/virtual<br></span></p><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">[root@server0 ~]# wget &nbsp;http://classroom.example.com/pub/materials/www.html&nbsp;<br></span></p><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">[root@server0 virtual]# cp ~/www.html index.html<br></span></p><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">2.新建fleyd用户,并给fleyd赋予/var/www/virtual/目录的rwx权限</span></p><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">[root@server0 home]# useradd fleyd<br></span></p><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">[root@server0 home]# setfacl -m u:fleyd:rwx /var/www/virtual/<br></span></p><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">3.在<span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">/etc/httpd/conf.d/目录下创建*.conf虚拟主机配置文件</span></span></p><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">[root@server0 ~]# vim /etc/httpd/conf.d/VirtualHost_www0.conf<br></span></p><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">&lt;VirtualHost *:80&gt;<br>&nbsp; &nbsp; &nbsp; &nbsp; serverName www0.example.com<br>&nbsp; &nbsp; &nbsp; &nbsp; DocumentRoot /var/www/virtual<br></span></p><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">&lt;/VirtualHost&gt;</span></p><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">4.重启httpd服务</span></p><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">[root@server0 ~]# systemctl restart httpd<br></span></p><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">5.客户端验证</span></p><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">[root@desktop0 ~]# firefox http://www0.example.com<br></span></p><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;"><img src="https://img-blog.csdn.net/20180407204903224?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM2NDQxMDI3/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70" alt=""><br></span></p><p></p><h2 style="color:rgb(0,0,0);font-family:'Times New Roman';"><a name="t19"></a>15.配置Web内容访问</h2><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">在您的 server</span><span style="color:#FF0000;font-family:'Times New Roman';font-size:14px;">0</span><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">&nbsp;web服务器的 DocumentRoot 目录下创建一个名为 private 的目录,要求如下:</span>从&nbsp;<a href="http://classroom.example.com/pub/materials/private.html" rel="nofollow" target="_blank">http://classroom.example.com/pub/materials/private.html</a>&nbsp;下载一个文件副本到这个目录,并且命名为 index.html不要对这个文件的内容做任何修改从 server<span style="color:#FF0000;">0</span>&nbsp;上,任何人都可以浏览 private 的内容,但是从其他系统不能访问这个目录的内容<p>1.在/var/www/html目录下创建private目录,下载private.html文件,重命名为index.html</p><p>[root@server0 html]# mkdir private<br></p><p>[root@server0 private]# wget -O index.html &nbsp;http://classroom.example.com/pub/materials/private.html<br></p><p>2.修改域名为server0.example.com的虚拟主机配置文件</p><p>[root@server0 ~]# vim /etc/httpd/conf.d/VirtualHost<br></p><p>&lt;Directory /var/www/html/private&gt;<br>&nbsp; &nbsp; &nbsp; &nbsp; Require ip 172.25.0.11<br>&lt;/Directory&gt;<br></p><p>3.重启httpd服务</p><p>[root@server0 ~]# systemctl restart httpd<br></p><p>4.访问验证</p><p>[root@server0 ~]# firefox server0.example.com/private<br></p><p><img src="https://img-blog.csdn.net/20180407210230989?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM2NDQxMDI3/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70" alt=""><br></p><p>[root@desktop0 ~]# firefox server0.example.com/private</p><p><img src="https://img-blog.csdn.net/20180407210317484?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM2NDQxMDI3/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70" alt=""><br></p><p><br></p><p></p><h2 style="color:rgb(0,0,0);font-family:'Times New Roman';"><a name="t20"></a>16.实现动态Web内容</h2><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">在 server</span><span style="color:#FF0000;font-family:'Times New Roman';font-size:14px;">0</span><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">&nbsp;上配置提供动态Web内容,要求如下:</span>动态内容由名为 webapp<span style="color:#FF0000;">0</span>.example.com 的虚拟主机提供虚拟主机侦听在端口 8909从&nbsp;<a href="http://classroom.example.com/pub/materials/webinfo.wsgi" rel="nofollow" target="_blank">http://classroom.example.com/pub/materials/webinfo.wsgi</a>&nbsp;下载一个脚本,然后放在适当的位置,无论如何不要修改此文件的内容客户端访问&nbsp;<a href="http://webapp0.example.com:8909/" rel="nofollow" target="_blank">http://webapp<span style="color:#FF0000;">0</span>.example.com:8909</a>&nbsp;可接收到动态生成的 Web 页此 http://webapp<span style="color:#FF0000;">0</span>.example.com:8909/必须能被 example.com 域内的所有系统访问<p>1.创建/var/www/webapp0文件夹,在这个文件夹下下载webinfo.wsgi</p><p>[root@server0 ~]# mkdir /var/www/webapp0<br></p><p>[root@server0 webapp0]# wget http://classroom.example.com/pub/materials/webinfo.wsgi<br></p><p>2.安装可以识别Python代码的软件</p><p>[root@server0 webapp0]# yum -y install mod_wsgi<br></p><p>3.在/etc/httpd/conf.d/目录下新建虚拟主机配置文件VirtualHost_Wsgi.conf</p><p>[root@server0 webapp0]# vim /etc/httpd/conf.d/VirtualHost_Wsgi.conf<br></p><p>Listen 8909<br>&lt;VirtualHost *:8909&gt;<br>&nbsp; &nbsp; &nbsp; &nbsp; ServerName webapp0.example.com<br>&nbsp; &nbsp; &nbsp; &nbsp; DocumentRoot /var/www/webapp0<br>&nbsp; &nbsp; &nbsp; &nbsp; WSGIScriptAlias / /var/www/webapp0/webinfo.wsgi<br>&lt;/VirtualHost&gt;<br></p><p>4.重启httpd服务</p><p>[root@server0 ~]# systemctl restart httpd<br></p><p>5.客户端访问测试</p><p>[root@desktop0 ~]# firefox webapp0.example.com:8909<br></p><p><img src="https://img-blog.csdn.net/20180407213130920?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM2NDQxMDI3/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70" alt=""><br></p><p></p><h2 style="color:rgb(0,0,0);font-family:'Times New Roman';"><a name="t21"></a>17.创建一个脚本</h2><p><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">在 server</span><span style="color:#FF0000;font-family:'Times New Roman';font-size:14px;">0</span><span style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:14px;">&nbsp;上创建一个名为/root/foo.sh 的脚本,让其提供下列特性:</span></p>当运行/root/foo.sh redhat,输出为 fedora当运行/root/foo.sh fedora,输出为 redhat当没有任何参数或者参数不是 redhat 或者 fedora 时,其错误输出产生以下的信息:/root/foo.sh redhat|fedora<p>#!/bin/bash<br>if [ # -eq 0  ];then
        echo echo “/root/foo.sh redhat|fedora” >&2
        exit 2
elif [ 1 == "redhat" ];then<br>&nbsp; &nbsp; &nbsp; &nbsp; echo "fedora"<br>elif [ 1 == "redhat" ];then<br>&nbsp; &nbsp; &nbsp; &nbsp; echo "fedora"<br>elif [ 1 == “fedora” ];then
        echo “redhat”
else
        echo “/root/foo.sh redhat|fedora” >&2
        exit 3

fi


18.创建一个添加用户的脚本

在 server 0  上创建一个脚本,名为/root/batchusers,此脚本能实现为系统 server 0  创建本地用户,并且这些用户的用户名来自一个包含用户名的文件,同时满足下列要求:此脚本要求提供一个参数,此参数就是包含用户名列表的文件如果没有提供参数,此脚本应该给出下面的提示信息 Usage: /root/batchusers <userfile> 然后退出并返回相应的值如果提供一个不存在的文件名,此脚本应该给出下面的提示信息 Input file not found 然后退出并返回相应的值创建的用户登陆Shell为/bin/false,此脚本不需要为用户设置密码您可以从下面的 URL 获取用户名列表作为测试用: http://classroom.example.com/pub/materials/userlist

1.下载用户名列表文件

[root@server0 ~]# wget -O /root/userlist http://classroom.example.com/pub/materials/userlist

2.编写/root/userlist批量添加用户的脚本

[root@server0 ~]# vim /root/userlist 

#!/bin/bash
if [ # -eq 0 ];then<br>&nbsp; &nbsp; &nbsp; &nbsp; echo 'Usage: /root/batchusers &lt;userfile&gt;'<br>&nbsp; &nbsp; &nbsp; &nbsp; exit 2<br>fi<br>if [ ! -f # -eq 0 ];then<br>&nbsp; &nbsp; &nbsp; &nbsp; echo 'Usage: /root/batchusers &lt;userfile&gt;'<br>&nbsp; &nbsp; &nbsp; &nbsp; exit 2<br>fi<br>if [ ! -f 1 ];then
        echo ‘Input file not found’
        exit 3
fi
for name in (cat ( c a t 1)
do
        useradd -s /bin/false $name

done

3.为脚本添加执行权限

[root@server0 ~]# chmod +x /root/batchusers 

4.执行脚本测试

[root@server0 ~]# /root/batchusers ~/userlist 

19.配置iSCSI服务端

配置 server 0  提供一个 iSCSI 服务,磁盘名为 iqn.2016-02.com.example:server 0 ,并符合下列要求:服务端口为 3260使用 iscsi_store 作其后端卷,其大小为 3GiB此服务只能被 desktop 0.example.com 访问

一、准备磁盘空间


  
  
  1. [root@server0 ~]# fdisk /dev/vdb
  2. Command (m for help): n // n 新建分区
  3. Partition number (1-128, default 1): //接受默认分区编号
  4. First sector (34-20971486, default 2048): //起始位置默认
  5. Last sector, +sectors or +size{K,M,G,T,P} (2048-20971486, default 20971486): +3G
  6. //结束位置设置 +3G
  7. Command (m for help): w
  8. // w 保存分区更改
  9. .. ..
  10. [root@server0 ~]# partprobe /dev/vdb
  11. //刷新分区表

二.、安装、配置 iSCSI 磁盘

1.配置后端存储

/> backstores/block create iscsi_store /dev/vdb1

2.建立磁盘组

/> /iscsi create  iqn.2016-02.com.example:server0

3.绑定存储(将共享的后端存储放入磁盘组)

/> iscsi/iqn.2016-02.com.example:server0/tpg1/luns create /backstores/block/iscsi_store 

4.为磁盘组配置IP地址

/> iscsi/iqn.2016-02.com.example:server0/tpg1/portals create 172.25.0.11

5.客户端访问控制的设置

/> iscsi/iqn.2016-02.com.example:server0/tpg1/acls create iqn.2016-02.com.example:desktop0

/>  ls            

/>  exit

三、重启服务

[root@server0 ~]# systemctl restart target

[root@server0 ~]# systemctl enable target


20.配置iSCSI客户端

配置 desktop 0  使其能连接 server 0  上提供的 iqn.2016-02.com.example:server 0 ,并符合以下要求:iSCSI设备在系统启动的期间自动加载块设备iSCSI上包含一个大小为 2100MiB 的分区,并格式化为ext4文件系统此分区挂载在 /mnt/data 上,同时在系统启动的期间自动挂载

1.安装iscsi-initiator-utils软件

[root@desktop0 ~]# yum -y install iscsi-initiator-utils.i686 

2.设置客户端访问时声称的名字

[root@desktop0 ~]# vim /etc/iscsi/initiatorname.iscsi 

InitiatorName=iqn.2016-02.com.example:desktop0

3.起 iscsid 服务以读取 iqn 名称

[root@desktop0 ~]# systemctl daemon-reload 

[root@desktop0 ~]# systemctl restart iscsid.service 

4.发现磁盘,连接磁盘

[root@desktop0 ~]# iscsiadm -m discovery -t st -p server0.example.com

[root@desktop0 ~]# iscsiadm -m node -L all

5.将配置文件里面的manual改成automatic

[root@desktop0 ~]# vim /var/lib/iscsi/nodes/iqn.2016-02.com.example\:server0/172.25.0.11\,3260\,1/default 

6.将iscsi设置为开机自启

[root@desktop0 ~]# systemctl enable iscsi

7.划分一个2100M的分区

lsblk n 回车 回车 回车 +2100M w  –> partprobe /dev/vdb1 –> lsblk

8.把/dev/vdb1格式化为ext4文件系统

[root@desktop0 ~]# mkfs.ext4 /dev/vdb1

9.创建挂载点

[root@desktop0 ~]# mkdir /mnt/data

10.找到分区的UUID

[root@desktop0 ~]# blkid

/dev/vdb1: UUID=”d907c7b4-7ed7-4e17-b698-55ff861c085d” TYPE=”ext4” 

11.实现自动挂载

[root@desktop0 ~]# vim /etc/fstab 

UUID=”d907c7b4-7ed7-4e17-b698-55ff861c085d”    /mnt/data  ext4   _netdev 0 0

 12.先存盘再强制重启  (务必要做)

[root@desktopX ~]# sync ; reboot -f



21.配置一个数据库


在 server 0  上创建一个 MariaDB 数据库,名为 Contacts,并符合以下条件:数据库应该包含来自数据库复制的内容,复制文件的 URL 为: http://classroom.example.com/pub/materials/users.sql数据库只能被 localhost 访问除了root用户,此数据库只能被用户 Raikon 查询,此用户密码为 atenorthroot用户的密码为 atenorth,同时不允许空密码登陆

1.安装mariadb-server

[root@server0 ~]#yum -y install mariadb-server 

[root@server0 ~]#systemctl restart mariadb

[root@server0 ~]#systemctl enable mariadb

2.设置密码并登录数据库

[root@server0 ~]# mysqladmin -u root  password ‘atenorth‘

[root@server0 ~]# mysql -u root -patenorth

3.创建Contacts数据库

MariaDB [(none)]> create database Contacts;

4.为Raiko用户授予Contacts数据库的查询权限

MariaDB [(none)]> GRANT select ON Contacts.* to Raikon@localhost IDENTIFIED BY ‘atenorth’

5.删除密码为空的用户

MariaDB [(none)]> delete from mysql.user where password=”;

MariaDB [(none)]> exit

6.导入库

[root@server0 ~]# wget http://classroom.example.com/pub/materials/users.sql

[root@server0 ~]# mysql -u root -patenorth Contacts < users.sql


22.数据库查询

在系统 server 0  上使用数据库 Contacts,并使用相应的 SQL 查询以回答下列问题:密码是 solicitous 的人的名字?有多少人的姓名是 Barbara 同时居住在 Sunnyvale?

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值