如何使用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服务器!

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

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

相关文章

SAP HCM 离职是1号 正确计算免税金额

员工是1号离职,如何正确计算个税中的免税金额,例如员工2024年3月1日离职,现在计算2月的工资,因为是下发薪所以,12月、1月、2月是三个月,3*500015000,但是系统计只有10000. 如果要计算出三个月&a…

合并区间详解

题目: 大体思路: 先排序,设置一个新数组,将原数组遍历的第一位添加到新数组,之后不断的将遍历原数组后的起始位置和新数组的终止位置进行比较,大于,则添加到新数组,不大于&#xff…

2024年Q1季度冰箱行业线上市场销售数据分析

Q1季度冰箱线上市场表现不如预期。 根据鲸参谋数据显示,2024年1月至3月线上电商平台(京东天猫淘宝)冰箱累计销量约410万件,环比下降11%,同比下降21%;累计销售额约98亿元,环比下降31%&#xff0…

文件IO基础

一、文件描述符 调用 open 函数会有一个返回值,该返回值就是一个文件描述符( file descriptor),这说明文件描述符是一个 非负整数;对于 Linux 内核而言,所有打开的文件都会通过文件描述符进行索引。 当调用…

如何使用Postgres的JSONB数据类型进行高效查询

文章目录 解决方案1. 创建包含JSONB列的表2. 插入JSON数据3. 使用GIN索引加速查询4. 执行高效的JSONB查询 示例代码解释 PostgreSQL的JSONB数据类型提供了一种灵活的方式来存储和查询JSON格式的数据。JSONB不仅允许你在PostgreSQL数据库中存储JSON文档,而且还对这些…

Java程序生成可执行的exe文件 详细图文教程

1.Java编辑器,如:idea、eclipse等,下载地址:IntelliJ IDEA: The Capable & Ergonomic Java IDE by JetBrainshttps://www.jetbrains.com/idea/2.exe4j,下载地址:ej-technologies - Java APM, Java Prof…

【创建型模式】工厂方法模式

一、简单工厂模式 1.1 简单工厂模式概述 简单工厂模式又叫做静态工厂方法模式。 目的:定义一个用于创建对象的接口。实质:由一个工厂类根据传入的参数,动态决定应该创建哪一个产品类(这些产品类继承自一个父类或接口)的实例。 简单工厂模式…

Next.js在浏览器中访问env环境变量报错解决方案

报错的代码 .env.local DB_HOSTlocalhost DB_USERmyuser DB_PASSmypasswordenv.js export default function Env() {const dbHost process.env.DB_HOSTconst dbUser process.env.DB_USERconst dbPass process.env.DB_PASSreturn (<div><p>DB Host: {dbHost}<…

LeetCode 11.盛最多谁的容器

目录 题目描述 方法一 双指针 思路&#xff1a; 代码&#xff1a; 题目描述 给定一个长度为 n 的整数数组 height 。有 n 条垂线&#xff0c;第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。 找出其中的两条线&#xff0c;使得它们与 x 轴共同构成的容器可以容纳最多的…

0418WeCross搭建 + Caliper测试TPS

1. 基本信息 虚拟机名称&#xff1a;Pure-Ununtu18.04 WeCross位置&#xff1a;/root/wecross-demo 2. 搭建并启动WeCross 参考官方指导文档 https://wecross.readthedocs.io/zh-cn/v1.2.0/docs/tutorial/demo/demo.html 访问WeCross网页管理平台 http://localhost:8250/s/…

C语言——字符函数与字符串函数

正文开始&#xff1a;在编程过程中&#xff0c;我们经常要处理字符和字符串&#xff0c;为了方便操作字符和字符串&#xff0c;C语⾔标准库中提供了 一系列库函数&#xff0c;接下来我们就学习⼀下这些函数。 1. 字符分类函数 C语⾔中有⼀系列的函数是专门做字符分类的&#…

代码随想录算法训练营第二天 | 977. 有序数组的平方 | 209. 长度最小的子数组 | 59. 螺旋矩阵 II

977. 有序数组的平方 int* sortedSquares(int* nums, int numsSize, int* returnSize) {int left 0, right numsSize-1;*returnSize numsSize;int *array (int *)malloc(sizeof(int) * numsSize);for (int i numsSize-1; i > 0; i--) {if (nums[left]*nums[left] > …