windows客户端SSH连接ubuntu/linux服务器,三种网络连接:局域网,内网穿透(sakuraftp),虚拟局域网(zerotier)
windows客户端SSH连接ubuntu/linux服务器,三种网络连接:局域网,内网穿透(sakuraftp),虚拟局域网(zerotier)
目录
- SSH简述、三种网络连接特点
- SSH简述
- 局域网内连接
- 内网穿透(如SakuraFTP)
- 虚拟局域网(如ZeroTier)
- Linux服务端(局域网连接)
- windows客户端(局域网连接)
- 使用windows终端连接
- 使用MobaXterm连接
- 内网穿透(使用sakurafrp)
- sakurafrp创建隧道
- ubuntu服务器安装和配置
- 远程管理节点
- 组建虚拟局域网(使用zerotier)
- 其他
SSH简述、三种网络连接特点
SSH简述
SSH(Secure Shell)是一种强大的网络安全协议,主要用于从远程位置安全地登录并控制计算机系统。它允许用户通过加密的连接从本地计算机远程访问服务器,执行命令、管理文件和进行各种操作,从而实现高效、安全的远程工作环境。
局域网内连接
当服务器和客户端位于同一物理网络中时,这种连接是最直接的方式。
优点:
速度:由于数据不需要穿越广域网,因此传输速度通常较快,延迟较低。
简单易行:只需要基本的网络配置即可实现连接。
安全性较高:数据仅限于局域网内部,减少了外部攻击的风险。
缺点:
缺点:一旦离开局域网环境,连接就会中断。
可访问性受限:需要确保服务器始终处于开机且联网状态。
内网穿透(如SakuraFTP)
允许从互联网上的任何地方访问位于私有网络中的服务器
优点:
灵活性高:不受地理位置限制,可以随时随地访问服务器。
配置简单:无需额外硬件,无需额外配置客户端,即可实现远程连接。
缺点:
安全性问题:公开暴露服务器端口可能会增加遭受攻击的风险。
虚拟局域网(如ZeroTier)
通过软件定义网络技术创建一个跨越物理位置的虚拟局域网。
优点:
构建网络:一次配置使多个设备之间可以互相访问。
易于管理:提供了图形界面或其他简便工具来进行网络管理,可以轻松添加或移除设备。
缺点:
安全性:需要信任虚拟网络服务提供商处理的数据流。
速度慢:ZeroTier服务器响应延迟高,连接不稳定。
部署难度:需要为组网的每台设备安装zerotier服务和配置网络。
Linux服务端(局域网连接)
启动ssh服务器
#安装ssh服务器(一般系统已经预装好了)
sudo apt install openssh-server
#检查ssh服务器状态,active就是运行状态
sudo systemctl status sshd
#开启服务器
sudo systemctl start sshd
#重启服务器
sudo systemctl restart sshd
#启用服务器(开机自启动)
sudo systemctl enable sshd
如果服务器连接异常,可能需要修改配置文件:
#修改服务器配置文件
nano /etc/ssh/sshd_config
#修改以下内容:
#PermitRootLogin yes 允许ROOT用户登录
#PasswordAuthentication yes 允许密码验证登录
#Port 22 确保为默认22端口,或者自定义端口
#ClientAliveInterval 60 重连时间
#ClientAliveCountMax 3 重连次数
#MaxAuthTries 5 最多尝试登录次数#保存后务必重启服务
sudo systemctl restart sshd
查看服务器IP
#查看IP,对应网络接口的inet是ipv4地址
ip addr
windows客户端(局域网连接)
使用windows终端连接
查看windows是否预装了ssh
win+i打开设置,搜索设置“可选功能”,下图显示的是已启用了openssh客户端。如果没有,添加可选功能中搜索“openssh客户端”。
win+R ,cmd回车,打开终端
先ping一下测试是否连接正常
ping xxx(your-server-ip)
若不能访问,检查ubuntu服务器的防火墙:
#检查防火墙
sudo ufw status verbose
#开放端口
sudo ufw allow 22
#或开放来自某IP访问某端口的权限
sudo ufw allow from your_ip to any port 22
#开启防火墙
sudo ufw enable
ssh连接:
ssh user_name@your_ip -p port
#例如以root用户登录,ip地址为192.168.1.100,端口号为默认22 :
ssh root@192.168.1.100 -p 22
用户名可以省略,端口号不写默认22
回车后,如果正常,需要验证 Ubuntu 的用户(如果ssh已包含用户名则省略)和登录密码,密码输入是看不见的。
然后就可以正常连接服务器了
使用MobaXterm连接
官网下载 https://mobaxterm.mobatek.net/
推荐理由:使用mobaxterm可以更方便的登录ssh,而且可以进行远程文件管理,多终端运行,上传下载,监测服务器状态等等。
点击session-ssh,remote host填写IP地址,port填写端口号,username可填可不填,点击ok进行连接。弹出对话框可以选择是否保存密码。
左下角点击remote monitor,以显示服务器状态,如内存占用,上传下载,活跃用户等
其他内容请自行搜索教程。
内网穿透(使用sakurafrp)
sakurafrp创建隧道
sakurafrp樱花穿透:https://www.natfrp.com/user/
推荐理由:免费使用(认证借助支付宝要1¥),节点多,稳定,每日签到就送流量
首先注册账号并实名认证。然后服务-隧道列表-创建隧道,选择合适的节点。
隧道类型选择TCP,本地端口一定要选择22或你配置的ssh端口。
关于创建隧道网上教程很多,请自行搜索。
这里的本地端口、远程端口笔者刚接触时有点迷糊,其实很简单,不使用内网穿透时,如果客户端和服务器在同一局域网内,客户端可以直接通过局域网内的IP地址和服务器的SSH端口(通常是22端口)来访问服务器。使用樱花内网穿透时,需要设置服务器的SSH端口作为本地端口,这样服务器内部的SSH服务可以被正确识别。而远程端口是由樱花提供的一个可以在互联网上访问的端口,客户端通过连接这个远程端口来ssh访问局域网内的服务器。
ubuntu服务器安装和配置
安装SakuraFrp 启动器,这里是用的远程管理的方式,即在网页端进行配置节点等操作
sudo bash -c ". <(curl -sSL https://doc.natfrp.com/launcher.sh)"
安装详情请看官网指南 https://doc.natfrp.com/launcher/usage.html
安装过程中需要填写访问密钥,在sakurafrp首页获取。
还需要设定连接密码。这个密码就是进入网页端远程管理的密码。
安装完成后,启动远程连接服务
#开启服务
sudo systemctl start natfrp.service
#启用服务(开机自启动)
sudo systemctl enable natfrp.service
远程管理节点
sakuraftp 服务-远程管理,找到服务器,输入你设置的连接密码,进入管理界面
拖动或双击隧道即可启动或关闭。
启用后,点击日志,找到使用 >>xxxx:xxxx<< 连接你的隧道
这一行,冒号:前面的xxxx就是内网穿透的IP,后面是端口号,
比如你的是这样的:abc1-de2.fg:1234,那么IP是abc1-de2.fg,端口号是1234
所以客户端登录是这样的
ssh user@abc1-de2.fg -p 1234
组建虚拟局域网(使用zerotier)
zerotier官网:https://www.zerotier.com/ (科学上网更快)
推荐理由:免费,配置简单,无限流量,可配置3个网络,每个网络10台设备
缺点:卡
步骤:
-
注册账号,创建网络
点击create a network会创建一个虚拟局域网
-
下载windows客户端,加入网络
点击 join new network
-
下载linux客户端,加入网络
#安装zerotier
curl -s https://install.zerotier.com | sudo bash
#启用
sudo systemctl start zerotier-one.service
#开机启动
sudo systemctl enable zerotier-one.service
#加入网络 网络就是你创建时生成的,在zerotier查看
sudo zerotier-cli join your-networkid
#查看网络列表
sudo zerotier-cli listnetworks
#查看网络状态
sudo zerotier-cli status
#离开网络
sudo zerotier-cli leave your-networkid
#关闭
sudo systemctl stop zerotier-one.service
- 在zerotier授权加入,管理
- 客户端ssh连接服务端虚拟局域网的IP,很卡是正常的!
其他
服务器建议使用安全的密码访问。修改密码:
#修改密码
sudo passwd root
#切换为ROOT用户
su root
使用命令行登录wifi
#列出可用的WiFi
nmcli dev wifi list
#连接wifi,其中<SSID>是你想要连接的网络的名称,<密码>是该网络的密码
nmcli dev wifi connect <SSID> password <密码>
相关文章:

