外网远程电脑访问内网的FTP的实现方法

时间:2022-06-01 17:07:53

   基于之前两篇文章搭建了ngrok实现了内网穿透,用过了http和https的协议完成了外网访问内网的网站,这一篇教大家用tcp协议实现外网远程电脑访问内网的FTP的方法。

一、外网远程桌面内网的电脑

 

  如何让外网的电脑远程本地的电脑呢,用ngrok进行内网穿透,把本地的远程端口映射出去,然后使用Windows的远程桌面,就能进行连接了。

  首先,更改ngrok.cfg文件(当然你也可以重新建一个使用(ノ ̄▽ ̄))

  1. server_addr: "你的域名:4443" 
  2. trust_host_root_certs: false 
  3. tunnels: 
  4. mstsc: 
  5. remote_port: 5012 
  6. proto: 
  7. tcp: "127.0.0.1:3389" 
 

  外网远程电脑访问内网的FTP的实现方法

  然后更改start.bat文件(同理你也可以重新建一个使用(~ ̄▽ ̄)~ )

  ngrok -config=ngrok.cfg start mstsc

  外网远程电脑访问内网的FTP的实现方法

  然后运行start.bat文件

   外网远程电脑访问内网的FTP的实现方法

  然后右键计算机→属性,点击远程设置。

  外网远程电脑访问内网的FTP的实现方法

  切到远程选项,勾选【允许远程协助连接这台计算机】,然后下面的选项也要允许。

  外网远程电脑访问内网的FTP的实现方法

  注:本机需要设置账户密码,没有账号和密码的计算机无法被远程连接。

  接着,我们在另一台电脑上打开Windows自带的远程桌面。

  WIN+R运行mstsc。

   外网远程电脑访问内网的FTP的实现方法

  或开始菜单搜索找到远程桌面。

  外网远程电脑访问内网的FTP的实现方法

   输入你的域名:映射服务器的端口。点击连接,然后输入远程计算机的账号和密码就能成功进行连接了。

  外网远程电脑访问内网的FTP的实现方法

二、外网访问内网的FTP

 

  运行用ngrok进行内网穿透,就能够达到让外网访问本地的FTP实现对本地文件随时随地的操作,是不是就很方便。

  这里我没有用IIS上的FTP,而是用了Serv-U这个软件作为FTP服务端。

  首先我们先下载安装Serv-U(下载和安装网上很多,这里就不再赘述了)

  安装完成启用后,新建一个域,我这里取名为ftp

   外网远程电脑访问内网的FTP的实现方法

  然后,点击【用户】,添加一个域用户。

  外网远程电脑访问内网的FTP的实现方法

  填入用户名和密码,选择根目录。

  外网远程电脑访问内网的FTP的实现方法

  然后切到【目录访问】添加目录访问规则,选择路径,点击完全访问,保存。

  外网远程电脑访问内网的FTP的实现方法

  接着,点击【域详细信息】,切换到【监听器】,下面点击添加。

  外网远程电脑访问内网的FTP的实现方法

  弹出窗口,类型和IP地址默认就行了,端口为ftp连接口,默认为21,我用的是5001,然后勾选【启用监视器】,在PASV模式里填入你的域名或服务器IP。

  外网远程电脑访问内网的FTP的实现方法

  接下来切换到全局,点击【限制和设置】,切到【设置】,在下面的【网络设置】中,设置PASV被动模式的端口范围,我这里设置的是5008到5009。

   外网远程电脑访问内网的FTP的实现方法

  这样FTP服务端就搭建好了,然后就该用ngrok进行端口映射了。(注:我本地的防火墙是关着的)

   

  同理,配置ngrok.cfg文件,设置TCP映射,结合之前的,这里把所有用过的都写上,红框里是本次用到的。

  1. server_addr: "你的域名:4443" 
  2. trust_host_root_certs: false 
  3. tunnels: 
  4.   http: 
  5.     subdomain: "www" 
  6.     proto: 
  7.       http: "233" 
  8.   https: 
  9.     subdomain: "www" 
  10.     proto: 
  11.       https: "2333" 
  12.   mstsc: 
  13.     remote_port: 5002 
  14.     proto: 
  15.      tcp: "127.0.0.1:3389" 
  16.   ftp: 
  17.     remote_port: 5001 
  18.     proto: 
  19.      tcp: "127.0.0.1:5001" 
  20.   ftp1: 
  21.     remote_port: 5008 
  22.     proto: 
  23.      tcp: "127.0.0.1:5008" 
  24.   ftp2: 
  25.     remote_port: 5009 
  26.     proto: 
  27.      tcp: "127.0.0.1:5009" 

  然后把start.bat文件中启动的改为本次使用的。

  ngrok -config=ngrok.cfg start ftp ftp1 ftp2

外网远程电脑访问内网的FTP的实现方法

  外网远程电脑访问内网的FTP的实现方法

  至此,FTP服务端就搞定了,然后就是我们来使用它了。

  网页*问:

  打开浏览器,输入ftp://你的域名:ftp连接端口,弹出登录框登录。

外网远程电脑访问内网的FTP的实现方法

  就能看到FTP里的文件了。

  外网远程电脑访问内网的FTP的实现方法

 

  文件管理器*问:

  在另一台电脑上打开资源管理器,输入ftp://你的域名:ftp连接端口。

  外网远程电脑访问内网的FTP的实现方法

  然后输入用户名和密码进行验证。

  外网远程电脑访问内网的FTP的实现方法

  成功访问。

  外网远程电脑访问内网的FTP的实现方法

  手机*问:

  下载一个ES文件浏览器。

  外网远程电脑访问内网的FTP的实现方法

  展开右侧,选择FTP。

  外网远程电脑访问内网的FTP的实现方法

  点击新建,选择ftp。

  外网远程电脑访问内网的FTP的实现方法

  配置信息,点击确定。

  外网远程电脑访问内网的FTP的实现方法

  就会出现一个文件夹。

  外网远程电脑访问内网的FTP的实现方法

  点开之后就能够查看和操作里面的文件了。

  外网远程电脑访问内网的FTP的实现方法

原文地址:https://www.cnblogs.com/LYF1997/p/11296158.html