当前位置: 首页 > news >正文

Linux服务器搭建超简易跳板机连接阿里云服务器

简介

想要规范内部连接阿里云云服务器的方式,但是最近懒病犯了,先搞一个简易式的跳板机过渡一下,顺便在出一个教程,其他以后再说!

配置方法

创建密钥
登录阿里云,找到云服务器ECS控制台,点击密钥对:
在这里插入图片描述ps:都用阿里云服务器了,谁还自己创建密钥,咋方便咋来。
点击创建密钥对,输入信息:
在这里插入图片描述
ps:注意红框处,这个密钥只能下载这一次,弄丢了,就没有了。
接下来绑定密钥对:
在这里插入图片描述
绑定完成后就可以使用密钥对登录了,使用SSH(Secure Shell)客户端软件远程登录,只要导入密钥就可以了:
在这里插入图片描述
ps:我这边使用的工具是Electerm,下载链接:https://github.com/electerm/electerm
跳板机配置
接下来就是配置跳板机了,首先创建一台虚拟机,然后远程登录上去,先测试是否可以使用密钥对登录到云服务器:
在这里插入图片描述
脚本配置

#!/bin/bash# 定义多个云服务器的配置信息,test.pem是我的密钥,请按照实际填写。
servers=("192.168.0.1 ecs-user /home/test/test.pem""xxx.xxx.xxx.xxx ecs-user test.pem""yyy.yyy.yyy.yyy ecs-user test.pem"# 添加更多云服务器的配置信息
)# 显示可选的云服务器列表供用户选择
echo "请选择要登录的云服务器:"
for ((i=0; i<${#servers[@]}; i++)); doserver_info=(${servers[$i]})echo "$i. ${server_info[0]}"
done# 提示用户输入选择
read -p "请输入数字选择要登录的云服务器: " choice# 根据用户选择连接相应的云服务器
chosen_server=(${servers[$choice]})
ssh -i ${chosen_server[2]} ${chosen_server[1]}@${chosen_server[0]}

脚本释义

#!/bin/bash: 指定解释器为 Bash,即告诉系统这是一个 Bash 脚本。servers=(...): 定义了一个名为 servers 的数组,其中包含多个云服务器的配置信息。每个配置信息由空格分隔的三个部分组成:服务器 IP 地址、用户名和密钥文件路径。echo "请选择要登录的云服务器:": 输出提示消息,提示用户选择要登录的云服务器。for ((i=0; i<${#servers[@]}; i++)): 循环遍历 servers 数组,${#servers[@]} 表示数组元素的个数。server_info=(${servers[$i]}): 将当前循环到的服务器配置信息拆分为数组 server_info,其中 ${servers[$i]} 表示当前数组元素的值。echo "$i. ${server_info[0]}": 输出每个服务器的序号和 IP 地址,其中 $i 是数组索引,${server_info[0]} 表示服务器的 IP 地址。read -p "请输入数字选择要登录的云服务器: " choice: 提示用户输入要连接的云服务器的序号,并将用户的选择存储在变量 choice 中。chosen_server=(${servers[$choice]}): 根据用户选择的序号,获取相应的云服务器配置信息,并存储在数组 chosen_server 中。ssh -i ${chosen_server[2]} ${chosen_server[1]}@${chosen_server[0]}: 使用 SSH 连接到用户选择的云服务器。${chosen_server[2]} 表示密钥文件路径,${chosen_server[1]} 表示用户名,${chosen_server[0]} 表示服务器 IP 地址。

wq保存看看效果:
在这里插入图片描述
ps:这里我使用了bash test.sh(非root用户记得加sudo,sudo权限都没有,那你。。。)这个命令是因为脚本使用了 bash 的数组(array)功能,我这个环境使用的解释器不支持此功能。在有些系统中,/bin/sh 实际上可能链接到更简化的解释器,不支持数组语法,这是问题,需要改配置,但是现在既然使用bash可以运行,那就懒得改了。
使用 shc加密脚本(只防君子,不妨小人):

sudo apt-get update
sudo apt-get install shc
shc -f test.sh
sudo ./test.sh.x

在这里插入图片描述
OK,这样一个懒人简易版跳板机就搭建完成了。

今日推荐

游戏:《崩坏-星穹铁道》
推荐理由:我喜欢玩!
在这里插入图片描述

相关文章:

Linux服务器搭建超简易跳板机连接阿里云服务器

简介 想要规范内部连接阿里云云服务器的方式&#xff0c;但是最近懒病犯了&#xff0c;先搞一个简易式的跳板机过渡一下&#xff0c;顺便在出一个教程&#xff0c;其他以后再说&#xff01; 配置方法 创建密钥 登录阿里云&#xff0c;找到云服务器ECS控制台&#xff0c;点击…...

Windows Server 各版本搭建文件服务器实现共享文件(03~19)

一、Windows Server 2003 打开服务器&#xff0c;点击左下角开始➡管理工具➡管理您的服务器➡添加或删除角色 点击下一步等待测试 勾选自定义配置&#xff0c;点击下一步 选择文件服务器&#xff0c;点击下一步 勾选设置默认磁盘空间&#xff0c;数据自己更改&#xff0c;最…...

ARM总结and复习

安装交叉编译工具链 a. 为什么安装 因为arm公司的指令集在不断迭代升级&#xff0c;指令集日益增多,而架构是基于指令集研发的&#xff0c;所以架构不一样&#xff0c;指令集也不一样 eg:arm架构使用的是arm指令集 x86架构使用的是x86指令集 而我们日常开发环境中linux的架构…...

非功能测试的定义、类型和示例

软件已从推动者转变为不同行业企业成功的核心支柱。因此&#xff0c;非功能测试活动成为人们关注的焦点。然而&#xff0c;许多技术和质量保证专业人员并没有意识到非功能测试的必要性。 他们必须了解什么是非功能测试以及为什么必须鼓励将其作为企业应用程序开发项目的实践。…...

Angular基础---HelloWorld---Day1

文章目录 1. 创建Angular 项目2.对Angular架构的最基本了解3.创建并引用新的组件&#xff08;component&#xff09;4.对Angular架构新的认识&#xff08;多组件&#xff09;5.组件中业务逻辑文件的编辑&#xff08;ts文件&#xff09;6.标签中属性的绑定(1) ID的绑定(2) class…...

k8s部署项目常见的问题及解决方案

在Kubernetes&#xff08;k8s&#xff09;部署项目中&#xff0c;确实存在一些常见问题和挑战。以下是这些问题及其相应的解决方案&#xff1a; 网络插件问题&#xff1a; 问题&#xff1a;网络插件配置不当或版本不兼容可能导致Pod间通信问题。解决方案&#xff1a;重新部署或…...

Redis实现乐观锁+秒杀场景demo

在Redis中&#xff0c;乐观锁通常是通过使用 WATCH、MULTI 、EXEC和DISCARD命令实现的。这种乐观锁机制允许客户端在执行事务期间监视一个或多个键&#xff0c;并且只有在事务执行期间没有其他客户端修改被监视的键时&#xff0c;才会执行事务。 应用场景&#xff1a; 库存控…...

阅读笔记 | Transformers in Time Series: A Survey

阅读论文&#xff1a; Wen, Qingsong, et al. “Transformers in time series: A survey.” arXiv preprint arXiv:2202.07125 (2022). 这篇综述主要对基于Transformer的时序建模方法进行介绍。论文首先简单介绍了Transformer的基本原理&#xff0c;包括位置编码、多头注意力机…...

WPF MVVM中List<>和ObservableCollection<>的区别与对比分析

在WPF MVVM&#xff08;模型-视图-视图模型&#xff09;架构中&#xff0c;数据绑定是实现UI与后端逻辑分离的关键特性。为了使UI能够响应后端数据的变化&#xff0c;通常需要用到特定的集合类型。在WPF中&#xff0c;最常见的两种集合类型是List< T>和ObservableCollect…...

python给企微发消息

方法一&#xff1a;webhook方式。使用群机器人给企微群发消息 import requestsdef qwxsendmessage(msg):urlhttps://qyapi.weixin.qq.com/cgi-bin/webhook/send?key6c598840-804a-4eb5-a999-a023313 #url换成自己群机器人的webhookurldata{msgtype:text,text:{content:msg}}…...

TCP/IP状态迁移

TCP&#xff08;传输控制协议&#xff09;是一种面向连接的流式控制协议&#xff0c;它定义了不同的状态以管理通信过程中的连接。TCP 状态迁移描述了 TCP 连接在不同状态之间的转换过程&#xff0c;常见的 TCP 状态包括 CLOSED、LISTEN、SYN_SENT、SYN_RECEIVED、ESTABLISHED、…...

C语言实现各类排序算法

排序算法是计算机科学中的一个重要概念,它是一种将一个无序的数列重新排列成有序的方法。常见的排序算法有: 选择排序&#xff08;Selection Sort&#xff09; 选择排序是一种简单直观的排序演算法。它的工作原理:首先在未排序序列中找到最小(大)元素&#xff0c;存放到排序序…...

Network LSA 结构简述

Network LSA主要用于描述一个区域内的网络拓扑结构&#xff0c;包括网络中的路由器和连接到这些路由器的网络。它记录了每个路由器的邻居关系、连接状态以及连接的度量值&#xff08;如带宽、延迟等&#xff09;&#xff0c;以便计算最短路径和构建路由表。display ospf lsdb n…...

揭示IP风险画像的作用与价值

在当今数字化时代&#xff0c;互联网的快速发展为企业和个人带来了巨大的机遇&#xff0c;同时也带来了各种安全风险和威胁。随着网络攻击手段的不断升级和演变&#xff0c;传统的安全防御手段已经无法满足对抗复杂多变的网络威胁的需求。IP风险画像作为一种新型的网络安全解决…...

[python] dataclass 快速创建数据类

在Python中&#xff0c;dataclass是一种用于快速创建数据类的装饰器和工具。自Python 3.7起&#xff0c;通过标准库中的dataclasses模块引入。它的主要目的是简化定义类来仅存储数据的代码量。通常&#xff0c;这样的类包含多个初始化属性&#xff0c;但没有复杂的方法&#xf…...

opencv实现图像的融合

实现图像的融合并且输出一张jpg格式的照片。 先显示一个彩色图的照片 然后我以彩色方式读取1.png&#xff0c;以灰度图方式读取3.png这张图片&#xff0c;并且用两个窗口独立地去显示(我后来发现不能把灰度图和彩色图相融合) 然后实现两个融合 #include <opencv2/highgu…...

Orbit 使用指南 02 | 在场景中生成原始对象| Isaac Sim | Omniverse

如是我闻&#xff1a; Orbit使用指南02将 深入探讨如何使用Python代码在Orbit中向场景生成各种对象&#xff08;或原始对象&#xff09;。一起探索如何生成地面平面、灯光、基本图形形状以及来自USD文件的网格。前置知识&#xff1a;如何生成空白场景&#xff0c;Orbit 使用指…...

【2024】利用python爬取csdn的博客用于迁移到hexo,hugo,wordpress...

前言 博主根据前两篇博客进行改进和升级 利用python爬取本站的所有博客链接-CSDN博客文章浏览阅读955次&#xff0c;点赞6次&#xff0c;收藏19次。定义一个json配置文件方便管理现在文件只有用户名称,后续可加配置读取用户名称&#xff0c;并且将其拼接成csdn个人博客链接ty…...

从嵌入式Linux到嵌入式Android

最近开始投入Android的怀抱。说来惭愧&#xff0c;08年就听说这东西&#xff0c;当时也有同事投入去看&#xff0c;因为恶心Java&#xff0c;始终对这玩意无感&#xff0c;没想到现在不会这个嵌入式都快要没法搞了。为了不中年失业&#xff0c;所以只能回过头又来学。 首先还是…...

蓝桥ACM培训-实战1

前言&#xff1a; 今天老师没讲课&#xff0c;只让我们做了一下几道题目。 正文&#xff1a; Problem:A 小蓝与操作序列&#xff1a; #include<bits/stdc.h> using namespace std; stack<int> a; int main(){int n,flag1,ans;string cz;cin>>n;for(int i1;…...

iOS工程师核心技术深度解析:音视频、Runtime、网络与并发实战

摘要: 本文深入探讨现代iOS工程师所需的核心技术栈,特别是围绕音视频处理、Objective-C Runtime机制、TCP/IP网络协议栈、多线程并发编程等关键领域。结合招聘岗位职责,详细剖析技术原理、最佳实践、性能优化策略及面试考察要点,旨在为开发者提供全面的技术提升路径和面试准…...

别再手动截图了!用Java POI把商品图片和详情一键导出到Excel(附完整工具类)

电商后台自动化利器&#xff1a;Java POI实现商品图文一键导出Excel实战指南 每次运营同事催你要商品数据报表时&#xff0c;还在手工复制粘贴图片吗&#xff1f;作为经历过这种折磨的开发者&#xff0c;我深知电商系统中商品信息导出的痛点——尤其是当需要将主图、详情图等多…...

Oracle 19c RAC环境下备库node1 ADG异常、asm异常分析及处理

在技术领域&#xff0c;我们常常被那些闪耀的、可见的成果所吸引。今天&#xff0c;这个焦点无疑是大语言模型技术。它们的流畅对话、惊人的创造力&#xff0c;让我们得以一窥未来的轮廓。然而&#xff0c;作为在企业一线构建、部署和维护复杂系统的实践者&#xff0c;我们深知…...

Cogito-V1-Preview-Llama-3B工具链:Keil5嵌入式开发中的文档查询助手

Cogito-V1-Preview-Llama-3B工具链&#xff1a;Keil5嵌入式开发中的文档查询助手 每次在Keil5里写STM32的代码&#xff0c;你是不是也经常遇到这种情况&#xff1a;想查某个外设的寄存器地址&#xff0c;得先最小化IDE&#xff0c;在一堆PDF手册里翻半天&#xff1b;想确认某个…...

OpenClaw+Qwen3.5-9B智能爬虫:合规数据采集与结构化存储方案

OpenClawQwen3.5-9B智能爬虫&#xff1a;合规数据采集与结构化存储方案 1. 为什么需要智能爬虫&#xff1f; 去年我接手了一个市场调研项目&#xff0c;需要从30多个电商平台抓取商品价格和评论数据。传统爬虫开发让我吃尽苦头——每个网站结构不同&#xff0c;反爬策略各异&…...

YOLO目标检测完全指南:从入门到实践

YOLO目标检测完全指南&#xff1a;从入门到实践YOLO概述 YOLO&#xff08;You Only Look Once&#xff09;是目标检测领域的开创性算法&#xff0c;其核心思想非常直接——对图像只看一次&#xff0c;同时输出所有物体的位置和类别。 两阶段 vs 单阶段 传统R-CNN系列是"两…...

深度探索.NET Aspire在云原生应用性能与安全加固的创新实践

深度探索.NET Aspire在云原生应用性能与安全加固的创新实践 前言 云原生应用在当今数字化转型浪潮中扮演着关键角色&#xff0c;其性能与安全成为决定应用成败的核心要素。.NET Aspire作为微软推出的面向云原生开发的框架&#xff0c;为开发者提供了一套完整的工具与方法&#…...

jless屏幕滚动命令终极指南:掌握ctrl-b、ctrl-f、PageUp、PageDown高效浏览JSON数据

jless屏幕滚动命令终极指南&#xff1a;掌握ctrl-b、ctrl-f、PageUp、PageDown高效浏览JSON数据 【免费下载链接】jless jless is a command-line JSON viewer designed for reading, exploring, and searching through JSON data. 项目地址: https://gitcode.com/gh_mirrors…...

1985-2025年全国省/市/区县土地利用分类面积及占比统计数据

数据介绍 全国土地利用分类面积统计数据&#xff08;1985-2025&#xff09; 数据简介 本数据集基于1985-2025年30米分辨率土地利用分类数据&#xff0c;结合行政区划边界&#xff0c;提供全国省、市、县三级行政单元的土地利用分类面积及占比统计&#xff0c;为土地利用变化…...

MPPT控制器行业解析:技术迭代与市场机遇前瞻

一、核心定义&#xff1a;光伏系统的“能效中枢”MPPT控制器&#xff0c;全称最大功率点跟踪控制器&#xff0c;是光伏发电系统的核心电能管理设备。其核心作用是实时调节光伏组件的工作电压与电流&#xff0c;让太阳能电池始终运行在最大功率输出点&#xff0c;最大化提升发电…...