SAMBA文件共享与DNS域名服务

一、SAMBA文件共享

1、什么是SAMBA

SMB(Server Message Block)协议实现文件共享,也称为CIFS(Common Internet File System )

是Windows和类Unix系统之间共享文件的一种协议

客户端==主要是Windows==;支持多节点同时挂载以及并发写入

主要用于windows和Linux下的文件共享、打印共享

实现==匿名与本地用户==文件共享

2、SAMBA主要进程

smbd进程 控制发布共享目录与权限、==负责文件传输== ==TCP 139 445==

nmbd进程 用于名称解析netbios ==UDP 137 138== ; 基于NETBIOS协议获得计算机名称——>解析为相应IP地址,实现信息通讯

NetBIOS是Network Basic Input/Output System的简称,一般指用于局域网通信的一套API

3、SAMBA环境准备

第一步:从模板机中克隆一台Linux服务器,叫做SAMBA

第二步:更改主机名称与IP地址

# hostnamectl set-hostname samba.itcast.cn
# su
​
# vim /etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO=none
IPADDR=10.1.1.10
NETMASK=255.255.255.0
GATEWAY=10.1.1.2
DNS1=8.8.8.8
DNS2=114.114.114.114
# systemctl restart network
扩展:如果是多张网卡,建议使用ifdown ens33以及ifup ens33实现重启网络操作

第三步:关闭防火墙与SELinux

# systemctl stop firewalld
# systemctl disable firewalld
​
# setenforce 0
# vim /etc/selinux/config
SELINUX=disabled

第四步:配置yum源

# yum clean all
# yum makecache

4、SAMBA软件安装(服务器搭建)

# yum install samba -y
# rpm -qa |grep ^samba

SAMBA也是一个C/S架构的软件,Client主要是Windows

5、了解smb的配置文件

# vim /etc/samba/smb.conf
[global]  全局选项
    workgroup = MYGROUP                 定义samba服务器所在的工作组
    server string = Samba Server Version %v         smb服务的描述
    log file = /var/log/samba/log.%m            日志文件
    max log size = 50                   日志的最大大小KB  
    security = user             认证模式:share匿名|user用户密码|server外部服务器用户密码
    passdb backend = tdbsam         密码格式
    load printers = yes         加载打印机
    cups options = raw          打印机选项
[homes]                 局部选项(共享名称)
    comment = Home Directories      描述
    browseable = no      隐藏共享名称
    writable = yes      可读可写
[printers]      共享名称
    comment = All Printers       描述
    path = /var/spool/samba  本地的共享目录
    browseable = no  隐藏
    guest ok = no ——>   public = no  需要帐号和密码访问
    writable = no  ——>  read only =yes 不可写 
    printable = yes      打印选项
[share]
    path = /dir1
    guest ok = no
    writable = yes

6、SAMBA综合案例

搭建一个SAMBA服务,共享一个目录/samba/share,客户端使用user01/123通过windows或者Linux可以在该目录里创建文件删除文件

第一步:SAMBA服务器环境准备

更改主机名称、IP地址、关闭防火墙、SELinux、配置YUM源

第二步:安装SAMBA软件

# yum install samba -y
# rpm -aq|grep  ^samba

第三步:查询SAMBA生成文件列表(rpm -ql)

# rpm -ql samba
/usr/sbin/smbd
/usr/sbin/nmbd
​
/usr/lib/systemd/system/smb.service
/usr/lib/systemd/system/nmb.service

第四步:在服务器端创建一个共享目录

# mkdir /samba/share -p

第五步:编辑/etc/smb.conf配置文件,实现SAMBA共享

# vim /etc/samba/smb.conf
...
[smb_share]
        comment = samba service
        path = /samba/share
        guest ok = no
        writable = yes
或者
[samba_share]
        path = /samba/share
        public = no
        writable = yes
​
备注:guest ok === public

第六步:创建一个user01用户,然后添加到samba认证中,设置密码为123

# useradd user01
# smbpasswd -a user01
New SMB password:123
Retype new SMB password:123
Added user user01.

以上操作完成后,则SAMBA系统中增加了一个user01的账号以及123的密码

第七步:启动nmb与smb服务

# systemctl start nmb
# systemctl start smb

第八步:基于Windows或Linux实现文件共享

Windows:

① 首先安装SAMBA支持Windows + X,选择控制面板

② 找到Windows功能选项

③ 安装SAMBA功能(客户端)

④ 进入计算机(我的电脑),找到映射网络驱动器

