资讯详情

尚硅谷 Linux网络服务&数据库 笔记

目录

    • 网络基础服务
      • CentOS6与CentOS7区别
      • 常见的网络协议和端口
      • 网关和路由
      • 网络管理命令
      • SSH管理
      • TCP Wrappers 简单防火墙
    • DHCP服务
      • DHCP的工作原理
      • DHCP服务搭建
    • DNS服务
      • 构成和分类域名
      • 域名分析过程
      • DNS实验
    • VSFTP服务
      • VSFTP服务概述
      • 登录验证方式
      • 使用FTP
      • 普通实验
      • openSSL vsftp加密验证
    • SAMBA服务
      • Samba概述
      • 登录验证模式
      • 基本使用
      • 实验
    • NFS服务
      • NFS挂载原理
      • 实验
    • LAMP平台
      • 环境搭建
    • Apache
      • 启动方式
      • 工作模式
      • 文件位置
      • 配置文件
      • Apache目录别名实验
      • Apache用户验证
      • 虚拟主机实验
      • 域名跳转实验
      • Apache OpenSSL实验https
      • Apache日志切割
      • Apache不记录某种类型的文件
      • Apache静态缓存
      • Apache禁止解析PHP
    • LNMP平台
    • Nginx
      • 概念
      • 工作模式
      • 配置文件结构
      • 状态统计实验
      • 目录保护试验
      • IP验证限制
      • 虚拟主机实验
      • 反向代理实验
      • 负载均衡
      • https 永久重写
    • 邮件服务器
      • 概述
      • 搭建DNS
      • 配置邮件发送方
      • 配置接收方
      • Web客户端
    • Rsync
      • SSH单次备份实验
      • Rsync单次备份实验
      • Rsync inotify实时同步
      • unison inotify实现双向数据同步
    • JavaWeb环境搭建
      • 安装JDK
      • 安装Tomcat
    • ELK平台搭建
      • 实验部署
    • 关系数据库平台(MySQL)
      • 关系数据库理论基础
      • MySQL基础信息
      • MySQL基础命令
      • 数据库的备份和还原
      • MySQL主从备份
      • MySQL主主备份
      • MySQL一主多从
      • MySQL多主一从
      • MySQL读写分离
    • 非关系数据库平台(Redis)
      • 在CentOS7下安装Redis
      • 数据类型
      • 其他相关命令
      • Redis 高级应用

首先,解释我使用的环境

[root@C7B1 filesrc]# uname -a Linux C7B1 3.10.0-1160.el7.x86_64 #1 SMP Mon Oct 19 16:18:59 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux [root@C7B1 filesrc]# cat /proc/version  Linux version 3.10.0-1160.el7.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) ) #1 SMP Mon Oct 19 16:18:59 UTC 2020 [root@C7B1 filesrc]# cat /etc/issue \S Kernel \r on an \m [root@C7B1 filesrc]# cat /etc/redhat-release  CentOS Linux release 7.9.200 (Core)

以下实验,如无特殊说明均指的是 CentOS7 关闭防火墙与SELinux

网络基础服务

CentOS6与CentOS7区别

项目 CentOS6.x CentOS7.x 区别
文件系统 ext4 xfs(性能好,速度快) 使用的时候ext4的瓶颈都很难达到,感知不强
内核 2.6.x-x 3.10.x-x 内核存在大升级导致防火墙等变化
防火墙 iptables firewalld 后者优秀,感知不强,短期不会取而代之,大多数人习惯安装7后再重装iptables
默认数据库 MySQL MariaDB 两者几乎相同,更换只是防止版权纠纷,MySQL优化方案比较成熟,短期不会取而代之
时间同步 ntpq -p chronyc sources
修改时区 /etc/sysconfig/clock加入ZONE=“Asia/Shanghai” timedatectl set-timezone Asia/Shanghai 7的命令实际上就是修改了6的配置文件
修改语言 /etc/sysconfig/i18n写入LANG=“zh_CN.UTF-8” localectl set-locale LANG=zh_CN.UTF-8 这个指的是终端的语言,自己不要改,怕不支持给乱码
主机名 /etc/sysconfig/network写入 /etc/hostname写入或者hostnamectl set-hostname XXX,全是永久生效 主机名有一个设置要求,完整主机名是主机名.localhost.localdomain,不遵守也问题不大

