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

WinSCP下载安装并结合内网穿透实现固定公网TCP地址访问本地服务器

文章目录

    • 1. 简介
    • 2. 软件下载安装:
    • 3. SSH链接服务器
    • 4. WinSCP使用公网TCP地址链接本地服务器
    • 5. WinSCP使用固定公网TCP地址访问服务器

1. 简介

Winscp是一个支持SSH(Secure SHell)的可视化SCP(Secure Copy)文件传输软件,它的主要功能是在本地与远程计算机间安全地复制文件,并且可以直接编辑文件。

​ 可视化操作就是直接把文件从本机拖入,打开文件直接双击即可。

image-20231026163601310

软件特性

  • 支持协议众多:SSH ,FTP、SFTP、FTPS、SCP。

  • 友好的图形操作界面,设置可以在选项界面中更改皮肤。

  • 与 Windows 完美集成(拖拽, URL, 快捷方式)

  • 内置文本编辑器

  • 带有比较目录、同步、同步浏览、查找文件、清除缓存等额外有用功能。

  • 能够保存多个ftp会话。

2. 软件下载安装:

GIthub项目地址:Github WinSCP

下载链接:download WinSCP

image-20231026101124381

Winscp界面:

image-20231026101231952

3. SSH链接服务器

首先,ifconfig命令查询服务器ip地址:

这里以centos7系统举例(ubuntu等同理):

image-20231026105722517

复制局域网地址:192.168.40.162

image-20231026110615656

直接从win本地拖入文件:

image-20231026143413337

检查一下,成功传输:

image-20231026143551998

以上操作在本地进行,如果人在异地,需要公网访问本地服务器,就需要在本地服务器上安装内网穿透服务来实现将本地局域网地址映射至公网。

4. WinSCP使用公网TCP地址链接本地服务器

​ 首先,我们需要提前在本地服务器上安装内网穿透软件,这里我使用的是免费版本不限流量支持TCP传输的Cpolar。

如何安装Cpolar请参考:

centos安装完毕后,浏览器登陆 localhost:9200 如下:(若centos无图形化界面可以手动调整隧道配置文件实现穿透,在文档第四章)

点击 创建隧道

image-20231026150603677

示例如下:

image-20231026151246802

  • 隧道名称:可自定义命名,注意不要与已有的隧道名称重复
  • 协议:选择TCP
  • 本地地址:22
  • 域名类型:随机临时(cpolar免费版)
  • 地区:选择China top

点击创建

image-20231026151417135

​ 打开在线隧道列表, 复制刚刚映射的公网tcp地址

回到winscp:

image-20231026151631524

  • 协议:SFTP
  • 主机名:生成的公网地址(不带端口号)
  • 端口号:写cpolar生成的5位数端口号

image-20231026154231330

image-20231026154247961

成功使用公网访问!

5. WinSCP使用固定公网TCP地址访问服务器

如果想将TCP链接固定为永久不变的ip地址,需要 使用 cpolar的付费功能 ,将套餐 升级专业版套餐 及以上,支持固定TCP地址

访问cpolar仪表盘:

往下翻,找到保留TCP地址:

image-20231026154938345

  • 地区:国内选择 china vip

  • 描述:自行填写,用来区分地址用途

    点击 保留

回到服务器cpolar webui

image-20231026160630033

  • 隧道名称:可自定义命名,注意不要与已有的隧道名称重复

  • 协议:选择TCP

  • 本地地址:22

  • 域名类型:随机临时(cpolar免费版)

  • 地区:选择China top

    映射为刚刚保留的固定tcp地址

image-20231026162201285

所有配置都已经完成,现在我们就可以在异地公网访问centos服务器编辑和上传文件,并且链接地址固定永久不变!

我们现在测试一下,回到winscp:

image-20231026160309546

成功使用固定tcp远程登陆centos服务器:

image-20231026162315124

现在我们就可以使用任意一台电脑,无需在局域网内也可以访问此centos服务器!

相关文章:

WinSCP下载安装并结合内网穿透实现固定公网TCP地址访问本地服务器

