全部关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
一、samba搭建
samba为linux与windows之间共享文件,也可使用lrzsz进行上传和下载,但在使用lrzsz过程中,如rz上传可能会导致上传的软件乱码;或使用mobaxterm远程链接工具,该工具支持拖拽导入文件
1.下载samba
yum install samba -y
2.编辑配置文件
vim /etc/samba/smb.conf
[共享目录]
path = /smb
read only = no
public = yes
3.在/目录下创建smb
mkdir /smb
4.创建一个用户
useradd lih
5.对用户设置密码
pdbedit -a -u lih
6.对/smb目录进行授权
chown lih:lih /smb
7.重启samba服务
systemctl restart smb
8.win+r
9.对home目录下该用户目录写入内容
echo "this is the test for smb" > /home/lih/1.txt
10.在windows中查看
11.在windows中lih文件夹中创建文件夹和txt文件
12.在/smb目录下创建目录和txt文件
注:
(1)共享目录路径不要写/root/***,root目录为超级管理员的家目录,若路径为/root下的目录修改完权限后依然不可访问
(2)9至13步测试读写执行权限
目录 | 文件 | |
r | ls | cat |
w | mkdir、cp、mv、rmdir | vi、vim |
x | cd | 运行 |
(3)若不创建配置文件中所写的path路径,则只能访问创建的普通用户的家目录,且受限于该用户ugo中o的权限,删除不受影响;若不创建用户,直接执行命令pdbedit -a -u root,使用root登录后,不受权限控制。
(4)若将配置文件中read only=yes打开,则受限于该权限,若o为0,则不可读写执行,若o为4,则只可读,若o为2,则不可读也不可写,若o为1,只可运行该文件。故可授予o权限6且将read only=no进行使用。
二、FTP
20端口传输数据,21端口传输指令
主动与被动模式
主动模式:
(1)客户端开启本地的一个监听端口向服务器端发送prot指令
(2)服务器端收到客户端发送来的prot指令后,立刻用本地20端口进行建链
(3)建链完成后,数据信息走数据链路,指令信息走指令链路
被动模式:
(1)客户端向服务器端发送pasv指令,告诉服务器端要是用被动模式
(2)服务器端收到客户端发送来的pasv指令后,立刻开启本地的一个高位端口(大于1024)与客户端进行建链
(3)建链完成后,数据信息走数据链路,指令信息走指令链路
匿名登录
1.下载vsftpd
yum install vsftpd -y
2.修改ftp的配置文件
vim /etc/vsftpd/vsftpd.conf
3.重启ftp
systemctl restart vsftpd
4.win+e
输入ftp://$IP
5.在/var/ftp/pub目录下创建文件
6.在windows中进行查看,该文件o拥有读权限,但windows可能缺少某插件,只能看到该文件存在,双击打开默认跳转到网页,此时不可创建和删除
7.修改ftp文件权限,可以创建和删除
8.在windows端创建,在linux中进行查看
9.在windows端删除,在linux中查看
注:测试环境,此方式很危险,不需要验证即可删除linux中/var/ftp/pub中的文件,即只要与你在同一网段或入侵该网络后便可随便删除该目录下的文件
本地用户登录
1.上述环境已经搭建好了匿名登录,故只需修改ftp配置文件即可改为本地用户登录
vim /etc/vsftpd/vsftpd.conf
2.重启ftp服务
systemctl restart vsftpd
3.创建用户
useradd lih
4.对lih用户设置密码
echo "password" | passwd --stdin 用户
5.win+e
6.输入用户名密码进行登录(此时访问的是/home/lih目录)
7.由于/home/lih目录是lih用户的家目录,属主与属组都是lih,所以在windows端可直接进行删除和创建
8.在linux中对其目录下创建文件,在windows中查看(windows中查看默认还是去网页,可能是缺少某个插件的原因)
注:在/etc/vsftpd中user_list、ftpusers为ftp的黑名单,想让该名单中的用户登录,修改两个文件,把对应的用户注释掉即可
vim -O分屏查看,-o为水平分屏,ctrl+w进行切换文件
vim -O user_list ftpusers
验证被动模式:
1.查看端口号
ss -tnl
2.查看21端口谁在使用
lsof -i :21
3.下载抓包工具
yum install tcpdump -y
4.抓包
tcpdump -i ens32 -X src 192.168.31.11 and port 21
5.人为制造包,在windows端创建或删除文件夹或文件
6.查看linux端显示
三、nfs(网络文件系统network-file-system)
端口2049,linux与linux之间传输数据,nfs以挂载的方式实现,实现不同linux机器之间对应目录的实时备份
两台linux主机
主hp1:192.168.31.11
从hp2:192.168.31.12
1.下载nfs所需要的组件(主节点)
yum install rbcbind nfs-utils -y
2.修改nfs配置文件(主节点)
vim /etc/exports
/root/nfs 192.168.31.12 (rw,no_root_squash)
补充:
(1)all_squash:所有访问nfs的用户全部映射为nfsnobody
(2)root_squash:以root身份访问nfs的用户映射为nfsnobody
(3)no_root_squash:不是以root身份访问的映射为nfsnobody,以root身份访问的不映射
3.重启nfs(主节点)
systemctl restart nfs-utils
systemctl restart rpcbind
4.创建目录
mkdir /root/nfs
此处可根据需要更改2中的共享目录
4.下载nfs-utils(从节点)
yum install nfs-utils -y
5.显示nfs加载信息(从节点)
showmount -e 主节点ip
6.创建nfs的挂载目录(从节点)
mkdir /root/nfs-share
7.挂载(从节点)
mount -t nfs 主节点ip:目录 从节点目录
8.主节点创建文件,从节点查看
9.由于主节点配置文件中没有对从节点授权,从节点只能查看
测试:
1.从节点若想拥有权限,主节点修改为rwx,将属主和属组全部修改为nfsnobody(主节点),并将权限修改为777
chown nfsnobody:nfsnobody -R /root/nfs
chmod -R 777 /root/nfs
vim /etc/exports
/root/nfs 192.168.31.12 (rwx,no_root,squash)
2 .从节点取消挂载,重新挂载
3.从节点写入,移动,删除,复制
结论:发现只能复制移动。原因:该文件是192.168.31.11创建,该文件使用挂载的方式实现共享,但192.168.31.12可以拥有复制的权限。主节点配置文件不给w权限,则从节点无法执行mv操作
刚才的mv操作同样也只是相当于复制一份文件到目标位置
开机自启自动挂载
1.主节点要让nfs-utils和rpcbind开机自启
systemctl enable nfs-utils
systemctl enable rpcbind
2.从节点写入/etc/fstab或/etc/rc.local
echo "192.168.31.11:/root/nfs nfs-share nfs defaults 0 0" >> /etc/fstab
echo "mount -t nfs 192.168.31.11:/root/nfs nfs-share" >> /etc/rc.local
四、dhcp服务
动态主机配置协议
客户端向DHCP服务器发送广播(呼叫)要IP地址,DHCP服务器回答客户端给IP地址,客户端挑选DHCP服务器回答的IP地址给DHCP服务器,DHCP服务器不再向客户端发送IP地址。
二次链接时客户端向DHCP服务器发送上次的ip信息,DHCP服务器会尽可能给客户端相同的IP地址
二次链接时客户端原来的ip被用了后再重复第一次阶段过程。
要求,该模式下不允许使用桥接模式,因为桥接模式为虚拟机共享宿主机的wlan网络
1.下载dhcp
yum install dhcp -y
2.修改配置文件
vim /etc/dhcp/dhcpd.conf
:r /usr/share/doc/dhcp*/dhcpd.conf.example
3.修改新配置文件为
[root@hp1 ~]# cat /etc/dhcp/dhcpd.conf
subnet 192.168.31.0 netmask 255.255.255.0 { #指定网段,需要和掩码保持一致
range 192.168.31.10 192.168.31.20; #指定IP池
option domain-name-servers ns1.internal.example.org; #指定DNS地址
option domain-name "internal.example.org"; #指定域
option routers 192.168.31.1; #指定网关default-lease-time 600; #指定默认租约时间
max-lease-time 7200; #指定最大租约时间
}
4.重启dhcpd服务
systemctl restart dhcpd
5.修改网卡为dhcp
vim /etc/sysconfig/network-scripts/ifcfg-ens32
6.重启网络服务,查看ip
systemctl restart network
ip a
五、DNS
域名解析
(1)递归查询
递归查询是一种DNS服务器的查询模式,在该模式下DNS服务器接收到客户机请求,必须使用一个准确的查询结果回复客户机。如果DNS服务器本地没有储存查询DNS信息,那么该服务器会询问其他服务器,并将返回的查询结果提交给客户机。
(2)迭代查询
当客户机发送查询请求时,DNS服务器并不直接回复查询结果,而是告诉客户机另一台DNS服务器地址,客户机再向这台DNS服务器提交请求,依次循环知道返回查询的结果为止。
DNS资源记录
1)SOA 资源记录
每个区在区的开始处都包含了一个起始授权记录(Start of Authority Record),简称SOA 记录。
SOA 定义了域的全局参数,进行整个域的管理设置。一个区域文件只允许存在唯一的SOA 记录。
起始授权机构SOA资源记录总是处于任何标准区域中的第一位,它表示最初创建它的DNS服务器或现在是这个截获的主服务器的DNS服务器。它还用于存储会影响区域更新或过期的其他属性,如版本信息和计时,这些属性会影响在这个区域的域名服务器之间进行同步数据的频繁程度
2)NS 资源记录
NS(Name Server)记录是域名服务器记录,用来指定该域名由哪个DNS服务器来进行解析。每个区在区根处至少包含一个NS 记录。
3)A 资源记录
地址(A)资源记录把FQDN 映射到IP 地址。 因为有此记录,所以DNS服务器能解析FQDN域名对应的IP 地址。
4)PTR 资源记录
相对于A 资源记录,指针(PTR)记录把IP地址映射到FQDN。 用于反向查询,通过IP地址,找到域名。
5)CNAME 资源记录
别名记录(CNAME)资源记录创建特定FQDN 的别名。用户可以使用CNAME 记录来隐藏用户网络的实现细节,使连接的客户机无法知道真正的域名。
6)MX 资源记录
邮件交换(MX)资源记录,为DNS 域名指定邮件交换服务器。
邮件交换服务器是为DNS 域名处理或转发邮件的主机。处理邮件指把邮件投递到目的地或转交另一不同类型的邮件传送者。转发邮件指把邮件发送到最终目的服务器,用简单邮件传输协议SMTP 把邮件发送给离最终目的地最近的邮件交换服务器,或使邮件经过一定时间的排队。
正向解析:
1.下载dns所需要的组件
yum install bind bind-utils -y
2.修改配置文件/etc/named.conf
vim /etc/named.conf
3.修改配置文件/etc/named.rfc1912.zones
vim /etc/named.rfc1912.zones
4.到/var/named/下,复制文件为上述文件中file的名字
cd /var/named/
cp -a named.localhost lih.com.zone
5.修改复制后的文件
vim lih.com.zone
6.重启dns服务
systemctl restart named
7.修改网卡文件,增加DNS
7.使用nslookup或者dig进行解析
反向解析:
1.修改配置文件/etc/named.rfc1912.zones
vim /etc/named.rfc1912.zones
2.修改复制后的文件
vim lih.com.zone
3.重启dns服务
systemctl restart named
4.使用nslookup或者dig进行解析
六、ntp
时间同步
主节点:192.168.31.11
从节点:192.168.31.12 ....
1.下载ntp(主节点)
yum install ntp -y
2.修改配置文件(主节点)
vim /etc/ntp.conf
server 127.127.1.0
restrict 127.0.0.1
restrict 192.168.31.12 mask 255.255.255.0
3.重启ntp服务(主节点)
systemctl restart ntpd
4.使用ntpstat检测是否完成(主节点)
5.从节点下载ntpdate
yum install ntpdate -y
6.从节点同步主节点时间
ntpdate 主节点ip
阿里云提供了时间同步网址,若担心自己的时间可能存在偏差可直接全部同步阿里云的时间
1.下载ntpdate
yum install ntpdate -y
2.使用ntpdate同步时间
ntpdate time1.aliyun.com