700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > LinuxProbe 0x15 SAMBA文件共享服务 NFS网络文件系统 AutoFs自动挂载服务 DNS域名解析服务

LinuxProbe 0x15 SAMBA文件共享服务 NFS网络文件系统 AutoFs自动挂载服务 DNS域名解析服务

时间:2024-01-03 06:20:34

相关推荐

LinuxProbe 0x15 SAMBA文件共享服务 NFS网络文件系统 AutoFs自动挂载服务 DNS域名解析服务

配置网络文件系统(Network File System,NFS)服务来简化Linux系统之间的文件共享工作,

通过部署NFS服务在多台Linux系统之间挂载并使用资源。

在管理设备挂载信息时,使用autofs服务不仅可以正常满足设备挂载的使用需求,还能进一步提高服务器硬件资源和网络带宽的利用率。

SAMBA文件共享服务

1987年,微软公司和英特尔公司共同制定了SMB(Server Messages Block)服务器消息块协议,旨在解决局域网内的文件或打印机等资源的共享问题,这也使得在多个主机之间共享文件变得越来越简单。

1991年,Tridgwell为了解决Linux系统与Windows系统之间的文件共享问题,基于SMB协议开发出了SMBServer服务程序。这是一款开源的文件共享软件,经过简单配置就能够实现Linux系统与Windows系统之间的文件共享工作。 当时,Tridgwell想把这款软件的名字SMBServer注册成为商标,但却被商标局以SMB是没有意义的字符而拒绝了申请。后来Tridgwell不断翻看词典,突然看到一个拉丁舞蹈的名字—Samba,而且这个热情洋溢的舞蹈名字中又恰好包含了“SMB”,于是Samba服务程序的名字由此诞生。Samba服务程序现在已经成为在Linux系统与Windows系统之间共享文件的最佳选择。

# dnf install samba samba-client 安装samba服务# vim /etc/samba/smb.conf 配置服务1 # See smb.conf.example for a more detailed config file or2 # read the smb.conf manpage.3 # Run 'testparm' to verify the config is correct after4 # you modified it.5 6 [global] 共享唯一标识符 访问的名称7 workgroup = SAMBA 工作组8 security = user登录方式(分4种:share、user、domain、server)910 passdb backend = tdbsam 保存数据库 1112 printing = cups 12-15行参数中所提到的cups全称叫做Common UNIX Printing System,中文名叫通用UNIX打印系统服务13 printcap name = cups14 load printers = yes15 cups options = raw1617 [homes] 17至22行代表共享该登录用户的家目录内容(安全起见删除掉)18 comment = Home Directories19 valid users = %S, %D%w%S20 browseable = No21 read only = No22 inherit acls = Yes2324 [printers] 24-29行是用SMB协议共享本地的打印机设备,方便局域网内的用户可以远程使用25 comment = All Printers26 path = /var/tmp27 printable = Yes28 create mask = 060029 browseable = No3031 [print$] 31至37行依然为共享打印机设备的参数32 comment = Printer Drivers33 path = /var/lib/samba/drivers34 write list = @printadmin root35 force group = @printadmin36 create mask = 066437 directory mask = 0775# vim /etc/samba/smb.conf 配置服务 可以只保留以下几行[global]workgroup = SAMBA 工作组security = user登录方式(分4种:share、user、domain、server)passdb backend = tdbsam 保存数据库

删除掉不需要的代码是常规操作,能够让服务程序“轻装前进”,关闭非必要功能,实现更好的性能,把硬件资源用到刀刃上。

Samba服务程序中的参数以及作用

security参数代表用户登录samba服务时的验证方式,总共有4种可用参数:

“share”代表主机无需验证口令

“user”代表登录samba服务时需要使用账号密码进行验证,默认

“domain”代表通过域控制器进行身份验证,限制用户的来源域;

“server”代表使用独立主机验证来访用户的提供的口令,相当于是集中管理账号

在最早期的Linux系统中,samba服务使用的是pam模块调用本地账号和密码信息,

后来在5、6版本时替换成了用smbpasswd命令设置独立的samba服务账号和密码口令。

到了RHEL 7/8版本时则又进行了一次改革,将传统的验证方式换成了tdbsam数据库,这是一个专门用于保存samba服务账号口令的数据库,用户需要用pdbedit命令进行独立的添加操作。

设置Samba服务程序的参数以及作用

第1步:创建用于访问共享资源的账户信息。