设置SAMBA服务器的地址信息:

10.1.1.10 => Linux服务器的IP地址

smb_share => SAMBA标签

挂载完成后,目录不可写?答:主要原因在于/samba/share目录没有写入权限

# setfacl -m u:user01:rwx /samba/share

第九步:基于Linux或Linux实现文件共享

# smbclient -L 10.1.1.10 -U user01

使用smbclient查看目录信息

# smbclient //10.1.1.10/smb_share -U user01

把SAMBA挂载到Linux系统(类似NFS)

# mkdir /u01
# mount.cifs -o user=user01,pass=123 //10.1.1.10/smb_share /u01

访问控制说明:

控制读写权限
    writable = yes/no
    readonly = yes/no
​
如果资源可写,但只允许某些用户可写,其他都是只读
write list = admin, root, @staff(用户组)
read list = mary, @students
​
控制访问对象
    valid users = tom,mary,@itcast
    invalid users = tom
注意:以上两个选项只能存在其中一个
​
网络访问控制:
hosts deny = 192.168.0.   拒绝某个网段
hosts allow = 192.168.0.254  允许某个IP
hosts deny = all  拒绝所有
hosts allow = 192.168.0. EXCEPT 192.168.0.254  允许某个网段,但拒绝某个单个IP
注意:deny和allow同时存在,allow优先

7、总结

  1. ftp 局域网和外网都可以

  2. nfs 局域网 挂载方式访问 mount.nfs 侧重于Linux与Linux之间

  3. samba 局域网 直接访问(smbclinet)挂载的方式mount.cifs 侧重于Windows与Linux之间

二、DNS域名管理系统

1、任务背景

解析内网域名,能够访问内网web应用。把 www.itcast.cluster 解析到内网服务器IP

2、DNS概述

DNS(domain name system ) 域名管理系统

  • 域名:

由特定的格式组成,用来表示互联网中==某一台计算机或者计算机组的名称==,能够使人更方便的访问互联网,而不用记住能够被机器直接读取的IP地址。

计算机 => IP地址,互联网中的计算机都是通过IP地址进行互相访问的。(IP地址过于复杂)

域名:代替IP实现计算机的访问(高级 => 上层应用,底层还是IP地址)

每个域名 => DNS服务器 => 对应的IP地址

☆ DNS的正向解析

域名的==正向解析==

将主机域名转换为对应的IP 地址,以便网络程序能够通过主机域名访问到对应的服务器主机

域名——>IP A记录

☆ DNS的反向解析

域名的==反向解析==

将主机的IP地址转换为对应的域名,以便网络(服务)程序能够通过IP地址查询到主机的域名

IP——>域名 PTR记录

3、DNS的结构

域名:www.itheima.com
DNS结构:www.itheima.com.  =>  从右向左解析

☆ 根域(.)

  • 在整个 DNS 系统的最上方一定是 . (小数点) 这个 DNS 服务器 (称为 root),也叫”根域“。

  • 根域 (13台 全世界只有13台。1个为主根服务器,放置在美国。其余12个均为辅根服务器,其中9个放置在美国,欧洲2个,位于英国和瑞典,亚洲1个,位于日本。)

☆ 一级域名<顶级域|国家域>

com net edu gov org cc io| cn uk us ru ja ko

.com : 商业公司

.net :互联网公司

.edu :教育(中小学、高中、大学...)

.gov :政府

.io :存储设备,redis

.cn :中国域名(国家域)

二级域名(自己购买管理)

qq.com. baidu.com. google.com.

☆ 域名机构

收费(新网|万网) 老牌免费域名:TK顶级域名、TK域名DNS、TK域名商

4、DNS工作原理

如果询问一次得到结果 递归查询 C-S 如果询问多次得到结果 迭代查询 S-S

一次递归 多次迭代

5、dig工具使用

# dig +trace www.itcast.cn    追踪DNS的解析过程
# dig www.itcast.cn           正向解析
# dig -x IP地址               反向解析

三、DNS服务器的搭建

1、DNS服务器端软件

DNS 的==域名解析==都是 ==udp/53== . 主从之间的==数据传输==默认使用==tcp/53==

DNS服务器端软件:

==Bind==是一款开放源码的DNS服务器软件,Bind由美国加州大学Berkeley(伯克利)分校开发和维护的,全名为Berkeley Internet Name Domain它是目前世界上使用最为广泛的DNS服务器软件,支持各种unix平台和windows平台。BIND现在由互联网系统协会(Internet Systems Consortium)负责开发与维护。