操作 CentOS6.x CentOS7.x
启动服务 service 服务名 start systemctl start 服务名
关闭服务 service 服务名 stop systemctl stop 服务名
重启服务 service 服务名 restart systemctl restart 服务名
查看所有服务状态 service --status-all systemctl list-units
查看某个服务状态 service 服务名 status systemctl statu 服务名
设置自启动 chkconfig 服务名 on systemctl enable 服务
设置不自启动 chkconfig 服务名 off systemctl disable 服务
查看所有自启动状态 chkconfig --list systemctl list-unit-files

CentOS7中所有的服务后面加上了.service,例如httpd.service这个写法的变化在CentOS7.0.x,CentOS7.1.x是必须的,但是后来RedHat加不加都可以了

项目 CentOS6.x CentOS7.x
网卡名 eth0 ens33(7.0-7.5是ens+随机数)
网络配置 ifconfig/setup ip/nmtui
网络服务名 network NetworkManager(network作为备用)

网卡的配置文件在/etc/sysconfig/network-scripts/ifcfg-enp0s3

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp							# 网络连接模式 dhcp动态,static静态IP
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=enp0s3								# 网卡名
UUID=ddc655f4-514a-499e-bbca-8dd27fa91684
DEVICE=enp0s3							# 设备名
ONBOOT=yes								# 开机加载

和CentOS6比起来就是多了IPv6的配置,注意大小写,,如果可以用nmtui解决不要用这个

[root@bogon ~]# cd /etc/sysconfig/network-scripts/ # 进入目录
[root@bogon network-scripts]# ls ifcfg-enp0s3
ifcfg-enp0s3
[root@bogon network-scripts]# cp -a ifcfg-enp0s3 ifcfg-enp0s3.back # 备份原文件
[root@bogon network-scripts]# mv ifcfg-enp0s3 ifcfg-eth0 # 修改文件名
[root@bogon network-scripts]# vim ifcfg-eth0 # 修改配置文件

修改网卡配置信息,改两处

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
- NAME=enp0s3
+ NAME=eth0
UUID=ddc655f4-514a-499e-bbca-8dd27fa91684
- DEVICE=enp0s3
+ DEVICE=eth0
ONBOOT=yes

修改GRUB配置,关闭一致性命名规则(就是不让内核算名字)

[root@bogon network-scripts]# vim /etc/default/grub
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
- GRUB_CMDLINE_LINUX="crashkernel=auto rhgb quiet"
+ GRUB_CMDLINE_LINUX="crashkernel=auto rhgb quiet net.ifnames=0 biosdevname=0"
GRUB_DISABLE_RECOVERY="true"

更新配置文件加载新的参数,重启

[root@bogon network-scripts]# grub2-mkconfig -o /boot/grub2/grub.cfg
[root@bogon network-scripts]# reboot

注意,CentOS7.x用的是Grub2,配置文件变化到/etc/default/grub/boot/grub2/grub.cfg是grub2-mkconfig生成的

常见的网络协议与端口

  • 网络地址与物理地址:

    IP地址是互联网协议地址,作用是为了给每个连接局域网的设备一个独一无二的数字地址,10.X.X.X,172.16.X.X-172.31.X.X.X,192.168.X.X是内网IP段

    MAC地址是物理地址,是为每一个设备设置一个固定的硬件地址,MAC工作在链路层,是一个12个16进制数

  • TCP/IP五层协议

    应用层:FTP,HTTP,SMTP,Telnet,DNS…

    传输层:TCP,UDP…

    网络层:IP,ARP,ICMP…

    数字链路:PPP,PPPop…

    物理层:不常用

  • 最常见网络端口

    配置文件在:/etc/service

    端口 服务 作用
    20/21 FTP 文件共享
    22 ssh 远程管理
    23 Telnet 不安全的远程管理
    25 smtp 发邮件
    465 smtp(SSL) 发邮件
    110 pop3 收邮件
    143 IMAP4 收邮件
    993 IMAP4(SSL) 收邮件
    80 www服务http 网页访问
    443 www服务https 加密网页访问
    3306 musql端口 数据库链接端口
    53 DNS端口 域名解析端口
    • FTP有两个端口,21是长期监听的,用于登录等验证,具体文件传输走20端口
    • SMTP有两个,一个是加密的,一个没加密
    • pop3只能收文本文件,想要图片需要IMAP