在RHEL 8系统中,Samba服务程序默认使用的是用户口令认证模式(user)。这种认证模式可以确保仅让有密码且受信任的用户访问共享资源,而且验证过程也十分简单。不过,只有建立账户信息数据库之后,才能使用用户口令认证模式。另外,Samba服务程序的数据库要求账户必须在当前系统中已经存在,否则日后创建文件时将导致文件的权限属性混乱不堪,由此引发错误。

pdbedit:用于管理samba服务程序的账户信息数据库,格式为“pdbedit [选项] 账户”。

第2步:创建用于共享资源的文件目录。

在创建时,不仅要考虑到文件读写权限的问题,而且由于/home目录是系统中普通用户的家目录,因此还需要考虑应用于该目录的SELinux安全上下文所带来的限制。 文件上下文值samba_share_t

第3步:设置SELinux服务与策略,使其允许通过Samba服务程序访问普通用户家目录。

第4步:在Samba服务程序的主配置文件中,写入共享信息。

第5步:Samba服务程序的配置工作基本完毕。

Samba服务程序在Linux系统中的名字为smb,所以重启并加入到启动项中,保证在重启服务器后依然能够为用户持续提供服务。

将iptables防火墙清空,再把samba服务添加到firewalld防火墙中

第6步:在服务器本地检查samba服务是否启动可以用“systemctl status smb”进行查看,而如果想进一步看samba服务都共享出去了哪些共享目录,则可以用smbclient命令来查看共享详情,-U参数指定了用户名称,建议一会用哪位用户进行挂载,就用哪位用户身份进行查看;-L参数列举共享清单。

# id linuxprobe# pdbedit -a -u linuxprobenew password:此处输入该账户在Samba服务数据库中的密码retype new password:再次输入密码进行确认# mkdir /home/database# chown -Rf linuxprobe:linuxprobe /home/database# semanage fcontext -a -t samba_share_t /home/database# restorecon -Rv /home/database# getsebool -a | grep sambasamba_create_home_dirs --> offsamba_domain_controller --> offsamba_enable_home_dirs --> off# setsebool -P samba_enable_home_dirs on# vim /etc/samba/smb.conf[global]workgroup = SAMBAsecurity = userpassdb backend = tdbsam[database] 共享名称 唯一comment = Do not arbitrarily modify the database file 介绍path = /home/databasepublic = no 是否共享 no 需要账号才能访问writable = yes # systemctl restart smb# systemctl enable smb# systemctl tatus smb# iptables -F# iptables-save# firewall-cmd --zone=public --permanent --add-service=samba# firewall-cmd --reload另一台linux# dns install samba-client cifs-utils# smbclient -U linuxprobe -L 192.168.10.10Enter SAMBA\linuxprobe's password: 此处输入该账户在Samba服务数据库中的密码

Windows挂载共享

Samba共享服务是部署Windows系统上还是部署在Linux系统上,通过Windows系统进行访问时,其步骤和方法都是一样的。

Linux挂载共享

第1步:安装服务

第2步:创建挂载点 用于挂载Samba服务共享资源的目录

mount命令的-t参数指定协议类型,-o参数指定用户命和密码,最后追加上服务器IP地址和共享名称和本地挂载目录即可。服务器IP地址后面的共享名称指的是配置文件中[database]的值,而不是服务器本地挂载的目录名称。

第3步:创建认证文件,避免每次重启都要挂载远程共享目录

按照Samba服务的用户名、密码、共享域的顺序将相关信息写入到一个认证文件中,然后让/etc/fstab文件和系统自动的加载它。为了保证不被其他人随意看到,最后把这个认证文件的权限修改为仅root管理员才能够读写

# dnf install cifs-utils# mkdir /database# mount -t cifs -o username=linuxprobe,password=redhat //192.168.10.10/database /database# df -h//192.168.10.10/database 17G 3.9G 14G 23% /database# vim auth.smbusername=linuxprobepassword=redhatdomain=MYGROUP 工作组# chmod 600 auth.smb# vim /etc/fstab//192.168.10.10/database /databasecifs credentials=/root/auth.smb 0 0# mount -a# ls /database

NFS网络文件系统

NFS网络文件系统服务可以将远程Linux系统上的文件共享资源挂载到本地主机的目录上,从而使得本地主机(Linux客户端)基于TCP/IP协议,像使用本地主机上的资源那样读写远程Linux系统上的共享文件。

