养成日记18
NFS:网络文件系统
所需共享文件主机都是Linux系统,基于TCP/IP协议
#dnf install -y nfs-utils
第一步:配置NFS服务器端防火墙
#iptables -F
#iptalbes-save
#firewall-cmd --permanent --zone=public --add-service=nfs
#firewall-cmd --permanent --zone=public --add-service=rpc-bind
#firewall-cmd --permanetn --zone=public --add-service=mountd
#firewall-cmd --reload
第二步:NFS服务器端建立NFS文件共享目录
#mkdir /nfsfile
#chmod -R 777 /nfsfile
第三步:配置NFS服务器端配置文件/etc/exports
NFS服务配置文件参数:
ro 只读
rw 读写
root_squash 当NFS客户端以root管理员访问时,映射为NFS服务器的匿名用户
no_root_squash 当NFS客户端以root管理员访问时,映射为NFS服务器的root管理员
all_squash 无论NFS客户端使用什么账号访问,均映射为NFS服务器的匿名用户
sync 同时将数据写入到内存与硬盘中,保证数据不丢失
async 优先将数据保存到内存,然后再写入硬盘,效率更高,可能会丢失数据
#vim /etc/exports
/nfsfile 192.168.1.*(rw,sync,root_squash)
第四步:启动和启用NFS服务程序
#systemctl restart rpcbind
#systemctl enable rpcbind
#systemctl restart nfs-server
#systemctl enable nfs-server
第五步:客户端配置
查看NFS服务器共享信息
#showmount -e 192.168.1.10
showmount命令参数:
-e 显示NFS服务器的共享列表
-a 显示本机挂载的文件资源中NFS资源情况
-v 显示版本号
客户端挂载NFS共享文件
#mkdir /nfsfile
#mount -t nfs 192.168.1.10:/nfsfile /nfsfile #重启失效
#df -h
使NFS共享文件一直有效
#vim /etc/fstab
192.168.1.10:/nfsfile /nfsfile nfs default 0 0
autofs:自动挂载服务
autofs服务程序在用户需要使用该文件系统时才会去动态挂载,节约网络资源和服务器硬件资源
#dnf install -y autofs
示例1:挂载光盘镜像
主配置文件
#vim /etc/auto.master
madia /etc/iso.misc
子配置文件
#vim /etc/iso.misc
iso -fstype=iso9660,ro,nosuid,nodev :/dev/cdrom
#systemctl start autofs
#systemctl enable autofs
示例2:挂载NFS共享文件
主配置文件
#vim /etc/auto.master
misc /etc/auto.misc #默认存在
子配置文件
#vim /etc/auto.misc
nfsfile 192.168.1.10:/nfsfile
#systemctl restart autofs
DNS:域名解析服务
使用BIND服务程序提供
DNS服务器分类:
主服务器:在特定区域内具有唯一性,负责维护该区域内的域名与IP地址之间的对应关系
从服务器:从主服务器中获取域名与IP地址之间的对应关系并进行维护,防止主服务器宕机,主服务器宕机并不会替代主服务器
缓存服务器:通过向其他域名解析服务器查询获得域名与IP地址的对应关系,并将经常查询的对应关系保存到服务器本地,提高重复查询时的效率
全球13台根服务器的信息:
A INTERNIC.NET 美国弗吉尼亚州 198.41.0.4
B 美国信息科学研究所 美国加利福尼亚州 128.9.0.107
C PSINet公司 美国弗吉尼亚州 192.33.4.12
D 马里兰大学 美国马里兰州 128.8.10.90
E 美国航空航天管理局 美国加利福尼亚州 192.203.230.10
F 因特网软件联盟 美国加利福尼亚州 192.5.5.241
G 美国国防部网络信息中心 美国弗吉尼亚州 192.112.36.4
H 美国陆军研究所 美国马里兰州 128.63.2.53
I Autonomica公司 瑞典斯德哥尔摩 192.36.148.17
J VerSign公司 美国弗吉尼亚州 192.58.128.30
K RIPE NCC 英国伦敦 193.0.14.129
L IANA 美国弗吉尼亚州 199.7.83.42
M WIDE Project 日本东京 202.12.27.33
安装bind服务程序
BIND:伯克利因特网名称域
#dnf install -y bind-chroot #chroot:牢笼机制扩展包,限制bind服务程序仅能对自身的配置文件进行操作
配置文件:
主配置文件:/etc/named.conf,有效参数30行左右,定义bind服务程序的运行
区域配置文件:/etc/named.rfc1912.zones,保存域名和IP地址对应关系
数据配置文件目录:/var/named,保存域名和IP地址真实对应关系的数据配置文件
#vim /etc/named.conf
11 listen-on port 53 { any; };
19 allow-query { any; };
正向解析:
第一步:编辑区域配置文件
#vim /etc/named.rfc1912.zones
zone "linuxprobe.com" IN {
type master;
file "linuxprobe.com.zone";
allow-update {none;};
};
第二步:编辑数据配置文件
#cd /var/named/
#ls -al named.localhost
#cp -a named.localhost linuxprobe.com.zone
#vim linuxprobe.com.zone
$TTL 1D #生存周期为1天
@ IN SOA linuxprobe.com. root.linuxprobe.com. (
0;serial #更新序列号
1D;refresh #更新时间
1H;retry #重试延时
1W;expire #失效时间
3H);minimum #无效解析记录的缓存时间
NS ns.linuxprobe.com. #域名服务器记录
ns IN A 192.168.1.10 #地址记录(ns.linuxprobe.com)
www IN A 192.168.1.10 #地址记录(www.linuxprobe.com)
#systemctl restart named
#systemctl enable named
域名解析记录类型:
A 将域名指向一个IPv4地址
CNAME 将域名指向另外一个域名
AAAA 将域名指向一个IPv6地址
NS 将子域名指定由其他DNS服务器解析
MX 将域名指向邮件服务器地址
SRV 记录提供特定的服务的服务器
TXT 文本内容一般为512字节,常作为反垃圾邮件的SPF(Sender Policy Framework,发送方策略框架)记录
CAA CA证书颁发机构授权校验
显性URL 将域名重定向到另一个地址
隐性URL 与显性URL类似,但会隐藏真实目标地址
第三步:检验解析结果
#nmcli connection up ens160
#nslookup #nslookup命令用于检测能否从DNS服务器中查询到域名与IP地址的解析记录
反向解析:
第一步:编辑区域配置文件
#vim /etc/named.rfc1912.zones
zone "linuxprobe.com" IN {
type master;
file "linuxprobe.com.zone";
allow-update {none;};
};
zone "1.168.192.in-addr.arpa" IN {
type master;
file "192.168.1.arpa";
allow-update {none;};
};
第二步:编辑数据配置文件
#cd /var/named
#cp -a named.loopback 192.168.1.arpa
#vim 192.168.1.arpa
$TTL 1D #生存周期为1天
@ IN SOA linuxprobe.com. root.linuxprobe.com. (
0;serial #更新序列号
1D;refresh #更新时间
1H;retry #重试延时
1W;expire #失效时间
3H);minimum #无效解析记录的缓存时间
NS ns.linuxprobe.com.
ns A 192.168.1.10
10 PTR ns.linuxprobe.com. #PTR为指针记录,仅用于反向解析
10 PTR www.linuxprobe.com.
20 PTR bbs.linuxprobe.com.
第三步:检验解析结果
#nslookup
部署从服务器
第一步:在主服务器的区域配置文件中允许该从服务器的更新请求,即修改allow-update{允许更新区域信息的主机地址;};参数
#vim /etc/named.rfc1912.zones
zone "linuxprobe.com" IN {
type master;
file "linuxprobe.com.zone";
allow-update { 192.168.1.20; };
};
zone "1.168.192.in-addr.arpa" IN {
type master;
file "192.168.1.arpa";
allow-update { 192.168.1.20; };
};
#systemctl restart named
第二步:在主服务器上配置防火墙放行规则
#iptable -F
#firewall-cmd --permanent --zone=public --add-service=dns
#firewall-cmd --reload
第三步:从服务器上安装bind-chroot软件包
#dnf install -y bind-chroot
#vim /etc/named.conf
11 listen-on port 53 { any; };
19 allow-query { any; };
第四步:在从服务器中配置主服务器的IP地址和要抓取的区域信息
#vim /etc/named.rfc1912.zones
zone "linuxprobe.com" IN {
type slave;
master { 192.168.1.10; };
file "slaves/linuxprobe.com.zone";
};
zone "1.168.192.in-addr.arpa" IN {
type slave;
master { 192.168.1.10; };
file "slaves/192.168.1.arpa";
};
#systemctl restart named
第五步:检验解析结果
#cd /var/named/slaves
#nslookup
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· Vue3状态管理终极指南:Pinia保姆级教程