windows客户端SSH连接ubuntu/linux服务器,三种网络连接:局域网,内网穿透(sakuraftp),虚拟局域网(zerotier)
windows客户端SSH连接ubuntu/linux服务器,三种网络连接:局域网,内网穿透(sakuraftp),虚拟局域网(zerotier) 目录 SSH简述、三种网络连接特点SSH简述局域网内连接内网穿透(…...

Python 工具库每日推荐【openpyxl 】
文章目录 引言Python Excel 处理库的重要性今日推荐:openpyxl 工具库主要功能:使用场景:安装与配置快速上手示例代码代码解释实际应用案例案例:自动生成月度销售报告案例分析高级特性条件格式数据验证扩展阅读与资源优缺点分析优点:缺点:总结【 已更新完 TypeScript 设计…...

本地生活服务项目入局方案解析!本地生活服务商系统能实现怎样的作业效果?
当前,各大平台的本地生活服务业务日渐兴盛,提高创业者入局意向的同时,也让本地生活服务项目有哪些等问题也成为了多个创业者社群中的热议对象。而从目前的讨论情况来看,在创业者们所询问的众多本地生活服务项目中,通过…...

ML 系列:【13 】— Logistic 回归(第 2 部分)
文章目录 一、说明二、挤压方法三、Logistic 回归中的损失函数四、后记 一、说明 在这篇文章中,我们将深入研究 squashing 方法,这是有符号距离方法(第 12节)的一种很有前途的替代方案。squashing 方法通过提供增强的对异常值…...

45岁被裁员的程序员,何去何从?
在当今快速变化的技术行业,职业生涯的稳定性受到挑战。在45岁被裁员,对很多程序员来说,可能是一种惊慌失措的体验。然而,这个阶段也可以被视为一个重新审视和调整方向的机会。本文将对可能的出路进行全方位的分析,并提…...

云计算Openstack Neutron
OpenStack Neutron是OpenStack云计算平台中的网络服务组件,它为OpenStack提供了强大的网络连接功能。 一、基本概念 Neutron是一个网络服务项目,旨在为OpenStack提供网络连接。它允许用户创建和管理虚拟网络,包括子网、路由、安全组等&…...

PointNet++网络详解
数据集转换 数据集转换的意义在于将原本的 txt 点云文件转换为更方便运算的npy点云文件,同时,将原本的xyzrgb这 6 个维度转换为xyzrgbc,最后一个c维度代表该点云所属的类别。 for anno_path in anno_paths:print(anno_path)try:elements a…...

Java | Leetcode Java题解之第459题重复的子字符串
题目: 题解: class Solution {public boolean repeatedSubstringPattern(String s) {return kmp(s s, s);}public boolean kmp(String query, String pattern) {int n query.length();int m pattern.length();int[] fail new int[m];Arrays.fill(fa…...
【动态规划-最长公共子序列(LCS)】【hard】力扣1092. 最短公共超序列
给你两个字符串 str1 和 str2,返回同时以 str1 和 str2 作为 子序列 的最短字符串。如果答案不止一个,则可以返回满足条件的 任意一个 答案。 如果从字符串 t 中删除一些字符(也可能不删除),可以得到字符串 s &#x…...

图片编辑为底片,智能工具助力,创作精彩视觉作品
在当今数字化时代,图像编辑已成为表达创意和美化视觉作品的重要手段。借助智能工具,即使是初学者也能轻松驾驭图片编辑。接下为大家展示图片编辑为底片图片的效果。 1.打开“首助编辑高手”,选择这里“图片批量处理”版块页面上 2.导入保存有…...

机器学习/数据分析--用通俗语言讲解时间序列自回归(AR)模型,并用其预测天气,拟合度98%+
时间序列在回归预测的领域的重要性,不言而喻,在数学建模中使用及其频繁,但是你真的了解ARIMA、AR、MA么?ACF图你会看么?? 时间序列数据如何构造???,我打过不少…...
回溯算法之值子集和问题详细解读(附带Java代码解读)
子集和问题(Subset Sum Problem) 是一个经典的组合优化问题。问题可以这样描述: 给定一个整数集合和一个目标整数 target,我们需要从集合中选出若干个整数,使它们的和等于 target。如果这样的子集存在,返回…...
mysql游标的使用
说明: 虽然我们也可以通过筛选条件 WHERE 和 HAVING,或者是限定返回记录的关键字 LIMIT 返回一条记录,但是,却无法在结果集中像指针一样,向前定位一条记录、向后定位一条记录,或者是 随意定位到某一条记录 …...
linux udev详解
1.概念介绍 1.1sysfs文件系统 Linux 2.6以后的内核引入了sysfs文件系统,sysfs被看成是与proc、devfs和devpty同类别的文件系统,该文件系统是一个虚拟的文件系统,它可以产生一个包括所有系统硬件的层级视图,与提供进程和状态信息…...
EventSource和websocket该用哪种技术
EventSource(也称为Server-Sent Events, SSE)和WebSocket都是实现实时通信的技术,但是它们的设计目的和使用场景有所不同。在选择使用哪种技术时,需要根据具体的应用需求来决定。下面是一些关键点,可以帮助你做出选择&…...

通信工程学习:什么是三网融合
三网融合 三网融合,又称“三网合一”,是指电信网、广播电视网、互联网在高层业务应用上的深度融合。这一概念在近年来随着信息技术的快速发展而逐渐受到重视,并成为推动信息化社会建设的重要力量。以下是对三网融合的详细解释: 一…...

自定义类型结构体(上)
目录 结构体类型的声明结构体的概念结构体的声明特殊的声明结构的自引用 结构体变量的创建和初始化结构成员访问操作符 结构体类型的声明 结构体的概念 结构体是一些值的集合,这些值称为成员变量。结构的每个成员可以是不同类型的变量 举个例子:杰克的英语只考了6…...
b站-湖科大教书匠】4 网络层 - 计算机网络微课堂
【b站-湖科大教书匠】4 网络层 - 计算机网络微课堂_湖科大的计算机网络网课-CSDN博客...
国际 Android WPS Office v18.13 解锁版
WPS Office 移动版,设计不断优化,性能再次提升!融入Google Android最新设计标准,Material Design设计风格,完美支持沉浸式!简化文档操作,全新移动办公力作。全新界面更清晰舒适,功能…...

【中间件学习】Git的命令和企业级开发
一、Git命令 1.1 创建Git本地仓库 仓库是进行版本控制的一个文件目录。我们要想对文件进行版本控制,就必须创建出一个仓库出来。创建一个Git本地仓库对应的命令是 git init ,注意命令要在文件目录下执行。 hrxlavm-1lzqn7w2w6:~/gitcode$ pwd /home/hr…...
Linux云原生安全:零信任架构与机密计算
Linux云原生安全:零信任架构与机密计算 构建坚不可摧的云原生防御体系 引言:云原生安全的范式革命 随着云原生技术的普及,安全边界正在从传统的网络边界向工作负载内部转移。Gartner预测,到2025年,零信任架构将成为超…...
C++中string流知识详解和示例
一、概览与类体系 C 提供三种基于内存字符串的流,定义在 <sstream> 中: std::istringstream:输入流,从已有字符串中读取并解析。std::ostringstream:输出流,向内部缓冲区写入内容,最终取…...
Device Mapper 机制
Device Mapper 机制详解 Device Mapper(简称 DM)是 Linux 内核中的一套通用块设备映射框架,为 LVM、加密磁盘、RAID 等提供底层支持。本文将详细介绍 Device Mapper 的原理、实现、内核配置、常用工具、操作测试流程,并配以详细的…...

初学 pytest 记录
安装 pip install pytest用例可以是函数也可以是类中的方法 def test_func():print()class TestAdd: # def __init__(self): 在 pytest 中不可以使用__init__方法 # self.cc 12345 pytest.mark.api def test_str(self):res add(1, 2)assert res 12def test_int(self):r…...

2025季度云服务器排行榜
在全球云服务器市场,各厂商的排名和地位并非一成不变,而是由其独特的优势、战略布局和市场适应性共同决定的。以下是根据2025年市场趋势,对主要云服务器厂商在排行榜中占据重要位置的原因和优势进行深度分析: 一、全球“三巨头”…...
JAVA后端开发——多租户
数据隔离是多租户系统中的核心概念,确保一个租户(在这个系统中可能是一个公司或一个独立的客户)的数据对其他租户是不可见的。在 RuoYi 框架(您当前项目所使用的基础框架)中,这通常是通过在数据表中增加一个…...
现有的 Redis 分布式锁库(如 Redisson)提供了哪些便利?
现有的 Redis 分布式锁库(如 Redisson)相比于开发者自己基于 Redis 命令(如 SETNX, EXPIRE, DEL)手动实现分布式锁,提供了巨大的便利性和健壮性。主要体现在以下几个方面: 原子性保证 (Atomicity)ÿ…...

uniapp 开发ios, xcode 提交app store connect 和 testflight内测
uniapp 中配置 配置manifest 文档:manifest.json 应用配置 | uni-app官网 hbuilderx中本地打包 下载IOS最新SDK 开发环境 | uni小程序SDK hbulderx 版本号:4.66 对应的sdk版本 4.66 两者必须一致 本地打包的资源导入到SDK 导入资源 | uni小程序SDK …...
探索Selenium:自动化测试的神奇钥匙
目录 一、Selenium 是什么1.1 定义与概念1.2 发展历程1.3 功能概述 二、Selenium 工作原理剖析2.1 架构组成2.2 工作流程2.3 通信机制 三、Selenium 的优势3.1 跨浏览器与平台支持3.2 丰富的语言支持3.3 强大的社区支持 四、Selenium 的应用场景4.1 Web 应用自动化测试4.2 数据…...
Qt 事件处理中 return 的深入解析
Qt 事件处理中 return 的深入解析 在 Qt 事件处理中,return 语句的使用是另一个关键概念,它与 event->accept()/event->ignore() 密切相关但作用不同。让我们详细分析一下它们之间的关系和工作原理。 核心区别:不同层级的事件处理 方…...