RHEL 8系统中默认已经安装了NFS服务

首先请使用软件仓库检查自己的RHEL 8系统中是否已经安装了NFS软件包

# dnf install nfs-utilsPackage nfs-utils-1:2.3.3-14.el8.x86_64 is already installed.

第1步:为了检验NFS服务配置的效果,我们需要使用两台Linux主机(一台充当NFS服务器,一台充当NFS客户端)

第2步:在NFS服务器上建立用于NFS文件共享的目录,并设置足够的权限确保其他人也有写入权限。

第3步:NFS服务程序的配置文件为/etc/exports,默认情况下里面没有任何内容。可以按照“共享目录的路径 允许访问的NFS客户端(共享权限参数)”的格式,定义要共享的目录与相应的权限。

例,如果想要把/nfsfile目录共享给192.168.10.0/24网段内的所有主机,让这些主机都拥有读写权限,在将数据写入到NFS服务器的硬盘中后才会结束操作,最大限度保证数据不丢失,以及把来访客户端root管理员映射为本地的匿名用户等,

第4步:启动和启用NFS服务程序。

由于在使用NFS服务进行文件共享之前,需要使用RPC(Remote Procedure Call,远程过程调用)服务将NFS服务器的IP地址和端口号等信息发送给客户端。因此,在启动NFS服务之前,还需要顺带重启并启用rpcbind服务程序,并将这两个服务一并加入开机启动项中。

# iptables -F# iptables-save# firewall-cmd --permanent --zone=public --add-service=nfs# firewall-cmd --permanent --zone=public --add-service=rpc-bind 相应用到的软件包# firewall-cmd --permanent --zone=public --add-service=mountd 远程用户访问# firewall-cmd --reload# mkdir /nfsfile# chmod -R 777 /nfsfile# echo "welcome to " > /nfsfile/readme# vim /etc/exports/nfsfile 192.168.10.*(rw,sync,root_squash) NFS客户端地址与权限之间没有空格。(可读可写,同步,映射用户:限制用户做超出共享之外的命令)# systemctl restart rpcbind# systemctl enable rpcbind# systemctl start nfs-server# systemctl enable nfs-server

在NFS服务的配置文件中巧用通配符能够实现很多便捷功能,就比如匹配IP地址就有三种方法:

第一种是直接写*号,代表任何主机都可以访问;

第二种则是实验中采用的192.168.10.*通配格式,代表来自192.168.10.0/24网段的主机;

第三种则是直接写对方的IP地址,如192.168.10.20,代表仅允许某个主机进行访问。

NFS客户端的配置

第1步:先使用showmount命令查询NFS服务器的远程共享信息,其输出格式为“共享的目录名称 允许使用客户端地址”。

第2步: 在NFS客户端创建一个挂载目录。使用mount命令并结合-t参数,指定要挂载的文件系统的类型,并在命令后面写上服务器的IP地址、服务器上的共享目录以及要挂载到本地系统(即客户端)的目录。

第3步:将 NFS文件共享服务写入到fstab文件中,使其一直有效

# showmount -e 192.168.10.10# mkdir /nfsfile# mount -t nfs 192.168.10.10:/nfsfile /nfsfile# df -h192.168.10.10:/nfsfile 17G 3.9G 14G 23% /nfsfile# cat /nfsfile/readme# vim /etc/fstab192.168.10.10:/nfsfile/nfsfilenfsdefaults 0 0

AutoFs自动挂载服务

autofs服务程序是一种Linux系统守护进程,当检测到用户试图访问一个尚未挂载的文件系统时,将自动挂载该文件系统。

第1步:修改主配置文件。

在autofs服务程序的主配置文件中需要按照“挂载目录 子配置文件”的格式进行填写。挂载目录是设备挂载位置的上一级目录。

第2步:修改子配置文件。

在子配置文件中,应按照“挂载目录 挂载文件类型及权限 :设备名称”的格式进行填写。

例如,要把光盘设备挂载到/media/iso目录中,可将挂载目录写为iso,而-fstype为文件系统格式参数,iso9660为光盘设备格式,ro、nosuid及nodev为光盘设备具体的权限参数,/dev/cdrom则是定义要挂载的设备名称。

# dnf install autofs# vim /etc/auto.master 包含了最重要的参数,没有包含全部/misc/ /etc/automisc/media /etc/iso.misc 启用子配置iso名称,名称可随意写, 后缀建议misc结尾# vim /etc/iso.misciso -fstype=iso9660,ro,nosuid,nodev :/dev/cdrom# systemctl start autofs# systemctl enable autofs

