首页 > 其他分享 >SSH连接与端口映射

SSH连接与端口映射

时间:2024-11-27 20:33:12浏览次数:11  
标签:端口 SSH ssh 连接 端口映射 密钥

1 SSH

1.1 什么是SSH?

SSH全称Secure Shell,中文翻译为安全外壳,它是一种网络安全协议,通过加密和认证机制实现安全的访问和文件传输等业务。SSH 协议通过对网络数据进行加密和验证,在不安全的网络环境中提供了安全的网络服务。

SSH 是(C/S架构)由服务器和客户端组成,为建立安全的 SSH 通道,双方需要先建立 TCP 连接,然后协商使用的版本号和各类算法,并生成相同的会话密钥用于后续的对称加密。在完成用户认证后,双方即可建立会话进行数据交互。

1.2 如何使用SSH远程连接服务器?

1.2.1 使用密码进行SSH远程连接

找到服务器的SSH连接,然后复制登录命令,这里的37367是开发机所使用的SSH端口,一般使用的都是22端口,没有这个端口号的话是连不上SSH的,并且每个人的端口都不一样,所以如果大家在连接开发机时出现连不上的情况,那就需要检查一下是不是端口错了。

在这里插入图片描述
SSH密钥是一种安全便捷的登录认证方式,用于在SSH协议中进行身份验证和加密通信。

ssh-keygen支持RSA和DSA两种认证密钥。

常用参数包括:

-t:指定密钥类型,如dsa、ecdsa、ed25519、rsa。
-b:指定密钥长度。
-C:添加注释。
-f:指定保存密钥的文件名。
-i:读取未加密的ssh-v2兼容的私钥/公钥文件。
这里我们使用RSA算法生成密钥,命令为:

ssh-keygen -t rsa

输入命令后一路回车就可以了,这里的密钥默认情况下是生成在/.ssh/目录下的,表示的是家目录,如果是windows就是C:\Users{your_username}\。在powerShell中可以使用Get-Content命令查看生成的密钥,如果是linux操作系统可以使用cat命令。

1.2.2配置SSH密钥进行SSH远程连接

我们开发学习的时候,每次远程都输入密码比较麻烦,我们可以设置SSH key来跳过输入密码这一步骤,在ssh命令中我们可以使用ssh-keygen命令来生成密钥

1.3 使用VScode进行SSH远程连接

如果要在VScode中进行远程连接,需要在VScode上安装Remote-SSH插件,点击侧边扩展栏,在搜索框中输入SSH,找到Remote-SSH安装即可。

在这里插入图片描述

安装完成插件以后,点击侧边栏的远程连接图标,在SSH中点击“+”按钮,添加服务器SSH连接的登录命令。
在这里插入图片描述
我们将登录命令复制下来,然后将命令粘贴到弹出的窗口中,最后回车。最后输入密码,成功连接。

2 端口映射

2.1 什么是端口映射?

端口映射是一种网络技术,它可以将外网中的任意端口映射到内网中的相应端口,实现内网与外网之间的通信。通过端口映射,可以在外网访问内网中的服务或应用,实现跨越网络的便捷通信。
端口映射实现步骤,可访问端口转发+内网映射

2.2 访问内网服务

创建一个hello_world.py服务:

import socket
import re
import gradio as gr
 
def get_hostname():
    hostname = socket.gethostname()
    match = re.search(r'-(\d+)$', hostname)
    name = match.group(1)
    
    return name
 
