1、安装samba软件
(1)关闭防火墙与selinux
[root@samba ~]# systemctl stop firewalld
[root@samba ~]# setenforce 0
[root@samba ~]# systemctl disable firewalld
[root@samba ~]# vim /etc/selinux/config
(2)配置网络
[root@samba ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO=none //修改为none
IPADDR=10.0.0.15
NETMASK=255.0.0.0
GATEWAY=10.0.0.2
DNS1=8.8.8.8
DNS2=114.144.114.114
# 修改uuid的目的是为了保证网络服务的唯一性
[root@samba ~]# systemctl restart network //重启网络服务
[root@samba ~]# ping www.baidu.com //测试网络配置
PING www.a.shifen.com (180.101.50.242) 56(84) bytes of data.
64 bytes from 180.101.50.242 (180.101.50.242): icmp_seq=1 ttl=128 time=29.6 ms
64 bytes from 180.101.50.242 (180.101.50.242): icmp_seq=2 ttl=128 time=26.4 ms
64 bytes from 180.101.50.242 (180.101.50.242): icmp_seq=4 ttl=128 time=32.8 ms
^C
--- www.a.shifen.com ping statistics ---
4 packets transmitted, 3 received, 25% packet loss, time 3003ms
rtt min/avg/max/mdev = 26.458/29.653/32.852/2.614 ms
(3)创建自建库,安装samba
[root@samba ~]# yum -y install --downloadonly --downloaddir=./soft/ samba //下载samba安装
包
创建仓库文件
[root@samba ~]# yum -y install createrepo //安装createrepo
[root@samba ~]# createrepo ./soft/ //调用createrepo指令创建仓库文件
[root@samba ~]# vim /etc/yum.repos.d/samba.repo //创建repo文件
[samba]
name=samba
baseurl=file:///root/soft/
gpgcheck=0
enable=1
[root@samba ~]# yum clean all //建立缓存
[root@samba ~]# yum makecache
[root@samba ~]# yum -y install samba //安装samba
[root@samba ~]# yum liat install | grep samba //检查是否安装以及安装的文件
[root@samba ~]# rpm -qa | grep samba
[root@samba ~]# rpm -ql samba
2、配置samba服务器
(1)创建共享目录
[root@samba ~]# mkdir /share
(2)配置文件
[root@samba ~]# vim /etc/samba/smb.conf (添加以下内容)
[smb_share]
comment = smb share server
path = /share/
guest ok = no
writable = yes
(3)创建账号密码
[root@samba ~]# useradd user01
[root@samba ~]# smbpasswd -a user01
New SMB password:123
Retype new SMB password:123
Added user user01.
(4)启动服务nmb smb
[root@samba ~]# systemctl start nmb.service
[root@samba ~]# systemctl start smb.service
3、使用windows samba客户端访问samba服务器
(1)搜索“启动或关闭windows功能”,勾选SMB功能
(2)点击“映射网络驱动器”
(3)输入文件夹位置,点击“完成”
(4)输入用户名与密码
(5)发现无权限执行写操作
6)赋予用户user01拥有读写执行操作
[root@samba ~]# setfacl -m u:user01:rwx /share
(7)可以创建文件与目录并实时同步
4、使用linux samba客户端访问samba服务器
(1)下载samba-client软件
[root@sambaclient ~]# yum -y install samba-client
(2)访问samba服务器
[root@sambaclient ~]# smbclient -L 10.0.0.15 -U user01
[root@sambaclient ~]# smbclient //10.0.0.15/smb_share -U user01
5、挂载cifs(smb)
(1)下载cifs-utils软件
[root@sambaclient ~]# yum -y install cifs-utils
(2)创建挂载目录并进行挂载
[root@sambaclient ~]# mkdir /root/samba
[root@sambaclient ~]# mount.cifs -o user=user01,pass=123 //10.0.0.15/smb_share /root/samba
(3)查看挂载内容并创建一个文件
[root@sambaclient ~]# ls samba/
windows 哈哈.txt
[root@sambaclient ~]# touch samba/windows/xixi.txt
[root@samba ~]# ls /share/windows/
xixi.txt
6、为什么要安装配置DNS服务器
(1)我们已经可以通过ip地址访问web主机上发布的web服务
(2)http://10.0.0.30访问其他主机上发布的80端口的服务
(3)我们觉得ip本身无意义,我们需要有一个有语义的符号去标识ip,方便记忆和使用
(4)dns出现了
(5)当客户端要访问其他主机提供的服务,首先获取该主机的域名,然后将这个域名交给dns服务器解析为ip,然后拿到dns服务器返回的ip,根据ip访问目标主机
(6)最终访问主机,我们使用唯一标识,就是ip地址
(7)多了一个第三方,的确是降低了效率,但是让网络环境更加的人性化,也让开发者更加模块化的开发网络环境,因为域名是有语义的。
要求:
下午建立dns服务器,解析内网域名,能够访问内网web应用
7、DNS的作用
DNS(Domain Name System,域名系统)的主要作用是将易于人类理解和记忆的域名转换为计算机能够理解和处理的 IP 地址。
以下是 DNS 作用的具体体现:
实现域名到 IP 地址的解析:当用户在浏览器中输入一个域名(如 www.example.com)时,DNS 会将其转换为对应的 IP 地址(如 192.168.0.1),以便计算机能够找到并连接到正确的服务器来获取所需的网页或服务。 例如,您想访问淘宝网站,输入的是“taobao.com”这个域名,DNS 就会将其解析为对应的 IP 地址,让您的设备能够与淘宝的服务器建立连接。
提高网络访问的效率:通过缓存已经解析过的域名和 IP 地址的对应关系,当再次访问相同的域名时,可以直接从缓存中获取 IP 地址,减少了解析的时间和网络开销。
分布式的架构保证可靠性:DNS 系统采用分布式的架构,避免了单点故障。即使某个 DNS 服务器出现问题,其他服务器仍可以提供服务。
支持域名的层次结构:使得域名的管理和分配更加灵活和易于扩展。
总之,DNS 在互联网中起着至关重要的作用,它使得用户能够方便地通过域名访问各种网络资源,而无需记住复杂的 IP 地址。
8、DNS的结构
从右向左解析 在整个DNS系统的最上方一点是.,这个dns服务器称为root,也叫根域, 共有13个根域,一个为主根域服务器在美国,其余12个为辅根域,美国9 个,欧洲2个英国和瑞典,亚洲一个,位于日本。
一级域名 国家域名 顶级域名
com edu gov org cc io cn uk us ru ja ko
com 商业公司 net 互联网公司 edu 教育,学校
gov 政 府 部 门 io 存储设备
cn|uk|us|hk|t w 国 家 域
二 级 域 名 自 己 购 买 域 名
qq.com baidu.com
购 买 域 名 的 机 构
新 网 万 网 ( 阿 里 云 )
9、创建dns测试环境
1、web.li 10.0.0.10 发布并且管理web服务
2、dns.li 10.0.0.11 提供dns域名解析服务
3、lib.li 10.0.0.12 模拟客户端主机
(1)修改hostname
(2)关闭firewalld和selinux
(3)设置静态ip地址
web服务器:
[root@dns ~]# hostnamectl set-hostname web.li
[root@dns ~]# hostname
web.li
[root@dns ~]# systemctl stop firewalld
[root@dns ~]# systemctl disable firewalld
[root@dns ~]# setenforce 0
[root@dns ~]# vim /etc/selinux/config
SELINUX=disabled
[root@dns ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO=none
IPADDR=10.0.0.10
NETMASK=255.255.255.0
GATEWAY=10.0.0.2
DNS1=8.8.8.8
DNS2=114.114.114.114
dns服务器:
[root@dns ~]# hostnamectl set-hostname dns.li
[root@dns ~]# hostname
dns.li
[root@dns ~]# systemctl stop firewalld
[root@dns ~]# systemctl disable firewalld
[root@dns ~]# setenforce 0
[root@dns ~]# vim /etc/selinux/config
SELINUX=disabled
[root@dns ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO=none
IPADDR=10.0.0.11
NETMASK=255.255.255.0
GATEWAY=10.0.0.2
DNS1=8.8.8.8
DNS2=114.114.114.114
lib客户端:
[root@dns ~]# hostnamectl set-hostname lib.li
[root@dns ~]# hostname
lib.li
[root@dns ~]# systemctl stop firewalld
[root@dns ~]# systemctl disable firewalld
[root@dns ~]# setenforce 0
[root@dns ~]# vim /etc/selinux/config
SELINUX=disabled
[root@dns ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO=none
IPADDR=10.0.0.12
NETMASK=255.255.255.0
GATEWAY=10.0.0.2
DNS1=8.8.8.8
DNS2=114.114.114.114
10、配置web主机
[root@web ~]# yum -y install nginx //下载nginx软件包
[root@web ~]# rpm -qa | grep nginx //查看nginx安装的所有软件包
[root@web ~]# rpm -ql nginx //查看nginx安装的所有的有关文件
[root@web ~]# echo "i am web server marjor is web static file manager" > /usr/share/nginx/html/index.html //修改html文件
[root@web ~]# nginx //启动服务
11、使用客户端访问web网页(elink)
[root@lib ~]# curl http://10.0.0.10:80
i am web server marjor is web static file manager
[root@lib ~]# yum -y install elinks.x86_64
[root@lib ~]# elinks
12、安装部署DNS服务器
(1)安装bind软件
[root@dns ~]# yum list | grep bind //查询yum仓库所有的有关bind的软件包
[root@dns ~]# yum -y install bind.x86_64 //下载bind软件
[root@dns ~]# rpm -ql bind //获取bind配置文件
/etc/named.conf
/etc/named.rfc1912.zones
(2)备份主要文件
[root@dns ~]# cp /etc/named.conf /etc/named.conf.bak
[root@dns ~]# cp /etc/named.rfc1912.zones /etc/named.rfc1912.zones.bak
(3)修改配置文件
[root@dns ~]# vim /etc/named.conf //修改管理权限 添加两个any 所有主机都可以访问
[root@dns ~]# vim /etc/named.rfc1912.zones //配置域名解析文件(文件末尾添加以下内容)
zone "haha.lijiaqi" IN {
type master;
file "haha.lijiaqi.zone";
allow-update { none; };
};
[root@dns ~]# cp -p /var/named/named.localhost /var/named/haha.lijiaqi.zone //注意将权限全部复制
[root@dns ~]# vim /var/named/haha.lijiaqi.zone //在最后一行按o加入即可
www A 10.0.0.10
[root@dns ~]# named-checkconf /etc/named.conf //检查配置文件
[root@dns ~]# named-checkconf /etc/named.rfc1912.zones
[root@dns ~]# cd /var/named/
[root@dns named]# named-checkzone haha.lijiaqi.zone haha.lijiaqi.zone
zone haha.lijiaqi.zone/IN: loaded serial 0
OK
[root@dns named]# systemctl restart named //重启named服务
(4)客户端测试
[root@lib ~]# echo "nameserver 10.0.0.11" > /etc/resolv.conf
[root@lib ~]# ping www.haha
PING www.haha (10.0.0.10) 56(84) bytes of data.
64 bytes from 10.0.0.10 (10.0.0.10): icmp_seq=1 ttl=64 time=0.564 ms
64 bytes from 10.0.0.10 (10.0.0.10): icmp_seq=2 ttl=64 time=0.365 ms
^C
--- www.haha ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1001ms
rtt min/avg/max/mdev = 0.365/0.464/0.564/0.101 ms
[root@lib ~]# elinks
13、DNS工作原理与dig工具
DNS域名解析都是udp/53,主从之间的数据传输默认使用tcp/53
查询方式
1.递归查询,逐级查询,一次到位,但是速度慢
2.迭代查询,多次查询一个地址,可以缓存
一次递归,多次迭代
dig解析域名
[root@localhost ~]# dig www.baidu.com
; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.16 <<>> www.baidu.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 36090
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;www.baidu.com. IN A
;; ANSWER SECTION:
www.baidu.com. 5 IN CNAME www.a.shifen.com. www.a.shifen.com. 5 IN A 180.101.50.188 www.a.shifen.com. 5 IN A 180.101.50.242反向解析
;; Query time: 78 msec
;; SERVER: 192.168.83.2#53(192.168.83.2)
;; WHEN: 一 7月 22 23:11:22 CST 2024
;; MSG SIZE rcvd: 90
反向解析
[root@localhost ~]# dig -x 180.101.50.188
; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.16 <<>> -x
180.101.50.188
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 6416
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0,
ADDITIONAL: 0
;; QUESTION SECTION:
;188.50.101.180.in-addr.arpa. IN PTR
;; Query time: 73 msec
;; SERVER: 192.168.83.2#53(192.168.83.2)
;; WHEN: 一 7月 22 23:16:32 CST 2024
;; MSG SIZE rcvd: 45