2、DNS服务器搭建

☆ 第一步:环境准备

编号主机名称IP地址备注信息
1client.itcast.cn10.1.1.11client客户端,用于测试
2dns.itcast.cn10.1.1.12dns服务器,用于实现域名解析
3web.itcast.cn10.1.1.13web服务器,用于搭建内部web服务

① 更改主机名称与IP地址

# hostnamectl set-hostname client.itcast.cn
# hostnamectl set-hostname dns.itcast.cn
# hostnamectl set-hostname web.itcast.cn
​
# su
​
# vim /etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO=none
IPADDR=10.1.1.11/10.1.1.12/10.1.1.13
更改UUID编号的后3位,必须是唯一的

② 使用MX进行连接

③ 关闭防火墙与SELinux

# systemctl stop firewalld
# systemctl disable firewalld
​
# setenforce 0
# vim /etc/selinux/config
SELINUX=disabled

④ 配置YUM源(有网配置公网YUM源、无网就配置光盘或自建YUM源)

# yum clean all
# yum makecache

☆ 第二步:安装DNS软件

DNS服务器:

# yum install bind -y

安装完毕后,可以使用rpm -q查询是否安装成功:

# rpm -q bind
​
# rpm -ql bind
# 日志轮转文件
/etc/logrotate.d/named
# 配置文件目录
/etc/named
# 主配置文件
/etc/named.conf
# zone文件,定义域
/etc/named.rfc1912.zones
# 服务管理脚本
/usr/lib/systemd/system/named.service
# 二进制程序文件
/usr/sbin/named
# 检测配置文件
/usr/sbin/named-checkconf
# 检测域文件
/usr/sbin/named-checkzone
# 根域服务器
/var/named/named.ca
# 正向解析区域文件模板
/var/named/named.localhost
# 反向解析区域文件模板
/var/named/named.loopback
# dns服务器下载文件的默认路径
/var/named/slaves
# 进程pid
/var/rum/named

find主要用来搜索计算机中的文件,rpm主要用来检查计算机中是否安装过某个软件

☆ 第三步:DNS正向解析配置(域名=>IP)

/etc/named.conf主要配置访问权限控制(哪些IP或哪些主机可以访问DNS服务器)

/etc/named.rfc1912.zones主要定义域名如何解析(正向解析),解析到具体哪个IP地址

① 对named.conf以及named.rfc1912.zones进行备份

cp /etc/named.conf /etc/named.conf.bak
cp /etc/named.rfc1912.zones /etc/named.rfc1912.zones.bak

② named.conf主配置文件详解(访问权限控制)

# vim /etc/named.conf

添加任何主机都可以访问的权限:

③ zones子配置文件详解(域名应该指向哪个IP地址)

# vim /etc/named.rfc1912.zones
...
zone "itcast.cluster" IN {
        type master;
        file "itcast.cluster.zone";
        allow-update { none; };
};

扩展 => vim => :19,23 co 42,把19-23行,copy到42行的后面

④ 在/var/named目录创建itcast.cluster.zone文件定义正向解析

# cd /var/named
# cp -p named.localhost itcast.cluster.zone

扩展:-p代表复制文件时保留文件的原有属性

⑤ 编辑itcast.cluster.zone文件,定义域名的指向

# vim itcast.cluster.zone

扩展:zone文件的格式说明

zone文件详解
# $TTL  缓存的生存周期
# @ = zonename = itcast.com  当前域
# IN  互联网
# SOA 开始授权
# NS  dns服务端    nameserver
# A   ipv4 正向
# AAAA IPV6
# CNAME 别名
# MX  邮件交互记录  5 数字代表优先级 数字越小优先级越高
​
# 0       ; serial    更新序列号 
# 1D      ; refresh   更新间隔(从服务器下载数据)
# 1H      ; retry     失败重试
# 1W      ; expire    区域文件的过期时间
# 3H )    ; minimum   缓存的最小生存周期
​
# D Day、H Hour、W Week

☆ 第四步:检查named.conf与zones文件

# named-checkconf /etc/named.conf
# named-checkconf /etc/named.rfc1912.zones
​
检查itcast.cluster.zone文件
# cd /var/named
# named-checkzone itcast.cluster.zone itcast.cluster.zone

☆ 第五步:启动DNS服务(named)

# systemctl restart named
# netstat -tnlp |grep named

3、Web服务搭建