with gr.Blocks(gr.themes.Soft()) as demo:
    html_code = f"""
            <p align="center">
            <a href="https://intern-ai.org.cn/home">
                <img src="https://intern-ai.org.cn/assets/headerLogo-4ea34f23.svg" alt="Logo" width="20%" style="border-radius: 5px;">
            </a>
            </p>
            <h1 style="text-align: center;">☁️ Welcome {get_hostname()} user, welcome to the ShuSheng LLM Practical Camp Course!</h1>
            <h2 style="text-align: center;">

标签:端口,SSH,ssh,连接,端口映射,密钥
From: https://blog.csdn.net/qq_46248819/article/details/144084659

相关文章

  • 使用 Django 构建支持 Kubernetes API 测试连接的 POST 接口
    文章目录使用Django构建支持KubernetesAPI测试连接的POST接口功能需求使用kubectl获取Token命令解析输出示例完整代码实现KubernetesAPI客户端类功能说明Django接口视图关键点解析路由配置接口测试请求示例响应结果成功错误优化建议1.安全性2.错误......
  • GaussDB数据库SQL系列-表连接(JOIN)
    一、前言SQL是用于数据分析和数据处理的最重要的编程语言之一,表连接(JOIN)是数据库中SQL的一种常见操作,在实际应用中,我们需要根据业务需求从两个或多个相关的表中获取信息。二、GaussDBJOINGaussDB是华为推出的企业级分布式关系型数据库。GaussDBJOIN子句是基于两个或者多个表......
  • liunx 查看网络连接数
    查看网络连接数:netstat-an|wc-lnetstat-an|grepxx|wc-l查看某个/特定ip的连接数netstat-an|grepTIME_WAIT|wc-l查看连接数等待time_wait状态连接数netstat-an|grepESTABLISHED|wc-l查看建立稳定连接数量查看不同状态的连接数数量[root@cp......
  • 第三方数据库连接免费使用和安装
    是强大的一体化数据库开发解决方案,可从单一应用程序无缝连接多个数据库,包括MySQL、PostgreSQL、MongoDB、MariaDB、SQLServer、Oracle、SQLite和Redis。下载:https://download.csdn.net/download/mo3408/90045937升级特性模型:快速建模,简化执行,快速精确的设计数据字典:......
  • ray集群work节点无法在不同wifi远程连接的问题
    省流:1.两个不同wifi下的ray节点要手动配置参数‘--node-ip-address’2.注意是--node-ip-address不是--node_ip_address注意下划线我使用python下的ray分布式能正常连接但是gcs心跳根本连接不上检查后发现:不同的分布式节点不在同一个ip,所以会导致bootstrap_address的公网ip......
  • 通过公网连接GaussDB数据库实例
    @目录1.通过公网连接GaussDB1.1实验介绍1.1.1关于本实验1.1.2实验目的1.2购买GaussDB数据库(可选)1.3公网IP绑定1.3.1购买弹性公网IP1.3.2绑定GaussDB数据库2附录一:安装和配置JDK2.1下载并安装JDK2.2配置JDK环境变量本实验概览图1.通过公网连接GaussDB1.1实验介绍......
  • JDBC连接GaussDB云数据库操作示例
    ​目录一、实验环境二、登录华为云创建测试库表1、登录GaussDB云数据库2、建库、建表,用于测试3、新增普通角色(用户)用于登录及访问测试(可选)4、获取对应的公网IP三、创建java工程1、创建java工程2、添加jar包3、编辑Java代码四、执行并查看测试结果一、实验环境1、本......
  • 【VS Code】记一次VSCode Remote SSH无法连接的问题
    试用条件:WIN7、Remote-SSHv0.84.0、被连接:阿里云服务器遇到的问题:Couldnotestablishconnectionto"xxx.xxx.xxx.xxx":XHRfaild博主先参考这篇文章解决连接需要等待很久的问题先在CMD执行code--version'''会得到以下内容:1.70.3a21a160d630530476218b85db95b0fd2a8......
  • java小工具封装 - 给定连接执行指定路径的sql文件
    封装类-传参数据库连接connection和sql文件的绝对路径(可直接复制粘贴使用)publicstaticvoidexecuteSqlFile(Stringpath,Connectionconnection){//读取文件BufferedReaderreader;Statementpst=null;try{pst=......
  • MySQL SSL连接配置与性能优化指南
    MySQLSSL连接配置与性能优化指南在现代网络环境中,数据安全至关重要。MySQL作为广泛使用的关系型数据库,其数据传输的安全性也备受关注。从MySQL5.5.45+、5.6.26+和5.7.6+版本开始,MySQL默认要求使用SSL连接,以增强数据传输的安全性。然而,配置SSL连接可能会对性能产生一定的影响......