1、架设一个web服务器。在desktopX上配置一个站点:http://desktop22.example.com ,然后执行下面步骤,并且服务器已经提供DNS解析。- 网页内容为desktop22.example.com- 要求来自example.com这个域的成员可以访问desktopX.example.com站点。- 来自于172.24.0.0/24网段的客户端拒绝访问此web[root@localhost 桌面]# yum install elinks -y先安装elinks,测试是否访问[root@localhost 桌面]# yum install http* -y带*安装,可以安装手册一起在conf.d下配置虚拟主机配置文件然后把防火墙的http协议允许通过![](http://139.199.161.77/linhut/Apache+DNS_files/Image [1].png)外面主机测试是否成功![](http://139.199.161.77/linhut/Apache+DNS_files/Image [2].png)2、配置安全web服务- 为站点http://desktopX.example.com配置TLS加密,并制作一个自签名证书,公钥为joinlabs.crt,私钥为joinlabs.key。- 要求访问http://desktopX.example.com成功,并且跳转https协议。安装ssl模块[root@desktop22 conf.d]# yum install mod_ssl -y然后到/etc/pki/tls/certs下生成自制证书[root@desktop22 certs]# make joinlabs.crt然后编辑再去编辑虚拟主机配置文件<VirtualHost *:443>    DocumentRoot /var/www/html    ServerName desktop22.example.com    SSLEngine on    SSLCertificateFile /etc/pki/tls/certs/joinlabs.crt    SSLCertificateKeyFile /etc/pki/tls/certs/joinlabs.key3、配置虚拟主机。在desktopX上扩展您的web服务器,为站点http://www.example.com创建一个虚拟主机,然后执行下述步骤- 设置 DocumentRoot为/var/www/virtual- 请自行配置DNS解析- 网页内为wwwX.example.com- 确保用户natasha可以现在或将来都能够在/var/www/virtual的目录中创建内容注意:原始站点http://desktopX.example.com必须仍然能够访问,名称服务器example.com提供对主机名wwwX.example.com的域名解析。<VirtualHost :80>    DocumentRoot “/var/www/virtual”    ServerName www.example.com    RewriteEngine on    RewriteCond %{http_host} ^www.example.com    RewriteRule ^(.)$ http://www22.example.comsetfacl -m u:natasha:rwx virtualsetfacl -m d:natasha:rwx virtual4、配置web内容的访问。在您的desktopX上的web服务器的DocumentRoot目录下创建一个名为secret的目录,要求如下- 网页内容为www.secret.com- 从desktopX上,任何人都可以浏览secret的内容,但是从其他系统不能访问这个目录内容<VirtualHost *:443>    DocumentRoot “/var/www/html”    ServerName desktop22.example.com    SSLEngine on    SSLCertificateFile /etc/pki/tls/certs/joinlabs.crt    SSLCertificateKeyFile /etc/pki/tls/certs/joinlabs.key        <Directory /var/www/html>                                        Require all granted                        Require not ip 172.24.0.0/24                                alias /secret /var/www/html/secret        <Directory /var/www/html/secret>                require host .example.com                require all denied        5、实现动态web内容,在desktopX上配置提供动态web内容,要求如下:- 请自行配置DNS解析- 动态内容由名为webappX.example.com。- 虚拟主机侦听端口8998- ftp://i/pub/webapp.wsgi下载一个脚本,然后放在适当的位置,无论如何不要修改此文件内容- 客户点访问http://webappX.example.com:8998时,应该接收到动态生成的web页面-http://webaapX.example.com:8998必须能被example.com域内的所有系统访问yum searh mod_wsgi     #查找包名yum insyall mod_wsgi      #安装模块[root@desktop22 wsgi]#semanage port -l | grep httphttp_cache_port_t              tcp      8080, 8118, 8123, 10001-10010http_cache_port_t              udp      3130http_port_t                    tcp      80, 81, 443, 488, 8008, 8009, 8443, 9000pegasus_http_port_t            tcp      5988pegasus_https_port_t           tcp      5989[root@desktop22 wsgi]#semanage port -at http_port_t 8998 -p tcp     #selinux通过端口[root@desktop22 wsgi]#[root@desktop22 wsgi]#semanage port -l | grep httphttp_cache_port_t              tcp      8080, 8118, 8123, 10001-10010http_cache_port_t              udp      3130http_port_t                    tcp      8998, 80, 81, 443, 488, 8008, 8009, 8443, 9000pegasus_http_port_t            tcp      5988pegasus_https_port_t           tcp      5989[root@desktop22 wsgi]#firewall-cmd –add-port=8998/tcp –permanent     #防火墙通过端口6、配置web服务。在desktopX上扩展您的web服务器,为站点http://www.joinlabs.com创建一个虚拟主机,然后执行以下步骤- 请自行配置DNS解析- 设置 DocumentRoot为/var/www/joinlabs- 网页内容为www.joinlabs.com- 通过本机用户alex与harry,即使配上用户密码也不能登录本机系统,但是可以访问此网页,要求访问此网站时需要用户密码,密码为:redhat- 只有192.168.0.0/24这个网段可以访问。- 在你的desktop系统上有一个除root用户以外的管理员alex,alex用户能对添加或删除访问web站点的用户。- alex用户不能重启httpd服务。#这里需要多个DNS服务器,一台服务器不能做多个二级域名的解析[root@desktop22 joinlabs]# head .htaccessAuthType BasicAuthName “Welcome to linhut”AuthUserFile /etc/httpd/.htpasswdRequire valid-user harry alex[root@desktop22 joinlabs]# useradd -s /sbin/nologin harry[root@desktop22 joinlabs]# useradd alex[root@desktop22 joinlabs]# htpasswd -cm /etc/httpd/.htpasswd harryNew password:Re-type new password:Adding password for user harry[root@desktop22 joinlabs]# htpasswd -m /etc/httpd/.htpasswd alex#这里的c是创建m是加密方式[root@desktop22 joinlabs]# setfacl -m u:alex:rw .htaccess[root@desktop22 joinlabs]# setfacl -m u:alex:rw /etc/httpd/.htpasswd[root@desktop22 joinlabs]# vim /etc/sudoersalex    ALL=(ALL)       NOPASSWD:/usr/sbin/useradd[root@desktop22 joinlabs]# tail /home/alex/.bash_profile -n1alias useradd=“sudo useradd”![](http://139.199.161.77/linhut/Apache+DNS_files/Image [3].png)7、配置squid代理服务器,要求只有192.168.0.0/24这个网段的主机才能访问所有web站点。注意:防[root@desktop22 joinlabs]# yum install squid -y[root@desktop22 joinlabs]# vim /etc/squid/squid.confacl Lin src 192.168.0.0/24http_access allow Lin[root@desktop22 joinlabs]# firewall-cmd –add-port=3128/tcp –permanent[root@desktop22 joinlabs]# firewall-cmd –list-allpublic (default, active)  interfaces: eno16777736  sources:  services: dhcpv6-client http https ssh  ports: 8998/tcp 3128/tcp  masquerade: no  forward-ports:  icmp-blocks:  rich rules:关键vhost.conf 虚拟主机配置文件#单独个ip做了一个虚拟主机指向<VirtualHost *:80>    DocumentRoot “/var/www/html”    ServerName 192.168.0.22#做了一个协议跳转,跳转到https的域名<VirtualHost :80>    DocumentRoot “/var/www/html”    ServerName desktop22.example.com    RewriteEngine on    RewriteRule ^(.)$ https://desktop22.example.com     #做的SSL的加密证书,并限制172.24ip段不能通过<VirtualHost *:443>    DocumentRoot “/var/www/html”    ServerName desktop22.example.com    SSLEngine on    SSLCertificateFile /etc/pki/tls/certs/joinlabs.crt               SSLCertificateKeyFile /etc/pki/tls/certs/joinlabs.key    <Directory /var/www/html>                                        Require all granted                        Require not ip 172.24.0.0/24                            alias /secret /var/www/html/secret    <Directory /var/www/html/secret>        require host .example.com        require all denied    #做了一个域名跳转,www.redhat.com跳转到www22.example.com<VirtualHost :80>    DocumentRoot “/var/www/virtual”    ServerName www.example.com    RewriteEngine on    RewriteCond %{http_host} ^www.redhat.com    RewriteRule ^(.)$ http://www22.example.com#做了一个特殊端口的虚拟主机访问指向,并且做了域名访问限制<VirtualHost *:8998>    DocumentRoot “/var/www/wsgi”    ServerName webapp22.example.com    wsgiscriptalias / /var/www/wsgi/webapp.wsgi     <Directory /var/www/wsgi>                require host .example.com                require all denied        #开启了端口8998Listen 8998#新建一个虚拟主机并限制可访问ip段<VirtualHost *:80>    DocumentRoot “/var/www/joinlabs”    ServerName www.joinlabs.com    <Directory “/var/www/joinlabs”>AllowOverride all     #开启之后可以在网站跟目录写一个.htaccess的访问控制文件         Require all denied    Require ip 192.168.0.0/24    DNS配置文件:vim /etc/named.rfc1912.zoneszone “example.com” IN {        type master;        file “example.com.zone”;        allow-update { none; };};zone “0.168.192.in-addr.arpa” IN {        type master;        file “0.168.192.zone”;        allow-update { none; };};vim /var/named/example.com.zone$TTL 1D@       IN SOA  desktop22.example.com. root.example.com. (                                        0       ; serial                                        1D      ; refresh                                        1H      ; retry                                        1W      ; expire                                        3H )    ; minimum        NS      desktop22.example.com.desktop22       A       192.168.0.22www             A       192.168.0.22www22           A       192.168.0.22webapp22        A       192.168.0.22vim /var/named/0.168.192.zone$TTL 1D@       IN SOA  desktop22.example.com. root.example.com. (                                        0       ; serial                                        1D      ; refresh                                        1H      ; retry                                        1W      ; expire                                        3H )    ; minimum        NS      desktop22.example.com.2       PTR     desktop22.example.com.3       PTR     www22.example.com.4       PTR     www.example.com.5       PTR     webapp22.example.com.

视频分享

链接: https://pan.baidu.com/s/1c2TtIQO 密码: e3jz