HRCE实验

1.实验要求

配置一个基于nginx的web服务器要求如下:

1、该web服务器使用主机名www.example.com来访问

2、该主机名由本地提供的DNS服务进行解析,并且提供反向解析

3、该DNS服务器应该还有一个从服务器

4、该web服务器访问应使用端口9093

5、该web服务器的内容页面应存放在/u01/www/目录下

6、该web服务器需要从Windows主机直接访问 9093 防火墙放行

7、系统上的防火墙和SELinux服务必须正常运行

8、该web服务器在系统重启后,依然可以正常访问。

2.实验过程

yum install -y bind bind-utils nginx policycoreutils-python-utils

systemctl start firewalld && systemctl enable firewalld

setenforce 1

getenforce

vim /etc/named.conf

options {

listen-on port 53 { 127.0.0.1; 192.168.1.100; }; # 监听主服务器IP

listen-on-v6 port 53 { ::1; };

directory "/var/named";

dump-file "/var/named/data/cache_dump.db";

statistics-file "/var/named/data/named_stats.txt";

memstatistics-file "/var/named/data/named_mem_stats.txt";

allow-query { localhost; 192.168.1.0/24; }; # 允许内网客户端查询

recursion yes; # 内网场景允许递归查询

dnssec-enable yes;

dnssec-validation yes;

bindkeys-file "/etc/named.root.key";

managed-keys-directory "/var/named/dynamic";

pid-file "/run/named/named.pid";

session-keyfile "/run/named/session.key";

};

logging {

channel default_debug {

file "data/named.run";

severity dynamic;

};

};

正向解析:www.example.com → 192.168.1.100(需求1、2)

zone "example.com" IN {

type master; # 主DNS服务器(需求3)

file "example.com.zone"; # 正向解析文件

allow-transfer { 192.168.1.101; }; # 允许从服务器同步

};

反向解析:192.168.1.100 → www.example.com(需求2)

zone "1.168.192.in-addr.arpa" IN {

type master;

file "192.168.1.rev.zone"; # 反向解析文件

allow-transfer { 192.168.1.101; };

};

include "/etc/named.rfc1912.zones";

include "/etc/named.root.key";

vim /var/named/example.com.zone

$TTL 86400

@ IN SOA www.example.com. admin.example.com. (

2026012601 ; 序列号

3600 ; 刷新时间(从服务器同步间隔)

1800 ; 重试时间

604800 ; 过期时间

86400 ; 最小TTL

)

@ IN NS www.example.com. # 主DNS服务器

www IN A 192.168.1.100 ; 正向解析核心记录

vim /var/named/192.168.1.rev.zone

$TTL 86400

@ IN SOA www.example.com. admin.example.com. (

2026012601

3600

1800

604800

86400

)

@ IN NS www.example.com.

100 IN PTR www.example.com. # 反向解析核心记录(192.168.1.100 → www.example.com

chown named:named /var/named/example.com.zone chown named:named /var/named/192.168.1.rev.zone chmod 640 /var/named/example.com.zone chmod 640 /var/named/192.168.1.rev.zone

systemctl enable --now named

systemctl status named

vim /etc/named.conf

options {

listen-on port 53 { 127.0.0.1; 192.168.1.101; };

allow-query { localhost; 192.168.1.0/24; };

recursion yes;

};

正向解析(从服务器)

zone "example.com" IN {

type slave; # 从DNS服务器(需求3)

file "slaves/example.com.zone"; # 同步文件存放路径

masters { 192.168.1.100; }; # 指向主DNS服务器

};

反向解析(从服务器)

zone "1.168.192.in-addr.arpa" IN {

type slave;

file "slaves/192.168.1.rev.zone";

masters { 192.168.1.100; };

};

systemctl enable --now named

ls /var/named/slaves/

mkdir -p /u01/www

echo "<h1>Welcome to www.example.com:9093</h1>" > /u01/www/index.html

chown -R nginx:nginx /u01/www

chmod -R 755 /u01/www

vim /etc/nginx/conf.d/example.conf

server {

listen 9093; # 监听9093端口(需求4)

server_name www.example.com; # 绑定主机名(需求1)

root /u01/www; # 网页根目录(需求5)

index index.html index.htm;

日志配置(可选)

access_log /var/log/nginx/example_access.log;

error_log /var/log/nginx/example_error.log;

location / {

try_files uri uri/ =404;

}

}

nginx -t

systemctl enable --now nginx

semanage fcontext -a -t httpd_sys_content_t "/u01/www(/.*)?"

restorecon -Rv /u01/www

semanage port -a -t http_port_t -p tcp 9093

getenforce

firewall-cmd --permanent --add-port=53/tcp

firewall-cmd --permanent --add-port=53/udp

firewall-cmd --permanent --add-port=9093/tcp

firewall-cmd --permanent --add-port=22/tcp

firewall-cmd --reload

firewall-cmd --list-ports

systemctl enable named nginx firewalld

systemctl list-unit-files | grep -E "named|nginx|firewalld"

nslookup www.example.com

nslookup 192.168.1.100

reboot

systemctl status named nginx firewalld

3.实验结果

相关推荐
Fcy64833 分钟前
Linux下 进程(一)(冯诺依曼体系、操作系统、进程基本概念与基本操作)
linux·运维·服务器·进程
袁袁袁袁满35 分钟前
Linux怎么查看最新下载的文件
linux·运维·服务器
代码游侠1 小时前
学习笔记——设备树基础
linux·运维·开发语言·单片机·算法
Harvey9031 小时前
通过 Helm 部署 Nginx 应用的完整标准化步骤
linux·运维·nginx·k8s
珠海西格电力科技2 小时前
微电网能量平衡理论的实现条件在不同场景下有哪些差异?
运维·服务器·网络·人工智能·云计算·智慧城市
释怀不想释怀2 小时前
Linux环境变量
linux·运维·服务器
zzzsde3 小时前
【Linux】进程(4):进程优先级&&调度队列
linux·运维·服务器
聆风吟º4 小时前
CANN开源项目实战指南:使用oam-tools构建自动化故障诊断与运维可观测性体系
运维·开源·自动化·cann
NPE~4 小时前
自动化工具Drissonpage 保姆级教程(含xpath语法)
运维·后端·爬虫·自动化·网络爬虫·xpath·浏览器自动化
神梦流4 小时前
GE 引擎的内存优化终局:静态生命周期分析指导下的内存分配与复用策略
linux·运维·服务器