将 NFS服务服务加入到AutoFs自动挂载服务中

首先应该把NFS共享目录先卸载掉,然后在autofs服务程序的主配置文件中会有一条“/misc /etc/auto.misc”参数,这个auto.misc相当于自动挂载的参考文件,而它默认就已经存在

填写本地挂载的路径和NFS服务器的挂载信息

重启autofs服务程序,进入到/misc/nfsfile目录时,共享信息便会自动挂载

# umount /nfsfile# vim /etc/auto.master/misc /etc/auto.misc 新增# vim /etc/auto.miscnfsfile 192.168.10.10:/nfsfile# systemctl restart autofs# cd /misc/nfsfile192.168.10.10:/nfsfile 17G 3.9G 14G 23% /misc/nfsfile

DNS域名解析服务相较于由数字构成的IP地址,域名更容易被理解和记忆,所以我们通常更习惯通过域名的方式来访问网络中的资源。 为了降低用户访问网络资源的门槛,DNS(Domain Name System)域名系统技术应运而生。这是一项用于管理和解析域名与IP地址对应关系的技术 ,即将域名解析为IP地址(正向解析),或将IP地址解析为域名(反向解析)。 鉴于互联网中的域名和IP地址对应关系数据库太过庞大,DNS域名解析服务采用了类似目录树的层次结构来记录域名与IP地址之间的对应关系,从而形成了一个分布式的数据库系统。 域名后缀一般分为国际域名和国内域名。 原则上来讲,域名后缀都有严格的定义,但在实际使用时可以不必严格遵守。 目前最常见的域名后缀有.com(商业组织)、.org(非营利组织)、.gov(政府部门)、.net(网络服务商)、.edu(教研机构)、.pub(公共大众)、.cn(中国国家顶级域名)等。 DNS技术作为互联网基础设施中重要的一环,为了为网民提供不间断、稳定且快速的域名查询服务,保证互联网的正常运转,提供了下面三种类型的服务器。主服务器:在特定区域内具有唯一性,负责维护该区域内的域名与IP地址之间的对应关系。从服务器:从主服务器中获得域名与IP地址的对应关系并进行维护,以防主服务器宕机等情况。缓存服务器:通过向其他域名解析服务器查询获得域名与IP地址的对应关系,并将经常查询的域名信息保存到服务器本地,以此来提高重复查询时的效率。 主服务器是用于管理域名和IP地址对应关系的真正服务器, 从服务器帮助主服务器“打下手”,分散部署在各个国家、省市或地区,以便让用户就近查询域名,从而减轻主服务器的负载压力。 缓存服务器不太常用,一般部署在企业内网的网关位置,用于加速用户的域名查询请求。 DNS域名解析服务采用分布式的数据结构来存放海量的“区域数据”信息,在执行用户发起的域名查询请求时,具有递归查询和迭代查询两种方式。 所谓递归查询,是指DNS服务器在收到用户发起的请求时,必须向用户返回一个准确的查询结果。如果DNS服务器本地没有存储与之对应的信息,则该服务器需要询问其他服务器,并将返回的查询结果提交给用户。 而迭代查询则是指,DNS服务器在收到用户发起的请求时,并不直接回复查询结果,而是告诉另一台DNS服务器的地址,用户再向这台DNS服务器提交请求,这样依次反复,直到返回查询结果。

最高级、最权威的根DNS服务器总共有13台,分布在世界各地,其管理单位、具体的地理位置。

我们所提到的13台根域服务器并非真的是指只有13台服务器,没有那台服务器能独立承受住如此大的请求量,这是技术圈习惯的叫法而已。实际上用于根域名的服务器总共有504台,它们从A到M进行了排序,共用13个IP地址以此进行负载均衡,抵抗分布式拒绝服务攻击(DDoS)的影响。

随着互联网接入设备数量增长,原有 IPv4 体系已经不能满足需求,IPv6 协议在全球开始普及。基于 IPv6 的新型地址结构为新增根服务器提供了契机。下一代互联网国家工程中心于 年联合日本和美国相关运营机构和专业人士发起“雪人计划”,提出以 IPv6 为基础、面向新兴应用、自主可控的一整套根服务器解决方案和技术体系,在全球完成25台 IPv6(互联网协议第六版) 根服务器架设。

bound也可以实现出dns服务

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。