红帽 Linux 零基础完整学习笔记 7
2026/7/2 20:33:29 网站建设 项目流程

基于rocky linux 9 的学习笔记

目录

  • 前言
  • 一、 Linux 进阶:ACL与SELinux
  • 二、 网络基石:TCP/IP协议栈
    • 1.应用层协议的“爱恨情仇”:
    • 2.传输层:TCP 的四大护法
    • 3.网络层:IP 地址的“族谱”
  • 三、 静态路由:从“能通”到“全网通”的实战
    • 1.设备层级认知:
    • 2.静态路由配置三要素:
    • 3.经典排错:单向通
    • 4.全网互通拓扑(三路由实验)
  • 四、 运维思维与安全(软实力)
    • 1.需求翻译
    • 2.安全红线:
    • 3.学习方法
  • 总结

前言

前几篇我们一直在聊 Linux 系统“内部”的事,比如如何通过 chmod和 ACL 权限管理文件,如何配置 SELinux 安全策略。但在真实的运维工作中,服务器是需要“对外说话”的。无论是提供网站服务还是远程维护,都离不开网络。

这次笔记是我们从“单机管理”迈向“网络运维”的关键转折点。我们将系统学习 TCP/IP 协议栈,并在模拟器中实战静态路由配置。


一、 Linux 进阶:ACL与SELinux

虽然本节重点在网络,但我们首先还是要回顾一下Linux 权限的核心痛点:如何实现精细化控制?

  1. 传统权限 vs ACL 权限
  • 传统权限 (chmod):只能针对所有者(u)、所属组(g)​ 和 其他人(o)​ 进行设置。

痛点:如果有个“其他人”叫张三,我只想让他一个人能读这个文件,而不想让他加入组,怎么办?chmod做不到,因为它一改“其他人”的权限,所有其他人都变了。

  • ACL 权限 (setfacl):Access Control List,访问控制列表。

解决方案:它突破了传统权限的界限,可以单独给某一个用户或某一个组分配特定的权限,不受所有者、所属组限制。

bash # 查看文件的ACL权限 getfacl filename # 给用户zhangsan单独赋予rwx权限 setfacl -m u:zhangsan:rwx filename # 删除权限 setfacl -x u:zhangsan filename

注意要有这个文件和这个用户哦,具体就不演示了,前几篇笔记里面都有

  1. SELinux 安全标签

SELinux是内核级的防火墙,靠「安全标签」控制进程能访问哪些文件,特意区分了临时和永久修改的区别:

  • 临时改标签:chcon -t httpd_sys_content_t index.html,重启后失效,只适合临时测试

  • 永久改标签(重点,RHCSA考点):要把规则写进SELinux策略库,否则新建文件会自动继承父目录的旧标签,导致权限错乱

bash # 递归给/web目录及所有子文件打httpd标签,-R是递归,-v是显示过程 semanage fcontext -a -t httpd_sys_content_t "/web(/.*)?" # 刷新标签,让规则生效 restorecon -Rv /web

二、 网络基石:TCP/IP协议栈

我们说协议不是为了背书,而是为了“排错”。

1.应用层协议的“爱恨情仇”:

  • Telnet vs SSH:其实Telnet 是明文传输,黑客抓个包就能看到密码。虽然现在不用,但因为很多工业设备(老旧系统)还在用,所以必须懂。SSH 是 Telnet 的加密升级版。

  • FTP vs TFTP:FTP 功能全(上传/下载),TFTP 是“阉割版”,包小速度快,常用于路由器固件更新或无盘工作站启动。

  • HTTP vs HTTPS:SSL/TLS 加密隧道的重要性。现在的浏览器如果不支持 HTTPS,基本就是“不安全”的代名词。

  • SNMP:简单网络管理协议。它的作用是监控设备的 CPU、内存、温度。这是运维监控的基础。

  • DHCP 的“租约”机制:我们用超市 WiFi 举例子。如果没有租约,一个人走了,IP 不还回来,后面的人就连不上网。租约就是 IP 的“暂存期”,断了重连不用重新申请,过期了才回收。

2.传输层:TCP 的四大护法

TCP 为什么“可靠”,不仅仅是有握手,还有四大机制:

  • 数据零丢失:丢了就重传。

  • 无乱序:包有编号,到了先排序再给应用。

  • 无重复:编号重复了就丢弃。

  • 流量控制/拥塞控制:网络堵车了就减速(滑动窗口机制)。

为什么握手三次,挥手四次?

因为 TCP 是全双工的,两边都要关闭。挥手时,一方说完“我说完了”(FIN),另一方可能还有数据要发,所以不能马上回“我也说完了”,只能先回个“我知道了”(ACK)。等数据发完,再发一个 FIN。所以是 4 次。

