73.telnet:测试端口连通性

用法:telnet  主机名或IP 端口号

测试目标主机的指定端口是否开放,检查网络服务连通性。

eg:

telnet www.baidu.com 80

# 说明:

# - 如果连接成功,显示 "Connected to ..."。

# - 如果失败,显示 "Connection refused" 或 "Unable to connect"。

这会测试百度的 HTTP 服务(80 端口)是否可以连接。

常用场景:

测试服务器的特定服务是否正常运行。

检查防火墙是否阻止了指定端口。


74.tcpdump:网络数据包捕获工具

用法:tcpdump  [选项]  [过滤条件]

强大的网络抓包工具,支持实时查看或保存数据包,用于分析网络问题。

# tcpdump 常用选项:

# -i:指定监听的网络接口(如 eth0,ens33)。

# -w:将捕获的数据包保存到文件(如 capture.pcap)。

# -r:从文件中读取并解析数据包(如读取保存的 pcap 文件)。

# -n:不解析主机名和服务名称,直接显示 IP 和端口号。

# -nn:同时禁用主机名和端口解析,显示数字地址和端口号。

# -c:限制捕获的数据包数量(如 -c 10 表示捕获 10 个包后退出)。

# -X:显示数据包的十六进制和 ASCII 内容。

# -A:以 ASCII 格式显示数据包内容(适合查看 HTTP 数据)。

# -v:显示数据包的详细信息

# 1.捕获指定接口上的所有数据包

tcpdump -i eth0

# 2.捕获并保存数据包到文件

tcpdump -i eth0 -w capture.pcap

# 3.捕获来自特定 IP 的数据包

tcpdump -i eth0 src 192.168.1.100

# 4.捕获目标 IP 的数据包

tcpdump -i eth0 dst 192.168.1.200

# 5.捕获特定端口(如 80)上的流量

tcpdump -i eth0 port 80

# 6.捕获来自特定源 IP 且目标端口为 80 的数据包,并保存到文件 capture.pcap 里

tcpdump -i eth0 src 192.168.1.100 and dst port 80 -w capture.pcap -nn -v # 比较常用!

·抓取数据包: 用 tcpdump -i 接口 监听网络流量。

·保存数据分析: 用 -w 保存为文件,配合 Wireshark 等工具分析。

·过滤特定流量: 配合 src、dst 或 port 筛选数据包。

·查看详细信息: 用 -v 或更详细的 -vv 输出抓包细节。


75.nc (Netcat):网络工具的瑞士军刀

用法:nc 选项 [主机名或IP] [端口号]

支持 TCP 和 UDP 协议,用于网络调试、文件传输、服务模拟等。

# nc 常用选项:

# -l:监听模式,用于在本地创建服务器,等待客户端连接。

# -z:扫描模式,检查端口是否开放,不发送任何数据。

# -v:启用详细模式,输出更多的调试信息。

# -u:使用 UDP 协议进行连接,而不是默认的 TCP。

# -p:指定源端口。

# -w:设置超时时间,单位为秒。

# -n:禁用 DNS 解析,直接使用 IP 地址,而不是域名。

# -v :详细输出,显示连接过程中的所有信息。

# 1.连接到远程主机的指定端口(TCP连接)

nc example.com 80

# 2.监听本地端口(创建服务器,等待连接)

nc -l 12345

# 3.通过 netcat 发送文件到远程主机

# 在远程机器上执行:nc -l 12345 > received_file.txt

# 在本地机器上执行:nc remote_host 12345 < file_to_send.txt

# 4.使用 UDP 协议发送数据

nc -u -l 12345  # 监听 UDP 端口 12345

nc -u remote_host 12345  # 发送数据到指定 UDP 端口

# 5.测试端口是否开放(可以用来检查某些端口是否能够连接)

nc -zv example.com 80 443

# 6.扫描端口范围(测试哪些端口开放)

nc -zv example.com 1-1000

# 7.通过 nc 实现简易的端到端聊天

# 在一台机器上执行:nc -l 12345

# 在另一台机器上执行:nc localhost 12345

# 然后你就可以发送消息了

# 8.创建一个简单的 HTTP 请求

echo -e "GET / HTTP/1.1\r\nHost: example.com\r\n\r\n" | nc example.com 80

# 9.发送数据并接收响应

echo "Hello, World!" | nc example.com 80

76.ip/ifconfig:查看ip地址

用法:ip  [命令]  [选项]