网关和路由

  • 一个局域网中的设备可能需要访问另一个局域网中的设备,这个时候就需要路由器作为连接
  • 一个网段去另一个网段可能有很多路可以走,这时候根据路由协议的不同路由器可能会规划出不同的走法 路由有动态路由与动态路由,静态是规定路线的,计算少,但是网络情况变化就要修改所有路由,适合局域网,动态是自动寻路的

  • 网关首先必须是一个路由(可以是虚拟的也可以是真实的),所以具有的能力
  • 网关可以,只要是的都会交给网关进行路由
  • 网关可以进行NAT转换例如一个内网IP想要访问公网IP,可以经过网关,网关可以记下下这个数据包,重新包装,转发(例如几下这个包是内网ip10.65.1.1发来的,然后将这个数据包打包,用自己的公网IP名义发出,等收到包后根据包的特征返还非10.65.1.1)

,路由器可以作为网关来使用。。应该说:路由器可以实现网关的功能。另外,网关的功能还可以由局域网中一台双网卡的机器(其中一块网卡接入广域网)来实现。

  • 查询路由表

    [root@bogon ~]# route -n
    Kernel IP routing table
    Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
    10.0.2.0        0.0.0.0         255.255.255.0   U     100    0        0 eth0
    192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0
    

    我们可以看到这是本机可以处理几个路由表,这是没有配配置网关的情况,当配置网关后,下方会显示一个默认路由,网关进行处理

  • 临时修改网关

    添加:route add default gw 网关的地址(路由器的地址)

    添加:route del default gw 网关的地址(路由器的地址)

    之后查询可以看到

    [root@bogon ~]# route -n
    Kernel IP routing table
    Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
    0.0.0.0         10.0.2.2        0.0.0.0         UG    100    0        0 eth0
    10.0.2.0        0.0.0.0         255.255.255.0   U     100    0        0 eth0
    192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0
    

    最上面这个0.0.0.0意思是任意ip,意思是,不在下面这几个ip列表的ip本机没法路由,就直接交给网关10.0.2.2路由

网络管理命令

  • DNS解析测试命令

    • 可以用过nslookup进行测试

      [root@bogon ~]# nslookup www.baidu.com
      Server:         192.168.43.1
      Address:        192.168.43.1#53
      
      Non-authoritative answer:
      Name:   www.baidu.com
      Address: 112.80.248.76
      Name:   www.baidu.com
      Address: 112.80.248.75
      www.baidu.com   canonical name = www.a.shifen.com.
      
    • 修改一张网卡的DNS

      /etc/sysconfig/network-scripts/ifcfg-eth0文件下DNS1=ip,DNS2=ip

      或者使用setup

    • 修改全局DNS

      /etc/resolv.conf文件下nameserver ip

      或者使用setup

    • hosts文件

      /etc/hosts文件下是静态的解析记录,优先级高于DNS解析

  • 网络查看命令

    查看网络连接与端口:netstat -tuln

    查看进程,网络连接与端口:netstat -tulnp

    查看所有不管是否连接的活动:netstat -an

  • 查询本机和目标主机经过的节点数,路由追踪

    traceroute [选项] 网址

    • -p 指定UDP端口测试(默认是ICMP)
    • -q n指定测试n次
    • n以IP的方式测试,避开DNS

    注意这个功能在虚拟机NAT模式下无法实现,想要实现开机桥接模式

    这个可以测试主机连接效率

    这个功能的原理就是尝试去ping网址,成功之后就去ping他指向的网站,但是这个功能成功率不断下降,原因是很多网址禁止了这种ping

  • 测试网络连通性

    ping 网站

    选项

    • -i 间隔时间
    • -cping的次数
    • -s数据包的大小
  • 地址解析,将ip转化为mac

    arp ip

    选项

    • -a查看曾经与本机连接过的所有设备的mac
    • -d ip删除某个ip的记录
  • 网络探测命令

    nmap命令,默认不安装

    选项

    • -sP 扫描网段内有哪些计算机,例如nmap -sP 10.0.2.0/24子网掩码为24,网段为10.0.2.0,对方必须关闭防火墙才扫的到
    • -sT 查询指定ip开了哪些端口
  • 常见的远程工具

    • Windows管理Linux:Xshell SecureCRT
    • Linux管理Windows:rdesktop
    • Linux管理Linux:SSH

