网络Yum仓库介绍、自定义Yum仓库、Yum仓库更新、邮件的收发、DNS服务介绍、构建DNS服务、递归解析、迭代解析、NTP时间同步
•将自己下载的RPM包,构建为Yum仓库•完整Yum仓库:1.众多的软件包 2.仓库数据文件(仓库清单)•第一阶段 tools.tar.gz真机传递数据到虚拟机虚拟机A虚拟机A[root@server ~]# createrepo /tools/other #生成仓库数据文件……此处省略一万字[myrpm] #唯一标识baseurl=file:///tools/other #指定Yum仓库的路径g
目录
1 大鹏一日同风起,扶摇直上九万里
2 环境准备
所有虚拟机设置SELinux运行模式
[root@server ~]# getenforce
Enforcing
[root@server ~]# setenforce 0 #当前设置
[root@server ~]# getenforce
Permissive
[root@server ~]# vim /etc/selinux/config
SELINUX=permissive
所有虚拟机设置防火墙(停止防火墙服务)
[root@server ~]# yum -y remove firewalld
[root@server ~]# rpm -q firewalld
3 本地Yum仓库
不使用任何网络服务,本机直接提供仓库内容,本机直接使用yum工具
yum使用思路:
yum运行----》仓库配置文件----》仓库位置
完整的仓库:1.众多的软件包 2.仓库数据文件(仓库清单)
4 自定义Yum仓库
•将自己下载的RPM包,构建为Yum仓库
•完整Yum仓库:1.众多的软件包 2.仓库数据文件(仓库清单)
•第一阶段 tools.tar.gz
真机传递数据到虚拟机
虚拟机A
[root@server ~]# ls /root
[root@server ~]# tar -tf /root/tools.tar.gz
[root@server ~]# tar -xf /root/tools.tar.gz -C /
[root@server ~]# ls /
[root@server ~]# ls /tools/
[root@server ~]# ls /tools/other/
虚拟机A
[root@server ~]# createrepo /tools/other #生成仓库数据文件
[root@server ~]# ls /tools/other/
[root@server ~]# vim /etc/yum.repos.d/mydvd.repo
……此处省略一万字
[myrpm] #唯一标识
baseurl=file:///tools/other #指定Yum仓库的路径
gpgcheck=0
[root@server ~]# yum repoinfo
[root@server ~]# yum -y install sl #测试软件安装
[root@server ~]# yum -y install cmatrix
5 自定义Yum仓库的更新:更新的顺序不能颠倒
1. 仓库数据文件的更新
2. Yum仓库缓存的更新(每台机器都要进行)
虚拟机A:
[root@server ~]# mv /tools/other/sl-5.02-1.el7.x86_64.rpm /root
[root@server ~]# ls /tools/other/
[root@server ~]# createrepo --update /tools/other #更新仓库数据文件
[root@server ~]# yum makecache #更新缓存数据
[root@server ~]# yum repoinfo
6 网络Yum仓库
•网络Yum仓库:(重点知识)
虚拟机A:提供仓库内容(构建网络服务,提供仓库内容)
虚拟机B:进行访问仓库内容
虚拟机B运行yum--->仓库配置文件--->访问虚拟机A的ftp服务提供仓库内容
虚拟机C运行yum--->仓库配置文件--->访问虚拟机A的ftp服务提供仓库内容
虚拟机A:提供仓库内容(FTP服务)
1.构建FTP服务
[root@server ~]# yum -y install vsftpd
[root@server ~]# vim /etc/vsftpd/vsftpd.conf
anonymous_enable=YES #开启无需密码验证功能
[root@server ~]# systemctl restart vsftpd #重启服务
[root@server ~]# systemctl enable vsftpd #设置开机自启
Created symlink from /etc/systemd/system/multi-user.target.wants/vsftpd.service to /usr/lib/systemd/system/vsftpd.service.
2.通过FTP提供仓库内容
[root@server ~]# cp -r /tools/other /var/ftp/rpms
虚拟机B:进行访问仓库内容
[root@pc2 ~]# vim /etc/yum.repos.d/mydvd.repo
……此处省略一万字
[haha]
baseurl=ftp://192.168.88.240/rpms
gpgcheck=0
[root@pc2 ~]# yum clean all #清空Yum的缓存
[root@pc2 ~]# yum repoinfo
虚拟机A:提供仓库内容(FTP服务)
[root@server ~]# mkdir /var/ftp/dvd
[root@server ~]# mount /dev/cdrom /var/ftp/dvd
[root@server ~]# curl ftp://192.168.88.240/dvd/
[root@server /]# vim /etc/fstab #修改配置
/dev/cdrom /var/ftp/dvd iso9660 defaults 0 0
[root@server /]# umount /var/ftp/dvd
[root@server /]# ls /var/ftp/dvd
[root@server /]# mount -a
mount: /dev/sr0 写保护,将以只读方式挂载
[root@server /]# ls /var/ftp/dvd
........
[root@server /]# vim /etc/yum.repos.d/mydvd.repo
[aa]
baseurl=ftp://192.168.88.240/dvd/AppStream
gpgcheck=0
[bb]
baseurl=ftp://192.168.88.240/dvd/BaseOS
gpgcheck=0
[myrpm]
baseurl=ftp://192.168.88.240/rpms
gpgcheck=0
[root@server ~]# yum clean all #清空Yum的缓存
[root@server ~]# yum repoinfo
虚拟机B:进行访问仓库内容
[root@pc2 ~]# vim /etc/yum.repos.d/mydvd.repo
[aa]
baseurl=ftp://192.168.88.240/dvd/AppStream
gpgcheck=0
[bb]
baseurl=ftp://192.168.88.240/dvd/BaseOS
gpgcheck=0
[myrpm]
baseurl=ftp://192.168.88.240/rpms
gpgcheck=0
[root@pc2 ~]# yum clean all #清空Yum的缓存
[root@pc2 ~]# yum repoinfo
拍摄快照:虚拟机A关闭机器拍摄快照,快照名字为"网络Yum仓库完成"
7 Web服务提供Yum仓库(了解内容)
虚拟机A:提供仓库内容(Web服务)
1.构建Web服务
[root@server ~]# yum -y install httpd
[root@server ~]# systemctl restart httpd
[root@server ~]# systemctl enable httpd
2.通过Web提供仓库内容
[root@server ~]# mkdir /var/www/html/dvd
[root@server ~]# mount /dev/cdrom /var/www/html/dvd
虚拟机B:进行访问仓库内容
[root@pc2 ~]# vim /etc/yum.repos.d/mydvd.repo
[aa]
baseurl=http://192.168.88.240/dvd/AppStream
gpgcheck=0
[bb]
baseurl=http://192.168.88.240/dvd/BaseOS
gpgcheck=0
[root@pc2 ~]# yum repoinfo
虚拟Web主机:
[root@server ~]# vim /etc/httpd/conf.d/nsd01.conf
<VirtualHost *:80>
ServerName www.qq.com
DocumentRoot /var/www/qq
</VirtualHost>
<VirtualHost *:80>
ServerName www.baidu.com
DocumentRoot /var/www/baidu
</VirtualHost>
<Directory "/var/www/qq">
Options Indexes FollowSymLinks #显示目录内容
</Directory>
[root@server ~]# mkdir /var/www/qq /var/www/baidu
[root@server ~]# echo wo shi QQ > /var/www/qq/index.html
[root@server ~]# echo wo shi baidu > /var/www/baidu/index.html
[root@server ~]# systemctl restart httpd
[root@server ~]# mkdir /var/www/qq/dvd
[root@server ~]# mount /dev/cdrom /var/www/qq/dvd
8 DNS服务器构建
DNS服务器的功能
正向解析:根据注册的域名查找其对应的IP地址
DNS服务器分类:
根域名服务器、一级DNS服务器、二级DNS服务器、三级DNS服务器
域名系统: 所有的域名都必须要以点作为结尾,树型结构
www.qq.com www.qq.com.
根域名 : .
一级域名 .cn .us .tw .hk .jp .kr ……….
二级域名: .com.cn .org.cn .net.cn ………
三级域名: haha.com.cn xixi.com.cn .nb.com.cn …..
Full Qualified Domain Name
FQDN(完全合格的域名):站点名+注册的域名
例子: haha.com 首页:www.haha.com
邮件:mail.haha.com
会员:vip.haha.com
•BIND(Berkeley Internet Name Daemon)
–伯克利 Internet 域名服务
–官方站点:https://www.isc.org/
• BIND服务器端程序
–主要执行程序:/usr/sbin/named
–系统服务:named
–DNS协议默认端口:53
–运行时的虚拟根环境:/var/named/chroot
•主配置文件:/etc/named.conf #设置负责解析的域名
•地址库文件:/var/named #完全合格的域名与IP地址对应关系
例如: www.haha.com 192.168.1.1
mail.haha.com 192.168.44.1
dnf.haha.com 192.168.55.2
•修改示例
•主配置文件:/etc/named.conf
options {
listen-on port 53 { any; }; #监听本机所有地址的53端口
listen-on-v6 port 53 { ::1; }; #必须删除,关于IPv6地址
……此处省略一万字
allow-query { any; }; #允许所有客户端进行DNS查询
……此处省略一万字
recursion yes; #支持递归查询
zone "." IN {
type hint;
file "named.ca";
};
zone "tedu.cn" IN {
type master;
file "tedu.cn.zone";
};
……此处省略一万字
include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
•地址库文件: 完整示例
$TTL 1D
@ IN SOA @ rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
tedu.cn. NS server.tedu.cn.
server.tedu.cn. A 192.168.88.240
www.tedu.cn. A 1.1.1.1
ftp.tedu.cn. A 2.2.2.2
虚拟机A:构建DNS服务器
1.安装软件包
[root@server ~]# yum -y install bind bind-chroot
bind(主程序)
bind-chroot(提供牢笼政策)
2.修改主配置文件
[root@server ~]# cp -p /etc/named.conf /root #备份数据
[root@server ~]# ls -l /root/named.conf
[root@server ~]# vim /etc/named.conf #大致浏览内容
[root@server ~]# vim /etc/named.conf
options {
directory "/var/named"; #定义地址库文件存放路径
};
zone "tedu.cn" IN { #定义负责的解析tedu.cn域名
type master; #权威主DNS服务器
file "tedu.cn.zone"; #地址库文件名称
};
3.建立地址库文件
保证named用户对地址库文件有读取权限
如果没有以点作为结尾,那么默认补全本地库文件负责的域名
[root@server ~]# cd /var/named/
[root@server ~]# cp -p named.localhost tedu.cn.zone #保持权限不变
[root@server ~]# ls -l tedu.cn.zone
[root@server ~]# vim tedu.cn.zone
……此处省略一万字
NS server #声明DNS服务器为server
server A 192.168.88.240 #server解析结果为192.168.88.240
www A 1.1.1.1
ftp A 2.2.2.2
[root@server named]# systemctl restart named
虚拟机B:测试DNS服务器
1.指定DNS服务器地址
[root@server ~]# echo nameserver 192.168.88.240 > /etc/resolv.conf
[root@server ~]# cat /etc/resolv.conf
2.命令测试域名解析
[root@server ~]# nslookup www.tedu.cn
[root@server ~]# host ftp.tedu.cn
/etc/hosts文件与/etc/resolv.conf文件
1./etc/hosts文件域名解析最高优先级
2./etc/resolv.conf文件指定DNS服务器地址
9 特殊解析
•DNS的泛域名解析
虚拟机A:
[root@server /]# vim /var/named/tedu.cn.zone
……此处省略一万字
NS server
server A 192.168.88.240
www A 1.1.1.1
ftp A 2.2.2.2
* A 6.6.6.6
tedu.cn. A 7.7.7.7
[root@server /]# systemctl restart named
虚拟机B测试:
[root@pc2 /]# nslookup wwwwww.tedu.cn
[root@pc2 /]# nslookup tedu.cn
•DNS有规律的泛域名解析
stu1.tedu.cn-------->192.168.1.1
stu2.tedu.cn-------->192.168.1.2
stu3.tedu.cn-------->192.168.1.3
stu4.tedu.cn-------->192.168.1.4
.........
stu50.tedu.cn-------->192.168.1.50
内置函数:$GENERATE 制造连续的数字
虚拟机A:
[root@server /]# vim /var/named/tedu.cn.zone
……此处省略一万字
NS server
server A 192.168.88.240
www A 1.1.1.1
$GENERATE 1-50 stu$ A 192.168.1.$
[root@server /]# systemctl restart named
虚拟机B测试:
[root@pc2 /]# nslookup stu1.tedu.cn
[root@pc2 /]# nslookup stu23.tedu.cn
•DNS的解析记录的别名
虚拟机A:
[root@server /]# vim /var/named/tedu.cn.zone
……此处省略一万字
NS server
server A 192.168.88.240
www A 192.168.4.20
ftp A 2.2.2.2
vip CNAME ftp #vip解析结果与ftp解析结果一致
[root@server /]# systemctl restart named
虚拟机B:测试
[root@pc2 ~]# nslookup vip.tedu.cn
DNS服务器资源解析记录的类型:
NS:DNS服务器声明记录
A:正向解析记录
CNAME:解析记录的别名
10 递归查询(递归解析)与迭代查询(迭代解析)
递归查询:客户端发送请求给首选DNS服务器,首选DNS服务器与其他的DNS服务器交流,最终将解析结果带回来过程
迭代查询: 客户端发送请求给首选DNS服务器,首选DNS服务器告知下一个DNS服务器地址
11 邮件服务器
•电子邮件服务器的基本功能
为用户提供电子邮箱存储空间(用户名@邮件域名)
处理用户发出的邮件 —— 传递给收件服务器
处理用户收到的邮件 —— 投递到邮箱
[root@server /]# yum -y install postfix
[root@server /]# rpm -q postfix #提供邮件功能的软件
postfix-2.10.1-9.el7.x86_64
[root@server /]# systemctl status postfix
[root@server /]# useradd yg
[root@server /]# useradd xln
mail 发信操作: mail -s '邮件标题' -r 发件人 收件人
[root@server /]# yum -y install mailx #提供mail命令软件
[root@server /]# mail -s 'test01' -r yg xln
hahaxixiehehelele
. #一行只有一个点表示提交
EOT
mail 收信操作: mail [-u 用户名]
[root@server /]# mail -u xln
>N 1 yg@server.tedu.cn Fri Sep 18 17:24 18/510
& 1 #输入邮件编号
& quit #退出
12 NTP时间服务器
作用:提供标准时间
•Network Time Protocol(网络时间协议)
•它用来同步网络中各个计算机的时间的协议
•210.72.145.39 (国家授时中心服务器IP地址)
•Stratum(分层设计)
•Stratum层的总数限制在15以内(包括15)
虚拟机A:时间服务器
1.安装软件包chrony
[root@server /]# yum -y install chrony
[root@server /]# rpm -q chrony
2.修改配置文件
[root@server /]# vim /etc/chrony.conf
#pool 2.pool.ntp.org iburst #与谁同步时间,iburst表示快速同步
allow all #开头的#去掉,修改为允许所有客户端
local stratum 10 #开头的#去掉,本机为第10层的时间服务器
3.重启时间服务
[root@server /]# systemctl restart chronyd
虚拟机B:客户端
1.安装软件包chrony
[root@pc2 /]# yum -y install chrony
2.修改配置文件
[root@pc2 /]# vim /etc/chrony.conf
server 192.168.88.240 iburst #与192.168.88.240同步时间
3.重启时间服务
[root@pc2 /]# systemctl restart chronyd
虚拟机B:
4.测试:
[root@pc2 /]# date -s "2008-1-1"
[root@pc2 /]# date
[root@pc2 /]# systemctl restart chronyd
[root@pc2 /]# date
[root@pc2 /]# date
13 常见DNS工单要求
DNS服务器搭建要求:
实现DNS服务器,在192.168.88.240上构建
负责域名为sina.com,实现站点名www的解析
实现www.sina.com解析结果为192.188.16.17
虚拟机A
1.安装软件包bind与bind-chroot
2.修改主配置文件
[root@server /]# vim /etc/named.conf
........此处省略一万字
zone "sina.com" IN {
type master;
file "sina.com.zone";
};
3.建立地址库文件
[root@server ~]# cd /var/named/
[root@server ~]# cp -p named.localhost sina.com.zone
[root@server ~]# vim sina.com.zone
........此处省略一万字
NS server
server A 192.168.88.240
www A 192.188.16.17
[root@server /]# systemctl restart named
更多推荐
所有评论(0)