lo:访问自己

ens33:访问别人

# 1. 查看ip地址(类似ifconfig

ip addr show/ip -a

# 2. 查看路由表

ip route show

# 3. 启用网络接口

sudo ip link set eth0 up

# 4. 禁用网络接口

sudo ip link set eth0 down

使用ifconfig需要先下载yum install net-tools(eth0改为ens33)

ifconfig ens33:0 192.168.8.11/24 down


补充一点:修改ip地址

使用ip命令(推荐)

1. 临时添加一个新 IP 地址(不删除原有地址)

ip addr add 192.168.1.100/24 dev eth0

192.168.1.100:新 IP 地址

/24:子网掩码(等同于 255.255.255.0)

eth0:网络接口名称(需替换为实际接口名,如ens33)

2. 临时修改(替换)当前 IP 地址

ip addr flush dev eth0                      # 清空当前所有IP配置

ip addr add 192.168.1.101/24 dev eth0   # 添加新IP

3. 临时添加第二个 IP 地址(多 IP 配置)

ip addr add 192.168.1.102/24 dev eth0 label eth0:1

eth0:1:虚拟接口名称(可自定义,用于区分多个 IP)

4. 激活 / 禁用网络接口

ip link set eth0 up    # 启用接口

ip link set eth0 down  # 禁用接口

使用ifconfig命令(传统方法,部分系统已弃用)

1. 临时添加一个新 IP 地址

ifconfig eth0:1 192.168.1.103 netmask 255.255.255.0 up

eth0:1:虚拟接口名称

192.168.1.103:新 IP 地址

2. 临时修改(替换)当前 IP 地址

ifconfig eth0 192.168.1.104 netmask 255.255.255.0

3. 激活 / 禁用网络接口

ifconfig eth0 up      # 启用接口

ifconfig eth0 down   # 禁用接口

注意事项

临时生效:上述方法配置的 IP 地址在重启网络服务或系统后会丢失。若需永久保存,需修改配置文件(如/etc/network/interfaces或/etc/sysconfig/network-scripts/ifcfg-eth0)。

权限要求:执行上述命令需要 root 权限(需使用sudo或切换到 root 用户)。

检查接口名称:使用ip a或ifconfig查看实际网络接口名称(如eth0、ens33、enp0s3等)。

冲突避免:确保新 IP 地址不在 DHCP 分配范围内,避免与其他设备冲突。

验证配置

配置完成后,使用以下命令检查 IP 地址是否生效:

ip a show eth0        # 查看接口详细信息

ping 192.168.1.1     # 测试网络连通性


77.nmtui:半图形化网络管理命令

Network Manage tui

·修改ip地址  等价于vim  /etc/sysconfig/network-script/ifcfg-ens33

·重启网卡           systemctl  restart  network

·修改主机名         hostnamectl  set-hostname 主机名


78.ssh:安全的远程连接

·通过非对称加密,实现数据传输的安全性。

·ssh协议

SSH(Secure Shell)协议是一种用于在网络中实现安全远程登录、文件传输和命令执行的加密网络协议。它通过加密技术保护数据在传输过程中的安全性,有效替代了传统的明文传输协议(如 Telnet、FTP),广泛应用于服务器管理、网络设备配置等场景。

一、SSH 协议的核心功能

远程登录

允许用户通过加密连接登录到远程服务器,就像在本地操作一样执行命令。例如,管理员可以通过 SSH 登录到云服务器进行配置。

安全文件传输

基于 SSH 协议的衍生工具(如 SCP、SFTP)支持加密的文件上传和下载,避免文件内容被窃听或篡改。

端口转发(隧道)

可建立加密 “隧道”,将其他协议(如 HTTP、MySQL)的流量通过 SSH 传输,实现安全的跨网络访问(例如访问内网数据库)。

远程命令执行

支持在本地直接向远程服务器发送命令并获取结果,无需交互式登录(常用于脚本自动化)。

二、SSH 的加密原理

SSH 协议通过非对称加密和对称加密结合的方式保证安全性,主要过程如下:

握手阶段

客户端与服务器建立 TCP 连接后,协商 SSH 版本和加密算法(如 AES、ChaCha20)。

服务器向客户端发送公钥,客户端验证公钥合法性(首次连接时需手动确认)。

密钥交换

客户端生成一个临时对称密钥,用服务器的公钥加密后发送给服务器。