文章目录 1. 简介2. 软件下载安装:3. SSH链接服务器4. WinSCP使用公网TCP地址链接本地服务器5. WinSCP使用固定公网TCP地址访问服务器 1. 简介 ​ Winscp是一个支持SSH(Secure SHell)的可视化SCP(Secure Copy)文件传输软件,它的主要功能是在本地与远程计…...

内联函数|auto关键字|范围for的语法|指针空值

文章目录 一、内联函数1.1概念1.2特性 二、auto关键字2.2类型别名思考2.3auto简介2.4auto使用细则2.4 auto不能推导的场景 三、基于范围的for循环(C11)3.1 范围for的语法 四、指针空值nullptr(C11)4.1 C98中的指针空值 所属专栏:C初阶 一、内联函数 1.1概念 以inline修饰的函…...

家用洗地机哪个型号好用?介绍几个值得考虑的品牌

作为家里的主要清洁工,我一直以来都是负责家里的清洁工作。我经常使用吸尘器和扫地机器人来轮流清洁,虽然效果还不错,但是这种方式太费时间和精力了。特别是在脸上厨房里做完饭和孩子吃完饭后留下的残渣时,我总是需要用传统的拖多…...

力扣-数组题

1. 两数之和 找出map中是否有target-nums[i]&#xff0c; class Solution { public:vector<int> twoSum(vector<int>& nums, int target) {unordered_map<int, int> hash;for(int i 0 ;i < nums.size(); i){if(hash.find(target - nums[i]) ! hash…...

将List转换为数组或者将数组转换为List,如果改变了原始值,转换后的数据会发生改变吗?

将List转换为数组或将数组转换为List涉及到数据结构的变化。在Java中&#xff0c;这两种转换是否会影响原始数据取决于转换的方式和使用的数据结构。下面分别解释这两种情况&#xff1a; 将List转换为数组 当你将一个List转换为数组时&#xff0c;通常通过List的toArray()方法…...

七彩虹@电脑cpu频率上不去问题@控制中心性能模式cpu频率上不去@代理服务器超时@账户同步设置失败

文章目录 windows电脑cpu频率上不去新电脑的系统时间问题系统时间不准造成的具体问题举例代理超时vscode同步请求失败自动校准时间 windows电脑cpu频率上不去 问题描述,标压处理器的笔记本,cpu频率上不去 如果cpu没问题的话,就应该是系统限制了功耗导致的有的笔记本有控制中心…...

抖音怎么开店?抖音小店开店流程讲解,可收藏!

大家好&#xff0c;我是电商糖果 想在抖音上开一家小店&#xff0c;卖点东西&#xff0c;赚点儿辛苦钱。 如何正确的开通抖音小店呢&#xff1f; 这篇文章就给大家详细的讲解一下&#xff0c;帮大家规避掉一些百分之九十九的商家都会踩的坑。 近期开店的朋友&#xff0c;这…...

leetcode 热题 100_轮转数组

题解一&#xff1a; 新数组存储&#xff1a;另外用一个数组存储移动后的结果&#xff0c;再复制回原数组。 class Solution {public void rotate(int[] nums, int k) {int[] result new int[nums.length];for (int i 0; i < nums.length; i) {result[(i k) % nums.lengt…...

华为设备小型园区网方案(有线+无线+防火墙)

&#xff08;一&#xff09;配置有线部分 1.配置LSW2 &#xff08;1&#xff09;创建相关vlan [LSW2]vlan batch 10 3000 &#xff08;2&#xff09;配置连接LSW1的Eth-Trunk1&#xff0c;透传VLAN 10 3000 [LSW2]int Eth-Trunk 1 [LSW2-Eth-Trunk1]port link-type trunk [LSW2…...

硬件工程师入门基础知识(四)多层陶瓷电容应用(一)

多层陶瓷电容应用(一) 1.多层陶瓷电容器在电子电路中的主要作用以及对应的典型电路图有哪些?1.1 滤波电容1.2 退耦电容1.3 旁路电容1.4 耦合电容1.5 积分电容1.6 微分电容2.多层瓷介电容器能否超类别温度使用?3.瓷介电容器的工作电压如何选择?1.多层陶瓷电容器在电子电路中…...

python的虚拟环境

