Dns及Httpd

1、简述DNS服务,并搭建DNS服务器,实现主从,子域授权

DNS Domain Name Service, 应用层协议,是一个C/S架构模型,在红帽系上实现这一协议的应用是BIND : Berkeley Internet Name Domain。Client:发起应用请求的程序,Server:响应请求(提供服务)的程序。

Sockets:服务器进程向系统内核申请注册套接字并监听端口。53/udp, 53/tcp。udp用作dns解析查询之用,TCP是为主从DNS区域传送之用。

DNS查询类型:递归查询,迭代查询。

DNS名称解析方式:名称 --> IP:正向解析    IP --> 名称:反向解析。

DNS服务器类型:负责解析至少一个域和不负责解析

负责解析至少一个域:主名称服务器,辅助名称服务器。

不负责解析:缓存名称服务器。

程序包组成:

named:bind程序的运行的进程名

bind-libs:被bind和bind-utils包中的程序共同用到的库文件;

bind-utils:bind客户端程序集,例如dig, host, nslookup等;

bind:提供的dns server程序、以及几个常用的测试程序;

bind-chroot:选装,让named运行于jail模式下;

一次完整的查询请求经过的流程:

主机端Client --> 查询自身hosts文件 --> 查询自身DNS Local Cache --> 客户端配置的首选DNS  Server (recursion递归) -->自己负责解析的域:直接查询数据库并返回答案,不是自己负责解析域:Server Cache --> iteration(迭代)

搭建DNS服务器,实现主从

在各主机上安装程序yum install bind 

主配置文件:/etc/named.conf

其它文件;

/etc/named.iscdlv.key

/etc/named.rfc1912.zones

/etc/named.root.key

解析库文件:/var/named/目录下;一般名字为:ZONE_NAME.zone

修改主DNS服务器上的DNS主配置文件/etc/named.conf

options {       

listen-on port 53 { any; }; 监听端口

directory      "/var/named"; 数据库文件的目录位置       

allow-query    { any; }; 允许哪所有主机请求查询       

recursion yes;  递归        

 zone "." IN {

    type hint;

    file "named.ca";  根区域解析库文件

 };

zone  "abc.com" IN {

    type master;

    file "abc.com";

    allow-transfer{192.168.2.177;} ;

} ;

修改从DNS服务器上的DNS主配置文件/etc/named.conf

 zone  "abc.com" IN {

    type slave;

    file "slaves/abc.com";

    masters{192.168.2.176;} ;

} ;

创建主DNS服务器的域名的解析库文件,从DNS服务器不需要定义。

文件为:/var/named/abc.com.zone

$TTL 3600

$ORIGIN magedu.com.

@            IN              SOA             ns1.abc.com.             admin.abcc.com. (

            201909999 ; serial

            1H    ; refresh

            10M    ; retry

            3D    ; expire

            1D     ; negative answer ttl

)    

IN              NS              ns1

ns1             IN              A              172.16.2.167

www           IN              A              172.16.2.167

web            IN          CNAME          www 

权限及属组修改: # chgrp named /var/named/abc.com.zone

                              # chmod o= /var/named/abc.com.zone

重启主DNS服务器和从DNS服务器上的named服务

子域授权

在主域名服务器上的正向解析文件定义子域:子域还需要有对应的子域的解析库文件,这样才能对子域进行解析。

ops.abc.com. IN NS  ns1.abc.magedu.com.

ns1.ops.magedu.com. IN A 192.168.2.178

定义转发:

注意:被转发的服务器必须允许为当前服务做递归;

(1) 区域转发:仅转发对某特定区域的解析请求;

zone  "ZONE_NAME"  IN {

type  forward;

forward  {first|only};

forwarders  { SERVER_IP; };

};

first:首先转发;转发器不响应时,自行去迭代查询;

only:只转发;

(2) 全局转发:针对凡本地没有通过zone定义的区域查询请求,通通转给某转发器;

options {

... ...

forward  {only|first};

forwarders  { SERVER_IP; };

.. ...

};

2、简述HTTP服务,并实现基于用户的访问控制,虚拟主机,https

HTTP协议为应用层协议 hyper text transfer protocol, 是一个C/S架构模型,管理员以root身份发起内核请求创建套接字文件并监听特权80端口。然后按不同模式生成子进程相应用户请求(prefork、worker、event)传输明文名本格式,早期http/1.0前不支持其他格式。1.0版本开始引入MIME:Multipurpose Internet Mail Extesion丰富了网页呈现方式。客户端请求资源的方法有method:GET, POST, HEAD,PUT, DELETE,TRACE, OPTIONS等。

工作模式:http请求报文:http request  http响应报文: http response

一次http事务:请求<-->响应

一次完整的http请求处理过程:

(1) 建立或处理连接:接收请求或拒绝请求;

(2) 接收请求:接收来自于网络上的主机请求报文中对某特定资源的一次请求的过程;

(3) 处理请求:对请求报文进行解析,获取客户端请求的资源及请求方法等相关信息;

(4) 访问资源:获取请求报文中请求的资源;

(5) 构建响应报文:

(6) 发送响应报文:

(7) 记录日志:

实现基于用户的访问控制

创建编辑/etc/httpd/conf.d/admin.conf配置文件,不影响主配置文件

<Directory "/var/www/html/admin">

Options None

AllowOverride None

AuthType basic

AuthName "Admin Area."

AuthUserFile "/etc/httpd/conf.d/.htpasswd"

AuthGroupFile "/etc/httpd/conf.d/.htgroup"

Require group animals

</Directory>

创建用户和组实现验证

htpasswd 创建密码文件保存至 /etc/httpd/conf.d/.htpasswd

vim /etc/httpd/conf.d/.htgroup  

j添加一下这行内容

animals:tom jerry

实现虚拟主机:

NameVirtualHost 192.168.2.176:80     apache2.2需要写这行配置并注释ServerName DocumentRoot。

<VirtualHost :80>

ServerName www.a.com

DocumentRoot "/www/a.com/htdocs"

</VirtualHost>

<VirtualHost :80>

ServerName www.b.net

DocumentRoot "/www/b.net/htdocs"

</VirtualHost>

实现https:

SSL会话的简化过程

(1) 客户端发送可供选择的加密方式,并向服务器请求证书;

(2) 服务器端发送证书以及选定的加密方式给客户端;

(3) 客户端取得证书并进行证书验正:

如果信任给其发证书的CA:

(a) 验正证书来源的合法性;用CA的公钥解密证书上数字签名;

(b) 验正证书的内容的合法性:完整性验正

(c) 检查证书的有效期限;

(d) 检查证书是否被吊销;

(e) 证书中拥有者的名字,与访问的目标主机要一致;

(4) 客户端生成临时会话密钥(对称密钥),并使用服务器端的公钥加密此数据发送给服务器,完成密钥交换;

(5) 服务用此密钥加密用户请求的资源,响应给客户端;

注意:SSL会话是基于IP地址创建;所以单IP的主机上,仅可以使用一个https虚拟主机;

配置httpd支持https:

(1) 为服务器申请数字证书;

测试:通过私建CA发证书并自签证书

(a) 创建私有CA

# cd /etc/pki/CA

# (umask 077; openssl genrsa -out /etc/pki/CA/private/cakey.pem 2048)

# openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -out /etc/pki/CA/cacert.pem -days 365

为CA提供所需的目录及文件;

~]# mkdir  -pv  /etc/pki/CA/{certs,crl,newcerts}