服务器用私钥解密得到对称密钥,此后双方使用该密钥对所有通信内容进行加密(对称加密效率更高)。

身份认证

密码认证:客户端发送加密后的密码,服务器验证。

密钥认证(更安全):客户端生成一对密钥(公钥 + 私钥),公钥存放在服务器,登录时服务器用公钥验证客户端私钥,无需输入密码。

ssh服务属于c/s  Client/Server;

客户端远程连接:

ssh  用户名@ip/主机名/域名  [-p 端口号 (22)]

是否同意加密?yes

输入对方密码

exit 退出

允许指定用户进行登录(白名单)

在/etc/ssh/sshd_config 配置文件中设置AllowUsers选项,

在配置文件末尾添加行格式如下(例如允许用户tom通过192.168.8.30登录)。

AllowUsers tom@192.168.8.30

配置了指定用户或者用户组允许登录后,默认拒绝其他所有用户或者用户组。

sshd:服务端,安装在服务器上(CentOS默认安装)

CentOS:yum  install  openssh-server

Ubuntu:sudo  apt  install  openssh-server

修改sshd的配置文件:

vim  /etc/ssh/sshd_config

systemctl  restart  sshd   #重启服务

·跳板机:跳板机(Jump Server)是一种部署在网络边界或内部网络中的专用服务器,作为用户访问目标设备(如生产服务器、数据库、网络设备等)的中间节点,起到集中管控、安全审计、权限隔离的作用。

密钥验证

客户端的公钥存放到服务端,每次登录通过公钥进行验证,省略密码。

  1. 在客户端生成密钥对;私钥保存在本地,保证私钥的安全;

ssh-keygen                #默认三个回车

  1. 将公钥发送到服务端/root/.ssh/authorized_keys进行保存;

ssh-copy-id  用户名@ip   #输入密码(以下ip都是服务器的ip)

  1. 之后进行登录自动识别身份;

ssh  root@192.168.8.20

XShell免密登录

1、工具——新建用户密钥生成向导——默认,下一步——完成

属性里可以看公钥,复制粘贴到服务器,vim .ssh/authorized_keys第二行

2、工具——身份验证配置文件——密钥类型:RSA;密钥长度:2048;下一步——默认,下一步——点刚刚设置的,密钥很多个就点第一个——点公钥,把下面一长串复制到要登陆的服务器里面(服务器打开vim  .ssh/authorized_keys如何粘贴到第二行)——点菜单栏里的断开连接(在编辑下面)——用户名输入root——选择密钥登录(public key),直接确定。


79.scp:远程文件复制(和cp格式相似,只是改成了远程的路径)

命令格式:

上传:将本地文件发送到目标服务器上;

scp  [-r]  原文件  root@ip:/目标路径

客户端   服务器

下载:将服务器上的文件下载到本地;

scp  [-r]  root@ip:/目标路径  本地目录

服务器               客户端

scp是全量复制:从头到尾全部复制,速度相对较慢


80.rsync:高效文件同步工具

·rsync是增量复制、差异复制,支持增量传输,只同步变化的部分,比 scp 更高效。

只复制增加和修改的文件,一般用来做备份

·格式:rsync   [选项]   本地文件   root@ip:路径

            rsync   [选项]   root@ip:文件   本地路径

常用选项:

-a,--archive归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rlptgoD。

-v,--verbose详细模式输出。

-z:--compress对备份的文件在传输时进行压缩处理。

--delete:删除目标中源目录不存在的文件。

-e:指定远程传输方式(如 SSH)。

# rsync同步目录或文件

rsync -avz --delete redis-6.2.14 root@192.168.8.20:/root


问题:如何实现实时同步?

接下来,我们将配置rsync和inotify来实现实时文件同步:

1.生成SSH密钥对并上传公钥 在服务端生成SSH密钥对,并将公钥上传到客户端,以便实现无密码的SSH连接。

2.创建同步脚本 在服务端创建一个名为sync.sh的脚本文件,并添加以下内容:

#!/bin/bash

while inotifywait -r -e modify,create,delete,move /data/;do

  rsync -avz /data/ root@192.168.8.11:/opt/data/

done

3.授予脚本执行权限并执行

chmod +x sync.sh

./sync.sh   ##脚本会一直运行,并在`/data/`目录中的文件发生变化时进行实时同步

4.测试同步

