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,这样一个懒人简易版跳板机就搭建完成了。

今日推荐

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

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

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

相关文章

keycloak-鉴权用户体系解决方案

一、问题描述 keycloak用户可手动创建&#xff0c;但是在第三方本地服务需要keycloak鉴权时&#xff0c;大多数本地服务是有自己的用户体系的&#xff0c;这个用户体系如何同步给keycloak呢&#xff0c;大概是三个思路&#xff1a; 1、手动将本地服务用户导入keycloak数据库 …

账单怎么记账软件下载,佳易王账单记账汇总统计管理系统软件教程

账单怎么记账软件下载&#xff0c;佳易王账单记账汇总统计管理系统软件教程 一、前言 以下软件以 佳易王账单记账汇总统计管理系统软件V17.0为例说明 软件文件下载可以点击最下方官网卡片——软件下载——试用版软件下载 软件特色&#xff1a; 1、功能实用&#xff0c;操作…

展览展会媒体传播的必要性,有哪些宣传方式?

传媒如春雨&#xff0c;润物细无声&#xff0c;大家好&#xff0c;我是51媒体网胡老师。 展览展会媒体传播的必要性在于扩大影响力、吸引观众和促进行业交流。通过媒体宣传&#xff0c;可以快速传递展会信息&#xff0c;提升品牌知名度&#xff0c;吸引更多潜在参展商和观众。…

MySQL面试题-日志(答案版)

日志 1、为什么需要 undo log&#xff1f; &#xff08;1&#xff09;实现事务回滚&#xff0c;保障事务的原子性。 事务处理过程中&#xff0c;如果出现了错误或者用户执 行了 ROLLBACK 语句&#xff0c;MySQL 可以利用 undo log 中的历史数据将数据恢复到事务开始之前的状态…

2024高频前端面试题 HTML 和 CSS 篇

JS和ES6 篇&#xff1a; ​​​​​​​2024高频前端面试题 JavaScript 和 ES6 篇-CSDN博客 一 . HTML 篇 1. H5有什么新特性 1) 语义化标签 用正确的标签做正确的事情。 html 语义化让页面的内容结构化&#xff0c;结构更清晰&#xff0c;便于对浏览器、搜索引擎解析&…

【C++精简版回顾】13.(重载1)运算符重载+,前置后置++

1.友元函数方式为类重载运算符 &#xff08;友元函数声明可以放在类任何地方&#xff09; 1.类 class MM { public:MM() {}MM(int grade,string name):grade(grade),name(name){}friend MM operator(MM object1, MM object2);void print() {cout << this->grade <…

C++ //练习 10.2 重做上一题,但读取string序列存入list中。

C Primer&#xff08;第5版&#xff09; 练习 10.2 练习 10.2 重做上一题&#xff0c;但读取string序列存入list中。 环境&#xff1a;Linux Ubuntu&#xff08;云服务器&#xff09; 工具&#xff1a;vim 代码块 /******************************************************…

云计算市场,从追求“规模制胜”到走向“用户分化”

文|智能相对论 作者|叶远风 通常来说&#xff0c;价格战放到任何行业&#xff0c;都不是什么好事。 如今&#xff0c;作为曾经的前沿技术创新&#xff0c;云计算行业正在被迫走入价格战的阴霾当中&#xff0c;引发业界担忧。 ECS&#xff08;云服务器&#xff09;最高降36%…

「MySQL」基本操作类型

&#x1f387;个人主页&#xff1a;Ice_Sugar_7 &#x1f387;所属专栏&#xff1a;数据库 &#x1f387;欢迎点赞收藏加关注哦&#xff01; 数据库的操作 创建、显示数据库 使用 create 创建一个数据库 create database goods;然后可以用 show databases 来查看已经创建的数…

Go字符串实战操作大全!

目录 1. 引言文章结构概览 2. Go字符串基础字符串的定义与特性什么是字符串&#xff1f;Go字符串的不可变性原则 字符串的数据结构Go字符串的内部表达byte和rune的简介 3. 字符串操作与应用3.1 操作与应用字符串连接字符串切片字符串查找字符串比较字符串的替换字符串的大小写转…

mitmproxy实战-通过mitmdump爬取京东金榜排行数据

对于APP的数据爬取或需要构建复杂的接口参数数据的爬取可以通过mitmproxy抓包还原流量&#xff0c;解析流量数据包来获取。mitmproxy是一个免费的开源交互式的HTTPS代理工具。它类似于其他抓包工具如WireShark和Fiddler&#xff0c;支持抓取HTTP和HTTPS协议的数据包&#xff0c…

Netty学习——基础篇3(AIO编程)

1 概述 NIO 2.0 引入了新的异步通道概念&#xff0c;并提供了异步文件通道和异步套接字通道的实现。异步通道提供以下两种方式获取操作结果。 1、通过java.util.concurrent.Future类来表示异步操作的结果&#xff1b; 2、在执行异步操作的时候传入一个java.nio.channels Comple…