# yum install httpd -y
# systemctl start httpd
​
# echo 'DNS Test ...' > /var/www/html/index.html

4、测试DNS服务器的正向解析

Client:客户端服务器操作

☆ 添加DNS服务器

# 临时
echo 'nameserver 10.1.1.12' > /etc/resolv.conf
注:电脑重启,网络刷新restart network,VMware挂起,临时DNS都会失效
​
# 永久添加
vim /etc/sysconfig/network-scripts/ifcfg-ens33
DNS=10.1.1.12

☆ 使用nslookup检测正向解析是否生效

# nslookup www.itcast.cluster

☆ 使用elinks命令行浏览器或curl来实现访问

# yum install elinks -y
# elinks
输入www.itcast.cluster
# curl http://www.itcast.cluster

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/132632.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

mysql 讲解(1)

文章目录 前言一、基本的命令行操作二、操作数据库语句2.1、创建数据库2.2、删除数据库2.3、使用数据库2.4 查看所有数据库 三、列的数据类型3.1 字符串3.2 数值3.3 时间日期3.4 空3.5 int 和 varchar问题总结&#xff1a; 四、字段属性4.1 UnSigned4.2 ZEROFILL4.3 Auto_InCre…

44springboot摄影跟拍预定管理系统

大家好✌&#xff01;我是CZ淡陌。一名专注以理论为基础实战为主的技术博主&#xff0c;将再这里为大家分享优质的实战项目&#xff0c;本人在Java毕业设计领域有多年的经验&#xff0c;陆续会更新更多优质的Java实战项目&#xff0c;希望你能有所收获&#xff0c;少走一些弯路…

Node.js如何处理多个请求?

前言 在计算机科学领域&#xff0c;关于并发和并行的概念经常被提及。然而&#xff0c;这两个术语常常被混为一谈&#xff0c;导致很多人对它们的理解存在着很多混淆。本文小编将通过对并发和并行的深入解析&#xff0c;帮助读者更好地理解它们之间的不同特点和应用场景。同时…

【Unity细节】Unity中如何让组件失活而不是物体失活

&#x1f468;‍&#x1f4bb;个人主页&#xff1a;元宇宙-秩沅 hallo 欢迎 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! 本文由 秩沅 原创 &#x1f636;‍&#x1f32b;️收录于专栏&#xff1a;unity细节和bug &#x1f636;‍&#x1f32b;️优质专栏 ⭐【…

黑客技术-小白学习手册

一、黑客是什么 原是指热心于计算机技术&#xff0c;水平高超的电脑专家&#xff0c;尤其是程序设计人员。但后来&#xff0c;黑客一词已被用于泛指那些专门利用电脑网络搞破坏或者恶作剧的家伙。 二、学习黑客技术的原因 其实&#xff0c;网络信息空间安全已经成为海陆空之…

Python接口自动化测试Selenium+pytest+数据驱动!

主流自动化框架 selenium &#xff1a;web端自动化框架 &#xff0c;&#xff08;行业里面最核心的框架&#xff09; appium &#xff1a;手机app端框架 requests &#xff1a;接口测试 selenium 工具类封装 selenium提供了很多方法供我们去完成网页元素的操作&#xff0c; …

Postman常见报错与解决方法,持续更新~

postman中文文档 基本操作&#xff1a;从控制台查看请求报错 如果 Postman 无法发送你的请求&#xff0c;或者如果它没有收到你发送请求的 API 的响应&#xff0c;你将收到一条错误消息。此消息将包含问题概述和指向控制台的链接&#xff0c;你可以在其中访问有关请求的详细信…

六度空间(C++)

目录 题目&#xff1a; 输入、输出格式&#xff1a; 代码&#xff1a; 运行结果&#xff1a; 题目&#xff1a; 输入、输出格式&#xff1a; 代码&#xff1a; #include<iostream> #include<algorithm> using namespace std; int g[10005][10005]; float n…

抖音小程序开发实战:打造独特品牌体验的代码之旅

抖音小程序的崛起为品牌提供了一个全新的数字化平台&#xff0c;而通过深入的抖音小程序开发&#xff0c;品牌不仅能够提升曝光度&#xff0c;更能打造独特的用户体验。在本文中&#xff0c;我们将深入研究抖音小程序开发的关键技术要点&#xff0c;并通过实际代码演示&#xf…

拓扑排序软件设计——ToplogicalSort_app(含有源码、需求分析、可行性分析、概要设计、用户使用手册)