在服务端/data目录下新建名为12345的文件,服务端提示/data创建了12345文件,并开始发送增量文件。 切换到客户端可以看到/data/目录下所有文件已实时同步到客户端/opt/data

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/bicheng/90021.shtml
繁体地址,请注明出处:http://hk.pswp.cn/bicheng/90021.shtml
英文地址,请注明出处:http://en.pswp.cn/bicheng/90021.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【PTA数据结构 | C语言版】我爱背单词

本专栏持续输出数据结构题目集&#xff0c;欢迎订阅。 文章目录题目代码题目 作为一个勤奋的学生&#xff0c;你在阅读一段英文文章时&#xff0c;是否希望有个程序能自动帮你把没有背过的生词列出来&#xff1f;本题就请你实现这个程序。 输入格式&#xff1a; 输入第 1 行给…

如何使用电脑连接小米耳机(红米 redmi耳机)

如何使用电脑连接小米&#xff08;红米 redmi&#xff09;耳机Redmi耳机连接电脑的具体步骤如下注意事项和常见问题解决方法&#xff1a;Redmi耳机连接电脑的具体步骤如下 打开耳机仓盖&#xff1a; 首先&#xff0c;打开Redmi耳机的充电仓盖&#xff0c;但不需要取出耳机。进…

排序算法—交换排序(冒泡、快速)(动图演示)

目录 十大排序算法分类​编辑 冒泡排序 算法步骤&#xff1a; 动图演示&#xff1a; 性能分析&#xff1a; 代码实现&#xff08;Java&#xff09;&#xff1a; 快速排序&#xff08;挖坑法&#xff09; 算法步骤&#xff1a; 动图演示&#xff1a; 性能分析&#xff1…

2023 年 5 月青少年软编等考 C 语言八级真题解析