3.网络层:IP 地址的“族谱”

  • IPv4 枯竭:“给地球上每一粒沙子都可以分配 IP”我们认为 IPv6 十分庞大。

  • 掩码计算:用“姓氏”和“名字”打比方。

  • /24:前三个数是姓(网段),最后一个是名(主机)。

  • 广播地址:x.x.x.255不能配给电脑,它是喊所有人用的。

  • 网络地址:x.x.x.0代表这个网段本身。

  • ARP 协议:
    ARP 欺骗,啥?
    黑客伪装成网关(李鬼),受害者把流量发给黑客,黑客再转发给真正的网关。这不仅是断网,更是“中间人攻击”,能偷密码、偷数据。


三、 静态路由:从“能通”到“全网通”的实战

1.设备层级认知:

二层交换机:傻瓜式,只有 MAC 地址表,不认 IP,不能配 IP。

三层路由器/防火墙:智能式,认 IP,必须配 IP。

三层交换机:既是交换机又是路由器。

2.静态路由配置三要素:

目标网段(Destination)

子网掩码(Mask)

下一跳(Next-hop)

注意哈:千万别写成具体 IP(如 PC2 的 IP),必须写网段!

3.经典排错:单向通

现象:PC1 Ping PC2,Timeout。

抓包分析:在 AR1 的出口抓包,发现包能到 AR2,甚至到了 PC2。

真相:Ping 是双向的。去的时候路通了,但 PC2 回包的路上,AR2 不知道去 PC1 怎么走。

解决:在 AR2 上配置回程路由(Reply Route)。

口诀:一去一回,才算打通;只去不回,等于白费。

4.全网互通拓扑(三路由实验)

我们做的实验是 PC1 -> AR1 -> AR2 -> AR3 -> PC3,核心逻辑是路由递归:AR1 不知道 PC3 在哪,但它知道去 PC3 网段的下一跳是 AR2;AR2 也不知道 PC3 在哪,但它知道下一跳是 AR3。只要每台路由器都有去往目标网段的路由表项,数据就能逐跳转发,最终实现全网互通。

  • 实验配置(华为eNSP设备)
bash # 进入系统视图 system-view # 配置静态路由:目标网段192.168.3.0,掩码255.255.255.0,下一跳10.1.2.2 ip route-static 192.168.3.0 255.255.255.0 10.1.2.2 # 查看路由表,确认配置生效 display ip routing-table
  • 真实环境验证:Linux端路由追踪

做完eNSP的模拟实验后,我们可以在真实的Linux虚拟机里用traceroute命令验证公网路径,刚好对应实验里的“路由跳数”概念。
(注意:Linux下命令是traceroute,和Windows的tracert仅差一个字母,功能完全一致)

  • 第一步:安装工具

最小化安装的红帽系统默认没有traceroute,需要先安装:

bash # 红帽/CentOS/Rocky 8及以上 sudo dnf install traceroute -y # 老版本系统用yum sudo yum install traceroute -y

  • 第二步:追踪路径
bash # 追踪到百度的路由路径,默认用UDP协议 traceroute www.baidu.com # 如果默认UDP被拦截,加-I参数用ICMP协议(和ping同协议),成功率更高 traceroute -I www.baidu.com


后面都是*,被拦截了


加-I参数用ICMP协议,发现一跳就到了

实操对照:NAT模式下的特殊现象

我自己的虚拟机用的是 NAT模式,跑traceroute -I www.baidu.com时只显示了1跳就到了百度,这不是配置错误,而是NAT的透明转发特性导致的:

NAT模块会把虚拟机的私有IP伪装成宿主机的公网IP(SNAT技术),且不会像普通路由器那样返回TTL超时报文。当TTL=1的探测包到达NAT设备时,它会直接转发,直到TTL减到0时刚好到达百度服务器,因此traceroute会误以为第一跳就是目标地址。


四、 运维思维与安全(软实力)

这部分虽然没代码,但决定了你能否胜任工作。

1.需求翻译

之前我们只会背命令,不会干活。甲方说“我要让某人能看文件但不能改”,你不能直接给 chmod 777。要学会翻译成“只读权限”或“ACL 授权”。

2.安全红线:

ARP 欺骗:不仅断网,还能窃密。

DNS 劫持:把你引到假网站。

职业操守:严禁私自接单,严禁触碰数据红线。

3.学习方法

学协议不需要背 RFC 文档,但要能“口头阐述用途”。比如问你 DNS 干嘛的,你要能说出“把域名变 IP”,而不是愣住。


总结

Linux 部分:重点是 ACL 和 SELinux 的永久配置。

网络部分:重点是 TCP 的可靠性机制和 IP 子网划分。

实操部分:重点是静态路由的双向配置和路由追踪。


想了解更多计算机网络知识的宝子们可以参考下面的文章哦

计算机网络核心知识

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询