~]# touch  /etc/pki/CA/{serial,index.txt}

~]# echo  01 > /etc/pki/CA/serial

(b) 在服务器创建证书签署请求

(1) 用到证书的主机生成私钥;

~]# mkdir  /etc/httpd/ssl

~]# cd  /etc/httpd/ssl

~]# (umask  077; openssl  genrsa -out  /etc/httpd/ssl/httpd.key  2048)

(2) 生成证书签署请求

~]# openssl  req  -new  -key  /etc/httpd/ssl/httpd.key  -out /etc/httpd/ssl/httpd.csr  -days  365

(3) 将请求通过可靠方式发送给CA主机;

(c) CA签证

在CA主机上签署证书;

~]# openssl ca  -in  /tmp/httpd.csr  -out  /etc/pki/CA/certs/httpd.crt  -days  365

然后拷贝至httpd主机

查看证书中的信息:

~]# openssl  x509  -in /etc/pki/CA/certs/httpd.crt  -noout  -serial  -subject

(2) 配置httpd支持使用ssl,及使用的证书;

# yum -y install mod_ssl

配置文件:/etc/httpd/conf.d/ssl.conf

DocumentRoot  "/var/www/html"

ServerName    www.abc.com:443

SSLCertificateFile      /etc/httpd/ssl/httpd.crt

SSLCertificateKeyFile   /etc/httpd/ssl/httpd.key

重启服务

最后在游览器导入CA证书 cacert.pem

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 195,980评论 5 462
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 82,422评论 2 373
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 143,130评论 0 325
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,553评论 1 267
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,408评论 5 358
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,326评论 1 273
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,720评论 3 386
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,373评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,678评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,722评论 2 312
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,486评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,335评论 3 313
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,738评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,009评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,283评论 1 251
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,692评论 2 342
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,893评论 2 335

推荐阅读更多精彩内容

  • 1. 概述 在网络环境中一般用户只需要在浏览器中输入url如www.sunny.com就可以到对应服务器获取相应的...
    ghbsunny阅读 2,838评论 0 7
  • DNS DNS:Domain Name Service 应用层协议(C/S,53/udp, 53/tcp) 域名 ...
    毛利卷卷发阅读 6,794评论 0 6
  • 一、实现从根,com,rj.com 模拟互联网的DNS架构 DNS(Domain Name System,域名系统...
    ssjinyao阅读 1,405评论 0 7
  • 一、BIND是什么 BIND是互联网应用最为广泛的DNS软件。 二、BIND的安装与使用 以下内容转自 http:...
    0_0啊阅读 3,036评论 0 0
  • DNS服务器的基础应用及主从同步域名系统(英文:Domain Name System,缩写:DNS)是因特网的一项...
    linuxlove阅读 473评论 0 0