拓扑排序软件设计 前言1. 需求分析2. 可行性分析2.1 简介2.2 技术可行性分析2.2.1 技术实现方案2.2.2 开发人员技能要求2.2.3 可行性 2.3 操作可行性分析2.4 结论 3. 项目报告3.1 修订历史记录3.2 软硬件环境3.3 需求分析3.4 详细设计3.4.1 类设计3.4.2 核心流程描述3.4.3 核心…

部署ruoyi-vue-plus和ruoyi-app

nginx.conf worker_processes 1;error_log /var/log/nginx/error.log warn; pid /var/run/nginx.pid;events {worker_connections 1024; }http {include mime.types;default_type application/octet-stream;sendfile on;keepalive_timeout 65;# 限制…

黑客技术(网络安全)-自学

前言 一、什么是网络安全 网络安全可以基于攻击和防御视角来分类&#xff0c;我们经常听到的 “红队”、“渗透测试” 等就是研究攻击技术&#xff0c;而“蓝队”、“安全运营”、“安全运维”则研究防御技术。 无论网络、Web、移动、桌面、云等哪个领域&#xff0c;都有攻与防…

SPSS二元Logistic回归

前言&#xff1a; 本专栏参考教材为《SPSS22.0从入门到精通》&#xff0c;由于软件版本原因&#xff0c;部分内容有所改变&#xff0c;为适应软件版本的变化&#xff0c;特此创作此专栏便于大家学习。本专栏使用软件为&#xff1a;SPSS25.0 本专栏所有的数据文件请点击此链接下…

湖南大学-数据库系统-2018期中考试解析

答案是自己做的&#xff0c;仅供参考。 一、单选题&#xff08;每小题2分&#xff0c;共30分&#xff09; 1、下列关于数据库系统正确的描述是&#xff08; A &#xff09;。 A、数据库系统减少了数据的冗余 B、数据库系统避免了一切冗余 C、数据库系统中数据的一致性是指数据…

动态规划(5)---Leetcode338.比特位计数

题目 给你一个整数 n &#xff0c;对于 0 < i < n 中的每个 i &#xff0c;计算其二进制表示中 1 的个数 &#xff0c;返回一个长度为 n 1 的数组 ans 作为答案。 分析 通常动态规划的做题顺序&#xff0c;先确定dp数组dp[i],然后确定确定递推公式&#xff0c;再dp数…

C语言实现写一个函数,求一个字符串的长度,在main函数中输入字符串,并输出其长度

完整代码&#xff1a; // 写一个函数&#xff0c;求一个字符串的长度&#xff0c;在main函数中输入字符串&#xff0c;并输出其长度 #include<stdio.h> //字符串最大长度 #define N 100 int strlen(char *str){int i0;//字符串结尾为‘\0’while (*str!\0){i;//指针移动…

汽车制动系统技术分析概要

目录 1.基本功能概述 2. 基本工作原理分析 2.1 Two-Box系统架构(Bosch_IBooster) 2.2 One-Box系统架构(Bosch_IPB) 2.3 ​​​​​​​ABS技术 2.4 TCS技术 2.5 VDC技术 2.6 EPB技术 2.7 小结 3. 该场景应用发展趋势分析 1.基本功能概述 传统汽车的底盘主要由传动系、…

安全框架SpringSecurity-1(认证入门数据库授权)

一、Spring Security ①&#xff1a;什么是Spring Security Spring Security是一个能够为基于Spring的企业应用系统提供声明式&#xff08;注解&#xff09;的安全访问控制解决方案的安全框架。它提供了一组可以在Spring应用上下文中配置的Bean&#xff0c;充分利用了Spring …

【数据结构】C语言实现单链表万字详解(附完整运行代码)

&#x1f984;个人主页:修修修也 &#x1f38f;所属专栏:数据结构 ⚙️操作环境:Visual Studio 2022 一.了解项目功能 在本次项目中我们的目标是实现一个单链表: 该单链表使用动态内存分配空间,可以用来存储任意数量的同类型数据. 单链表结点(Node)需要包含两个要素:数据域data…

BMVC 23丨多模态CLIP:用于3D场景问答任务的对比视觉语言预训练

来源&#xff1a;投稿 作者&#xff1a;橡皮 编辑&#xff1a;学姐 论文链接&#xff1a;https://arxiv.org/abs/2306.02329 摘要&#xff1a; 训练模型将常识性语言知识和视觉概念从 2D 图像应用到 3D 场景理解是研究人员最近才开始探索的一个有前景的方向。然而&#xff0c…