python的虚拟环境可以为项目创建一个独立的环境&#xff0c;能够解决使用不同版本依赖给项目带来冲突的麻烦。创建虚拟环境的方式有很多种&#xff0c;pipenv会自动帮你管理虚拟环境和依赖文件&#xff0c;并且提供了一系列命令和选项来帮忙你实现各种依赖和环境管理相关的操作…...

设计模式——2_4 中介者(Mediator)

我寄愁心与明月&#xff0c;随风直到夜郎西 ——李白《闻王昌龄左迁龙标遥有此寄》 文章目录 定义图纸一个例子&#xff1a;怎么调度一组地铁站台和地铁开车指挥中心 碎碎念中介者和表单平台思想但是这种平台便利性是要付出代价的变化隔离原则 姑妄言之 定义 用一个中介者对象…...

C语言教程(一)——输出、数据类型、表达式、条件判断、循环

一个C语言程序必须包含以下代码&#xff1a; int main(void){return 0; } 这是整个C语言程序的入口 输出 输入以下代码并运行&#xff08;注意分号&#xff09;&#xff1a; #include <stdio.h>int main(void){printf("Hello World\n");return 0; }可以看…...

Prompt Engineering、Finetune、RAG:OpenAI LLM 应用最佳实践

一、背景 本文介绍了 2023 年 11 月 OpenAI DevDay 中的一个演讲&#xff0c;演讲者为 John Allard 和 Colin Jarvis。演讲中&#xff0c;作者对 LLM 应用落地过程中遇到的问题和相关改进方案进行了总结。虽然其中用到的都是已知的技术&#xff0c;但是进行了很好的总结和串联…...

[C语言]——分支和循环(4)

目录 一.随机数生成 1.rand 2.srand 3.time 4.设置随机数的范围 猜数字游戏实现 写⼀个猜数字游戏 游戏要求&#xff1a; &#xff08;1&#xff09;电脑自动生成1~100的随机数 &#xff08;2&#xff09;玩家猜数字&#xff0c;猜数字的过程中&#xff0c;根据猜测数据的⼤…...

【LeetCode】392. 判断子序列(简单)——代码随想录算法训练营Day54

题目链接&#xff1a;392. 判断子序列 题目描述 给定字符串 s 和 t &#xff0c;判断 s 是否为 t 的子序列。 字符串的一个子序列是原始字符串删除一些&#xff08;也可以不删除&#xff09;字符而不改变剩余字符相对位置形成的新字符串。&#xff08;例如&#xff0c;"…...

1. Typescript入门

TS 基础 Typescript 在线编译平台 基础类型 boolean、number 和 string 类型 boolean let isHandsome: boolean true赋值与定义的不一致&#xff0c;会报错&#xff0c;静态类型语言的优势就体现出来了&#xff0c;可以帮助我们提前发现代码中的错误。 let isHandsome: …...

【Git】merge时报错:refusing to merge unrelated histories

文章目录 一、问题二、解决办法1、将feature分支的东西追加到master分支中2、将feature里的东西直接覆盖到master分支中 一、问题 今天将feature分支合并到master时报错&#xff1a;refusing to merge unrelated histories&#xff08;拒绝合并无关历史&#xff09; 报错原因&…...

树状数组+离散化求逆序对超详细讲解!

树状数组离散化求逆序对 用一个数组 w [ ] w[] w[]来记录遍历到当前数时&#xff0c;每个数出现的次数 由于只关心每个数前边有多少个数比他大&#xff0c;遍历到 i i i时&#xff0c;求大于 a [ i ] a[i] a[i]的数有多少个&#xff0c;就是对 [ a [ i ] , n ] [a[i], n] [a[i…...

《解密云计算:企业之选》

前言 在当今数字化时代&#xff0c;企业面临着巨大的数据处理压力和信息化需求&#xff0c;传统的IT架构已经无法满足日益增长的业务需求。在这样的背景下&#xff0c;越来越多的企业开始转向云计算&#xff0c;以实现灵活、高效和可扩展的IT资源管理和利用。 云计算 云计算是…...

SQLite JDBC驱动:Java开发者应对嵌入式数据库挑战的终极方案

