声明:本文仅作学习交流使用,引用需标明出处。
如有谬误,敬请指正
本文聚焦Linux防火墙基础、VMware网络配置、sshd远程管理服务三大核心模块,同时详解Windows远程Linux的实操方法,整体以实操命令和配置步骤为主,所有操作均适配Linux初学者,是实现虚拟机通信、Linux远程管理的必备基础,以下为分模块的详细实操总结。
一、防火墙基础
本模块核心围绕Linux系统常用的firewalld 软件防火墙展开,因初学者阶段防火墙会拦截各类网络操作、增加学习负担,重点讲解firewalld的临时关闭+永久禁用实操步骤,iptables防火墙将在后续安全阶段讲解。
- 防火墙核心简介:作为网络安全防护系统,主要作用是控制网络数据进出、按规则放行/拦截数据,防止非法网络访问与攻击;分为硬件防火墙和软件防火墙两类,Linux系统常用firewalld和iptables。
- 核心实操命令 (全程以root用户执行)
- 关闭firewalld服务:
systemctl stop firewalld - 禁止开机自启:
systemctl disable firewalld - 查看运行状态(确认已停止):
systemctl status firewalld - 检查开机自启状态(确认已禁用):
systemctl is-enabled firewalld
- 关闭firewalld服务:
二、VMware网络服务
VMware是Linux运维学习的核心虚拟机工具,本模块讲解其3种网络模式、虚拟交换机原理、实操配置及虚拟机克隆 ,是实现虚拟机间、虚拟机与主机、虚拟机与外网 通信的基础,核心重点为仅主机模式(隔离模式)和NAT模式(实操最常用)。
2.1 核心基础概念
- VMware 3种网络模式
- 隔离模式(仅主机模式):仅支持局域网通信(虚拟机与主机、虚拟机与虚拟机),无法连接外网;
- NAT模式:支持局域网通信,同时借助NAT地址转换技术实现虚拟机连接外网,是实操中最核心的网络模式;
- 桥接模式(本阶段可先忽略):(将虚拟机当成真机使用)将虚拟机桥接至主机的真实网络环境,虚拟机可与真实网络中的所有设备互通。
- VMware虚拟交换机与虚拟网卡 :安装VMware后系统自动生成虚拟交换机1,虚拟交换机8与虚拟网卡1,虚拟网卡8,为虚拟网络通信提供基础。
- 默认生成的虚拟交换机1、8 ,分别对应仅主机模式、NAT模式;
- 主机网络适配器中生成vmnet1、vmnet8虚拟网卡,默认分别绑定至虚拟交换机1,8。VMnet8 虚拟网卡绑定的虚拟交换机,默认开启了 NAT 和 DHCP 服务,虚拟机通过它访问外网时,数据会经 VMware NAT 服务转发到主机的物理网卡,由主机上网。
- 辅助网络概念 (理解VMware网络的关键)
- 交换机:组建局域网的核心设备,可缓解网线接口不足问题,电脑或服务器只要直接或间接在同一交换机,配置相同网段IP即可互相通信,负责相同网段数据包的转发
- 网关: "跨网段的出入口",跨网段通信的必备关口,是内网设备连接外网的唯一通道,内网设备的网关通常配置在路由器接口(即内网的网关IP地址配置在路由上);负责不同网段数据包的转发。
- 路由:决定数据包的走向,起到指路的作用。会根据目标地址,判断数据该走哪张网卡、哪个出口,把它转发到正确的方向,让不同网段的设备能互相通信。
(我们常见的设备几乎永远和网关集成在一起,家里的无线路由器,随身 WiFi等都是如此,因此很多情况下基本说起路由或者网关就是指包含二者的设备) - NAT地址转换:将内网私有IP转换为公网IP,是内网设备访问互联网的核心技术;
- DHCP服务 :为网络内设备自动分配IP、网关、DNS等网络参数,包含作用域 (分配的网段)和地址池(网段内可分配的IP范围)两个核心属性。
什么是DNS?
DNS : 域名翻译官,把网址翻译成 IP。(如 www.baidu.com翻译成 110.242.68.66)。
网关和dns的关系:你要访问网站 → 先找 DNS 翻译成 IP → 再通过网关把请求发出去。
网关地址和dns地址不需要相同,绝大多数情况下也不一定要相同,只有一种常见情况它们刚好是同一个 IP,但那只是设备兼任,是因为你的路由器既当网关,又帮你转发 DNS 请求,所以 IP 一样。
2.2 仅主机模式(隔离模式)实操配置
目标:实现Windows主机与Linux虚拟机的局域网互通,虚拟机无外网访问能力
(1)Windows主机配置
- 快捷键
Win+r输入ncpa.cpl,打开网络适配器; - 找到VMnet1 虚拟网卡,右键选择「属性」,配置IPv4静态IP:
192.168.4.1/24(子网掩码255.255.255.0,无需配置网关和DNS)。
(2)Linux虚拟机配置
- 虚拟机关机后,在「设置-网络适配器」中,将网络模式修改为仅主机模式(VMnet1),勾选「已连接」和「启动时连接」;
- 配置ens160网卡静态IP:
nmcli connection modify ens160 ipv4.method manual ipv4.addresses 192.168.4.100/24 connection.autoconnect yes; - 激活网卡使配置生效:
nmcli connection up ens160; - 测试通信:
ping -c 4 192.168.4.1(-c指定ping的次数,测试与Windows主机互通)。
2.3 NAT模式实操配置
目标:实现虚拟机与Windows主机、虚拟机间的内网互通,同时让虚拟机能够访问外网,是Linux实操中最常用的网络模式
(1)Windows主机配置
- 快捷键
Win+r输入ncpa.cpl,打开网络适配器; - 找到VMnet8 虚拟网卡,右键选择「属性」,配置IPv4静态IP:
192.168.8.1/24(子网掩码255.255.255.0,无需配置网关和DNS)。
(2)VMware虚拟网络编辑器配置
需以管理员权限 打开VMware,再进入虚拟网络编辑器,核心配置VMnet8(NAT模式):
- 子网配置:子网IP
192.168.8.0,子网掩码255.255.255.0; - DHCP设置:作用域
192.168.8.0,地址池192.168.8.100-200(仅为虚拟机分配此范围的IP); - NAT设置:网关IP
192.168.8.254/24(后续虚拟机的网关和DNS需配置为此地址)。
(3)Linux虚拟机配置
- 虚拟机关机后,在「设置-网络适配器」中,将网络模式修改为NAT模式(VMnet8),勾选「已连接」和「启动时连接」;
- 配置ens160网卡的静态IP、网关、DNS:
nmcli connection modify ens160 ipv4.method manual ipv4.addresses 192.168.8.100/24 ipv4.gateway 192.168.8.254 ipv4.dns 192.168.8.254 connection.autoconnect yes; - 激活网卡使配置生效:
nmcli connection up ens160; - 双层通信测试(确保配置生效):
- 内网测试:
ping -c 4 192.168.8.1(测试与Windows主机互通); - 外网测试:
ping -c 4 www.baidu.com(测试虚拟机能否访问互联网); - 常用命令:
route -n查看路由表,能快速查看路由/网关。
- 内网测试:
IP 地址转换策略Easy IP 和静态 NAT对比:
Easy IP
一句话:多个内网设备共享一个公网 IP 上网,省 IP。
- 内网所有设备(手机、电脑)都用同一个公网 IP 访问外网
- 靠端口号区分不同设备(192.168.1.100:12345 → 100.1.1.1:20001)
- 外网不能主动访问内网设备
场景:家庭宽带、虚拟机 NAT 模式
静态 NAT
一句话:一个内网 IP 固定对应一个公网 IP,一对一绑定。
- 内网某台设备独占一个公网 IP
- 外网可以主动访问这台设备
- 需要多个公网 IP
场景:公司对外服务器(Web 服务器、邮件服务器)
Easy IP 与 静态 NAT 对比总结
| 对比项 | Easy IP | 静态 NAT |
|---|---|---|
| 映射关系 | 多对一 | 一对一 |
| 公网 IP 数量 | 1 个即可满足 | 需要多个公网 IP |
| 端口转换 | 支持端口转换 | 不转换端口 |
| 外网主动访问内网 | 不支持 | 支持 |
| 配置复杂度 | 配置简单 | 配置中等 |
| 典型场景 | 家庭上网、虚拟机共享上网 | 对外提供服务器、业务发布 |
2.4 VMware虚拟机克隆
基于已配置好NAT模式的虚拟机jxserver ,通过链接克隆 生成新虚拟机jxserver2(链接克隆占用存储空间小,依托原虚拟机运行),并完成两台虚拟机的差异化配置,实现互相访问。
(1)克隆核心步骤
- 关闭原虚拟机jxserver,在VMware中右键该虚拟机,选择「管理-克隆」;
- 克隆源选择「虚拟机当前状态」,克隆类型选择「创建链接克隆」(推荐);
- 命名新虚拟机为jxserver2,选择存储空间充足的目录,点击完成即可。
(2)两台虚拟机差异化配置(避免IP和主机名冲突)
原虚拟机jxserver(客户端,命名为client)
- 永久修改主机名:
hostnamectl set-hostname client(重新打开终端生效); - 确认IP配置:
192.168.8.100/24,确保网卡已激活。
克隆虚拟机jxserver2(服务端,命名为server)
- 永久修改主机名:
hostnamectl set-hostname server(重新打开终端生效); - 配置新的静态IP:
nmcli connection modify ens160 ipv4.method manual ipv4.addresses 192.168.8.101/24 connection.autoconnect yes; - 激活网卡:
nmcli connection up ens160; - 测试互访:
ping -c 4 192.168.8.100(测试与client虚拟机的内网互通)。
三、sshd服务(Linux远程管理核心)
sshd 是基于SSH(Secure Shell,安全外壳协议)的远程管理服务,是Linux服务器远程操作的必备服务,所有远程操作均依托上述NAT模式配置的两台虚拟机(client为客户端,server为服务端)完成,核心讲解服务基础、口令远程、修改端口远程、无密码远程四种核心操作。
3.1 sshd服务基础信息
- 核心作用:为远程客户机提供安全的Shell远程操作环境,所有操作均加密传输;
- 必备软件:
openssh-server、openssh(Linux系统默认安装); - 服务名:
sshd(所有服务管理操作均基于此名称); - 核心配置文件:
/etc/ssh/sshd_config(服务端专属配置文件,修改后需重启服务生效); - 默认端口号:22(端口号是服务的唯一标识,可根据需求自定义修改。只有服务运行才会呈现,服务停止后端口消失,且端口是"动态呈现"的。);
- 操作前提:服务端需提前关闭firewalld防火墙、将SELinux设为disabled(避免拦截远程连接)。
端口的"动态呈现":
| 状态 | 端口表现 |
|---|---|
| 服务运行正常 | 端口处于 LISTEN 状态 |
| 服务崩溃/未启动 | 端口 不存在 (ss 看不到) |
| 服务启动中 | 短暂延迟后端口出现 |
| 服务被防火墙拦截 | 端口存在,但外部无法访问 |
3.2 查看sshd服务运行状态
三种验证方式,任选其一即可确认sshd服务是否正常运行(服务端执行):
- 查看服务整体状态:
systemctl status sshd; - 查看端口监听状态:
ss -nutlp | grep :22; - 查看服务相关进程:
ps aux | grep sshd。
3.3 口令认证远程管理(基础方式,需输入密码)
核心命令 :ssh [选项] 目标主机用户@目标主机IP,其中-p用于指定端口,默认22端口可省略。
实操步骤(client客户端远程连接server服务端)
- 客户端执行远程命令:
ssh root@192.168.8.101; - 首次连接需输入
yes确认信任对方主机(仅首次需要); - 输入服务端root用户密码(输入时无任何显示,直接输入后回车即可);
- 验证远程成功:终端主机名会从
client变为server,可执行hostname(查看主机名)、ifconfig ens160 | head -2(查看服务端IP); - 退出远程连接:
exit(返回客户端client的终端)。
3.4 自定义端口远程管理
修改服务端sshd的默认端口(22→8022),实现指定端口的远程连接,核心操作是修改配置文件+重启服务,所有步骤在服务端执行。
(1)服务端(server)配置步骤
- 备份配置文件(防止修改出错,可回滚):
cp /etc/ssh/sshd_config /opt; - 编辑配置文件,定位至端口配置行:
vim +17 /etc/ssh/sshd_config(+17表示直接将光标定位至第17行); - 修改端口号:去掉行首的注释符
#,顶格写为Port 8022; - 重启sshd服务,使配置生效:
systemctl restart sshd; - 验证端口生效:
ss -nutlp | grep :8022(确认8022端口处于监听状态)。
(2)客户端(client)指定端口远程
- 核心命令:
ssh -p 8022 root@192.168.8.101,后续输入密码、验证、退出步骤与口令认证一致。
(3)恢复默认端口
服务端重新编辑配置文件:vim +17 /etc/ssh/sshd_config,将Port 8022改回Port 22,重启sshd服务即可,客户端恢复默认命令远程。
3.5 无密码认证远程管理(推荐方式,免密登录)
sshd服务支持口令认证 和无密码认证 两种方式,无密码认证优先级高于口令认证 ,核心原理是:在客户端生成密钥对(公钥+私钥),将公钥拷贝至服务端,服务端验证密钥配对后,即允许客户端免密登录。
用通俗易懂的话讲,客户端相当于你,服务端相当于你的公司,客户端每次远程服务端都需要输入密码,相当于每次你进入公司打卡都要输入密码。无密码认证就相当你做了一张nfc卡,每次打卡刷卡就行了,不用再输密码。
制作密钥对(公钥+私钥)是在客户端进行的,然后把公钥复制到服务端即可。私钥是可以给别的对象使用的,但会相当麻烦,涉及权限、安全、用户冲突等各种问题,因此现实工作中基本不会这样做。
实操步骤(所有核心操作在client客户端执行)
- 生成密钥对:
ssh-keygen(全程回车即可,默认生成至/root/.ssh/目录); - 将客户端公钥拷贝至服务端:
ssh-copy-id root@192.168.8.101(首次拷贝需输入服务端root密码); - 免密远程测试:
ssh root@192.168.8.101(无需输入密码,直接登录服务端); - 退出远程连接:
exit。
演示:
bash
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase): ##默认无密码,无需设置密码
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:kExJ+u/cDNhsrS2spWQhIrfqAWQCstJMV696a3qafjI root@hkclient
The key's randomart image is:
+---[RSA 3072]----+
|o . .o+. |
|o= . +.o |
|+oo . + . |
|= . o |
|o o . + S |
|.o o o * . |
| .. . =.B . |
| .. E=+Bo* |
|o. .=O+.+.+ |
+----[SHA256]-----+
四、Windows远程Linux的两种实操方式
Windows系统远程Linux的所有操作均基于sshd服务,需提前保证Linux端sshd服务正常运行、Windows与Linux网络互通,主要分为原生命令行 和第三方工具两种方式,第三方工具因操作便捷成为首选。
- Windows cmd原生远程
- 前提:Windows系统需提前配置OpenSSH组件;
- 操作:打开cmd命令行,直接执行
ssh 用户名@LinuxIP(与Linux客户端的远程命令完全一致),默认22端口可省略,指定端口需加-p参数。
- 第三方远程工具(推荐)
- 常用工具:WindTerm(解压即用,文档重点推荐)、Xshell、FinalShell、MobaXterm;
- WindTerm核心实操:
- 解压WindTerm安装包,打开软件后,点击「新建-SSH会话」;
- 输入会话信息:主机(Linux的IP,如192.168.8.101)、端口(22)、用户名(root);
- 字符集设置为UTF-8(防止中文乱码),保存会话后,点击连接,输入Linux密码即可远程。
五、本章核心总结
Day05的内容是Linux入门的网络与远程管理基础,所有操作均以实操为核心,需熟练掌握的核心技能如下:
- 理解防火墙的核心作用,能独立执行firewalld防火墙的临时关闭+永久禁用操作;
- 掌握VMware两种核心网络模式的工作原理+完整实操配置:仅主机模式(实现内网互通)、NAT模式(实现内网+外网互通);
- 会使用VMware的链接克隆功能生成新虚拟机,并完成主机名、IP的差异化配置,避免冲突;
- 掌握sshd服务的基础管理:查看服务状态、口令认证远程 、修改端口远程 、无密码认证远程(核心,实际工作中最常用);
- 掌握Windows远程Linux的两种方式,尤其是第三方工具(WindTerm)的基础配置与使用,能独立实现Windows到Linux的远程操作。