目录 T1. 道路 思路分析 T2. Rainbow 的商店 思路分析 T3. 冰阔落 I 思路分析 T4. 青蛙的约会 思路分析 T1. 道路 题目链接:SOJ D1216 N N N 个以 1 ∼ N 1 \sim N 1∼N 标号的城市通过单向的道路相连,每条道路包含两个参数:道路的长度和需要为该路付的通行费(以金币的数…

【vue-4】深入理解 Vue 3 中的 v-for 指令

Vue.js 作为现代前端框架的代表之一&#xff0c;其模板指令系统提供了强大的数据绑定和渲染能力。其中&#xff0c;v-for 指令是 Vue 中最常用且最重要的指令之一&#xff0c;它允许我们基于数据源循环渲染元素或组件。在 Vue 3 中&#xff0c;v-for 保留了一贯的简洁语法&…

《R for Data Science (2e)》免费中文翻译 (第1章) --- Data visualization(1)

写在前面 本系列推文为《R for Data Science (2)》的中文翻译版本。所有内容都通过开源免费的方式上传至Github&#xff0c;欢迎大家参与贡献&#xff0c;详细信息见&#xff1a; Books-zh-cn 项目介绍&#xff1a; Books-zh-cn&#xff1a;开源免费的中文书籍社区 r4ds-zh-cn …

界面组件DevExpress WPF中文教程:Grid - 如何完成节点排序和移动?

DevExpress WPF拥有120个控件和库&#xff0c;将帮助您交付满足甚至超出企业需求的高性能业务应用程序。通过DevExpress WPF能创建有着强大互动功能的XAML基础应用程序&#xff0c;这些应用程序专注于当代客户的需求和构建未来新一代支持触摸的解决方案。 无论是Office办公软件…

【Prometheus+Grafana篇】监控通过Keepalived实现的MySQL HA高可用架构

&#x1f4ab;《博主主页》&#xff1a;    &#x1f50e; CSDN主页__奈斯DB    &#x1f50e; IF Club社区主页__奈斯、 &#x1f525;《擅长领域》&#xff1a;擅长阿里云AnalyticDB for MySQL(分布式数据仓库)、Oracle、MySQL、Linux、prometheus监控&#xff1b;并对…

k8s:利用kubectl部署postgis:17-3.5

1.离线环境CPU:Hygon C86 7285 32-core Processor 操作系统&#xff1a;麒麟操作系统 containerd&#xff1a;1.7.27 Kubernetes:1.26.12 KubeSphere:4.1.2 kubekey&#xff1a;3.1.10 Harbor:2.13.1 Postgis:17-3.52.创建并执行postgresql-headless.yaml2.1创建apiVersion: v1…

Mysql(存储过程)

目录 介绍 特点 存储过程创建 系统变量(不重要) 用户变量 局部变量 if 判断 参数&#xff08;in, out, inout) case while repeat loop 游标和条件处理程序-handler 存储函数 为了防止以后忘记&#xff0c;反复去看视频浪费时间&#xff0c;特写一篇 介绍 存储过程…

Effective Python 第14条: 用sort方法的key参数来表示复杂的排序逻辑

一、引言&#xff1a;Python排序功能的重要性 在Python开发中&#xff0c;排序功能是一个常见的需求。无论是处理数据、优化算法&#xff0c;还是提升用户体验&#xff0c;排序都是不可或缺的一部分。Python的列表内置了sort方法&#xff0c;提供了灵活的排序功能。然而&#…

react+antd 可拖拽模态框组件

DraggableModal 可拖拽模态框组件使用说明 概述 DraggableModal 是一个基于 dnd-kit/core 实现的可拖拽模态框组件&#xff0c;允许用户通过拖拽标题栏来移动模态框位置。该组件具有智能边界检测功能&#xff0c;确保模态框始终保持在可视区域内。 功能特性 ✅ 可拖拽移动&…

MySQL的基本操作及相关python代码

下面为你介绍 MySQL 的基本操作,以及对应的 Python 代码实现。我会先介绍 SQL 基本操作,再展示如何用 Python 连接 MySQL 并执行这些操作。 一、MySQL 基本操作(SQL 语句) 1. 连接数据库 bash mysql -u root -p2. 创建数据库 sql CREATE DATABASE testdb;3. 使用数据…

Armbian(斐讯N1)安装xfce桌面以及远程环境

安装xfce桌面以及vncserver(远程连接) 安装xfce桌面 apt-get install xfce4 xfce4-goodies xorg dbus-x11 x11-xserver-utils ubuntu的安装gdm3&#xff0c; apt install gdm3 debian安装lightdm。 apt install lightdm 安装vnc server apt-get install tightvncserver 中文字体…

【Oracle】Oracle 11g打补丁时遇到opatch apply命令无法识别

⚙️ 1. 使用完整路径执行命令 问题原因&#xff1a;若未将$ORACLE_HOME/OPatch加入系统PATH环境变量&#xff0c;直接输入opatch apply会因系统无法定位命令而报错。 解决方案&#xff1a; 改用绝对路径执行&#xff1a; $ORACLE_HOME/OPatch/opatch apply例如&#xff1a; /u…

单例模式详细讲解

一.定义单例模式是一种创建型设计模式&#xff0c;确保一个类只有一个实例&#xff0c;并提供一个全局访问点特点&#xff1a;1.构造函数和析构函数私有化2.禁用拷贝构造函数和赋值运算符重载&#xff08;delete&#xff09;3.利用静态成员函数和静态成员变量来给外界提供访问二…

KORGym:评估大语言模型推理能力的动态游戏平台

KORGym&#xff1a;评估大语言模型推理能力的动态游戏平台 现有评估基准多受领域限制或 pretraining 数据影响&#xff0c;难以精准测LLMs内在推理能力。KORGym平台应运而生&#xff0c;含50余款游戏&#xff0c;多维度评估&#xff0c;本文将深入解析其设计、框架、实验及发现…

ISPDiffuser文章翻译理解

ISPDiffuser: Learning RAW-to-sRGB Mappings with Texture-Aware Diffusion Models and Histogram-Guided Color Consistency翻译 Type: Conference paper Author: Yang Ren1,4, Hai Jiang1,4, Menglong Yang1,2,†, Wei Li1,2, Shuaicheng Liu3,4,† Select: ⭐️⭐️⭐️⭐…

C++线程池执行步骤分析,总结线程池流程

线程池流程总结&#xff1a;1、构造函数中创建线程&#xff0c;并添加到线程池&#xff08;构造函数返回时&#xff0c;线程自动启动&#xff0c;并停在等待wait&#xff1a;从线程池取出一个任务处&#xff09;&#xff1b; 2、主线程中添加任务&#xff0c;到任务队列。并用“…

Java 通过 HttpURLConnection发送 http 请求

问题&#xff1a; 在调试 kill 接口的时候&#xff0c;对方的服务用的是 Django RestFramework 框架提供的接口&#xff0c;用 python 请求时得到的内容如下&#xff1a; ➜ ~ python3 test.py <Response [200]> "true" // 对应的代码是 print(response, r…