SQLite JDBC驱动&#xff1a;Java开发者应对嵌入式数据库挑战的终极方案 【免费下载链接】sqlite-jdbc SQLite JDBC Driver 项目地址: https://gitcode.com/gh_mirrors/sq/sqlite-jdbc 想象一下这样的场景&#xff1a;你正在开发一个需要轻量级数据存储的Java应用&#…...

OptiSystem应用:光放大器EDFA的仿真

Optisystem可以设计和模拟光纤放大器和光纤激光器。此处展示的案例可在Optisystem安装文件夹samplesOptical amplifiers中找到。该教程将会介绍光放大器库这一部分。光放大器全局参数使用Optisystem的第一步是设置全局参数。我们都知道&#xff0c;主要的一个参数是time window…...

避开这些坑!STM32G431的ADC测量结果总跳变?CT117E-M4平台调试心得分享

STM32G431 ADC测量跳变问题全解析&#xff1a;从硬件设计到软件优化的实战指南 当你在CT117E-M4平台上第一次看到ADC读数像心跳图一样上下波动时&#xff0c;那种感觉就像在玩电子版的"打地鼠"——明明输入电压稳定&#xff0c;显示值却跳个不停。这不是简单的配置错…...

Claude Code 系统拆解:一个 Coding Agent 是如何被工程化出来的

本质是HarnessClaude Code 的核心 agent loop 其实很简单&#xff0c;本质上就是一个不断重复的循环——组装上下文、调用模型、请求工具、执行动作、写回结果、继续下一轮。真正复杂的部分&#xff0c;主要不在这个循环里&#xff0c;而在循环外那一整圈工程系统&#xff1a;权…...

DeepXDE终极指南:10分钟掌握科学机器学习核心库

DeepXDE终极指南&#xff1a;10分钟掌握科学机器学习核心库 【免费下载链接】deepxde A library for scientific machine learning and physics-informed learning 项目地址: https://gitcode.com/gh_mirrors/de/deepxde DeepXDE是一款强大的科学机器学习库&#xff0c;…...

用STM32F407的CMSIS-DSP库做FIR滤波,从Matlab设计到C代码移植的完整避坑指南

STM32F407 FIR滤波器实战&#xff1a;从Matlab设计到嵌入式实现的五个关键步骤 在嵌入式信号处理领域&#xff0c;FIR滤波器因其稳定性和线性相位特性成为工程师的首选。本文将带您完成从Matlab设计到STM32F407移植的完整流程&#xff0c;特别针对实时滤波场景中的典型问题提供…...

Intv_AI_MK11前端设计赋能:基于AI的UI/UX原型自动生成与评审

Intv_AI_MK11前端设计赋能&#xff1a;基于AI的UI/UX原型自动生成与评审 1. 效果亮点预览 Intv_AI_MK11正在重新定义前端设计工作流程。这个智能助手能在几分钟内将产品需求文档转化为可交互的UI原型&#xff0c;同时提供专业级的CSS样式建议和设计评审意见。我们测试了从电商…...

别再死记硬背ACL规则了!用华为eNSP模拟器5分钟搞定防火墙基础配置

华为eNSP实战&#xff1a;5分钟可视化掌握ACL防火墙配置精髓 刚接触网络设备配置时&#xff0c;ACL规则总让人望而生畏——那些密密麻麻的命令行和抽象的五元组匹配逻辑&#xff0c;像一堵墙挡在初学者面前。但当我第一次用华为eNSP模拟器完成整个ACL实验流程后&#xff0c;突然…...

从代码到财富:程序员的量化投资跃迁之路

《A股因子投资实战&#xff1a;从理论到策略实现》 推荐序言 当你计划阅读本专栏时&#xff0c;你可能正站在一个重要的十字路口——一边是熟悉的代码世界&#xff0c;另一边是充满挑战但也机遇无限的金融市场。作为程序员&#xff0c;你已经掌握了这个时代最重要的技能之一&am…...

终极指南:如何让机器学习模型自动适应动态输入形状变化

终极指南&#xff1a;如何让机器学习模型自动适应动态输入形状变化 【免费下载链接】ivy Convert Machine Learning Code Between Frameworks 项目地址: https://gitcode.com/gh_mirrors/iv/ivy 在当今快速发展的机器学习领域&#xff0c;模型需要处理各种不同形状的输入…...