SSH管理

  • 什么是SSH

    是Secure Shell缩写,与之前的Telnet比起来非明文传输,比较安全

  • SSH的登录验证模式

    有账户密码验证与密钥对连接两种模式

  • 客户端尝试发送连接请求(问问能不能远程连接)
  • 服务器生成和发送公钥给计算机
  • 客户端使用公钥加密信息,发送
  • 服务器解密验证

  • 客户端向服务器发送连接请求和自己的文件,服务器收到后直接返回
  • 服务器检查到自己没有客户端公钥时:
    • 返回没有收到客户端的公钥
  • 服务器检查到有公钥的时候
    • 服务器返回一段使用加密的challenge(随便找了点内容加密)
    • 客户端用解密,然后用加密
    • 服务器用解密验证到和之前自己找的那个内容一样
  • :在连接之前客户端要想办法把自己的公钥放在服务器上

TCP Wrappers 简单防火墙

一个Linux自带的简易版防火墙,比iptables弱,生产环境用的不多,是工作在传输层的安全工具,可以对服务,常见的服务有telnet,sshd,vsftpd,rpcbind

  • 查询服务是否被TCP Wrapper控制 先查询服务的命令所在位置(以ssh为例,但是我们要查的是服务端的,命令是sshd) 使用ldd静态的查看服务在执行的时候调用的库文件列表,使用grep查询有没有调用libwrap.so

    [root@KarryZenBook14s itisserverflod]# which sshd
    /usr/sbin/sshd
    [root@KarryZenBook14s itisserverflod]# ldd /usr/sbin/sshd | grep libwrap.so
          libwrap.so.0 => /lib64/libwrap.so.0 (0x00007f864052c000)
    
  • TCP Wrappers的工作原理

    当获取连接请求后,先读取系统管理员设置的访问控制文件,符合要求就会将连接原封不动的发送给服务,否则直接拒绝

    控制文件的读取方式

    • /etc/host.allow的权限比/etc/host.deny大
    • 看到/etc/host.allow有则直接放行
    • 看到/etc/host.allow无但是/etc/host.deny没有也放行
    • 看到/etc/host.allow无但是/etc/host.deny有不放行
    • 需要个别服务允许,其他拒绝需要把服务写在allow,deny上写all
    • 需要拒绝部分直接在deny里面写要拒绝的
  • TCP Wrappers的使用

    编写规则是service_list@host: client_list

    • service_list 服务列表

    • host 的ip,例如服务器有内网网卡IP为10.65.1.1和外网网卡2.2.2.2,我们希望只有内网网卡可以建立服务,可以在allow中将host写成10.65.1.1,不写就是哪个网卡均可

    • client_list 列出访问者的显示,多个可以用,或者空格隔开

      • 基于IP地址的:10.65.1.1(一个ip),一个ip段10.65.1.,一个ip段10.65.注意,限制网段要这么写,不得写成10.65..
      • 基于主机名的:很少用,
      • 基于ip/掩码的,10.65.1.1/255.255.255.0,在CentOS7中支持将掩码改为/24
      • 其他规则写法:ALL和LOCAL
    • 限制网段用户访问ssh

      修改限制文件

      [root@KarryZenBook14s ~]# vim /etc/hosts.deny
      

      添加规则,注意,希望限制10.65.11.*10.65.11.,希望限制10.65.*.*10.65.,不得写成10.65..,我们限制的是访问服务器的ssh所以写的是sshd

      sshd:10.65.
      

      直接exit退出登录即可,这个服务的配置文件无需重启服务,尝试登录

      PS C:\Users\tclkr> ssh -l root -p 9001 127.0.0.1
      Last login: Fri Mar  5 10:09:16 2021 from 10.0.2.2
      

DHCP服务

DHCP动态主机配置协议,是一种在的使用的不可靠传输协议工作的协议,主要作用是集中网络资源,使得网络中的主机可以

DHCP的工作原理

所谓的DHCP就是给需要IP的机器分配IP地址,当机器不需要的时候就收回来,相当于租房子一样,有一个租期,快到的时候还需要报告是否续租

DHCP客户机

标签: 智能型差压变送器mx5ka5t压力变送器压力变送器mpm486mpm430压力变送器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台