美文网首页
内网穿透

内网穿透

作者: Rex_Diego | 来源:发表于2019-02-18 13:47 被阅读0次

问题描述:
现在有三台机器:
star:中科院内网服务器,无法直接从外网访问,IP:172.16.0.*
jump:中科院跳板服务器,可以从内外网访问,但是只有端口22,IP:159.226.113.*
mine:家里的电脑,或PC或Mac,IP:不重要!ok?不重要!

那么,想从家里向服务器传数据,或者下数据怎么破?尤其不想手动做搬运工怎么破?

Mac & Linux

SSH访问

mine -> jump -> star

这样是带图形界面的,可以xeyes进行测试:

ssh -t -o ProxyCommand='ssh -Y dam@159.226.113.* -W 172.16.0.*:22' -Y zy@172.16.0.*

当然,通常我会在~/.bashrc建立一个alias,省的每次敲着一大串:

alias sjumpstar="ssh -t -o ProxyCommand='ssh -Y dam@159.226.113.* -W 172.16.0.*:22' -Y zy@172.16.0.*"

其中-t是指远程建立一个tty,-o ProxyCommand是设置设定远程代理执行命令的option,-Y是指建立信任的X11传输协议。

scp rsync传输文件

mine -> jump -> star

scp进行传输,少量传输还挺好,大量数据的备份不推荐:

scp -r -o ProxyCommand='ssh dam@159.226.113.* -W 172.16.0.*:22' zy@172.16.0.*:~/data ./data

其中-r指recursively递归复制,复制单独文件时可以拿掉。

rsync传输,老司机的同步命令,适合大量数据的备份,支持断点续传:

rsync -avPH -e "ssh -t -o ProxyCommand='ssh dam@159.226.113.* -W 172.16.0.*:22'" zy@172.16.0.*:~/data ./data

star -> jump -> mine

也很简单,反过来写:

scp -r -o ProxyCommand='ssh dam@159.226.113.* -W 172.16.0.*:22' ./data zy@172.16.0.*:~/data 
rsync -avPH -e "ssh -t -o ProxyCommand='ssh dam@159.226.113.* -W 172.16.0.*:22'" ./data zy@172.16.0.*:~/data

当然,也有很多其他方法,比如笨笨的zssh;以及操作复杂的ssh映射本地socks再通过Proxifier配置代理。

sshfs 挂载本地

最爽的难道不是将ssh映射到本地当成一块磁盘用吗?探索半天,一条命令足以:

sshfs zy@172.16.0.*:/ /mnt -o ssh_command='ssh -J dam@159.226.113.*'

随便拖拽copy开不开心?卸载的话右键弹出即可。

映射到本地

最简单的思路是这样的:先通过jump把star的22端口映射到本地12333(随便选,别被占用就行),再假装ssh、scp、rsync到本地的12333端口。只不过这样会留下一个ssh的后台,这个后台可以选择使用-f参数自动放在后台,用kill、htop等工具管理,也可以用screen不加-f,不用的时候手动终止。

映射端口:

ssh -N -f -L localhost:12333:172.16.0.*:22 dam@159.226.113.*

使用端口:

ssh zy@localhost -p 12333
scp -r -p 12333 zy@localhost:~/data ./data

一劳永逸的.ssh_config修改

上面说的那么多都需要手动设置一堆option或者有很多前置操作,但是如果学会了修改.ssh_config配置文件,一切都如丝般顺滑,完全体会不到自己在外网。当然,我还没学会,到家再做折腾。

frp 全能穿透

如果你在jump有较大权限,或者其防火墙没有ban掉你开端口的权力,恭喜你,你可以拥有一套豪华的frp穿透套餐。包括,自己建站、自建私有云,client端也随你说:iOS、安卓、Unix-like、windows都无缝访问。

Windows

一直认为Mobaxterm比Xshell好用很多,这里可以再次推荐下。首先,它是免费的(至少免费版够用);其次,内置cygwin为底层更加方便,所以以上命令直接写在Moba的local terminal里面就可以直接用,而且左边的简易文件管理器基本做到无缝衔接。最重要的,UI漂亮,可定制!

如果想保存这种设定以便经常访问,也很简单,新建ssh对话的时候有gateway的选项,把跳板服务器的信息填进去就可以了。

[图片上传失败...(image-efd28b-1550468828018)]

相关文章

  • 钉钉内网穿透vs花生壳vsNATAPP

    目前常用的内网穿透有3种:钉钉内网穿透,花生壳内网穿透,natapp内网穿透。下面我们来对比一下他们的优略以及使用...

  • 内网端口穿透

    内网端口穿透 内网穿透在实际生活中,我们经常会在内网里部署服务让外网访问内网应用。这里我用的花生壳免费的内网穿透。...

  • Sunny-Ngrok实现自定义域名内网穿透

    内网穿透 + Sunny-Ngrok + 自定义域名 1、内网穿透 1.1 内网IP:内网IP,过多官方的解释这里...

  • 自建NAS系列04——网络服务

    内网穿透 花生壳 公网服务器与frp 内网穿透 内网穿透就是将自己内网中的服务映射到公网ip,达到公网可访问的目的...

  • frp内网穿透

    1-内网穿透 内网穿透即内网映射,可以将局域网变公网,从而可以让外网访问本地局域网内的服务。内网穿透原理技术有这么...

  • sunny-ngrok 内网穿透

    sunny-ngrok 内网穿透是基于 ngrok 的一个内网穿透服务,提供免费的用于开发的内网穿透隧道。 接下来...

  • RaspberryPi的内网穿透

    RaspberryPi的内网穿透 所谓的内网穿透,就是能在公网上访问到你局域网里的机器。 内网穿透到工具有很多,最...

  • 内网穿透(Windows+Linux):SakuraFrp详解

    前言 不会就学,内网穿透搞起 内网穿透 百度百科的介绍: SakuraFrp 今天找到的内网穿透工具,一次直接成功...

  • NATAPP内网穿透工具的使用教程

    内网穿透: 内网穿透简单来说就是将内网外网通过natapp隧道打通,让内网的数据让外网可以获取。 项目场景: 在本...

  • 内网穿透

    使用frp进行内网穿透,可以很方便地进行调试,比如微信公众号。穿透前,需要有一台能连接公网的机器,京东云最近做活动...

网友评论

      本文标题:内网穿透

      本文链接:https://www.haomeiwen.com/subject/uqcqeqtx.html