用最直白的语言对本文所有内容进行定义:

端口转发(-L):用A机器(内网)登录B机器(公网), 在A机器打开端口,将收到的所有请求转发到B机器的某个端口 (在代理机上执行)

内网穿透(-R):用A机器(内网)登录B机器(公网),在B机器打开端口,将收到的所有请求转发回A机器的某个端口 (被代理机上执行)

例:端口转发

服务器A 内网IP  192.168.1.100   (不可访问外网)

服务器B 内网IP  192.168.1.101  外网IP 113.106.16.160

要求:通过连接B的外网 113.106.16.160:2222端口<映射> A的内网IP  192.168.1.100:22端口

ssh -f -N -L 代理(前台)IP:2222:被代理(后台):22 root@代理(前台)IP

ssh -f -N -L *:2222:192.168.1.100:22 root@113.106.16.160

访问代理B的2222等于访问服务器A 192.168.1.100的22口(在代理机B上执行)

场景:实用于没有对没有外网的服务器的通过端口转发访问-共享内网资源

例:内网穿透

公司服务器A 内网IP  192.168.1.100 (可访问外网)

阿里服务器B 内网IP  10.1.9.10         外网IP 113.106.16.160

要求:C 通过B的113.106.16.160:2222端口<映射>A的内网IP  192.168.1.100:22端口

ssh -f -N -R 代理(前台)IP:2222:被代理(后台):22 root@被代理(后台)IP

ssh -f -N -R *:2222:localhost:22 root@113.106.16.160 (被代理A上执行)

访问代理B的2222等于访问服务器A 192.168.1.100的22口(被代理A上执行)

场景:实用于公司内网电脑可以访问外网但不能被外网访问,在不使用VPN的情况下,内网穿透-访问内网资源

注意:进行内网穿透的时候默认只能穿透到远端服务器,远端服务器监听的是127.1的ip,想要监听公网ip的话需要打开sshd的GatewayPorts

参数:
-q 是静默执行,不提示多余信息,
-f 是后台执行,即ssh进程执行为后台进程,登录后即刻返回命令行,
-D 就是本地打算使用的转发端口
-f "sleep 30d"#30天有效 (-N 一直有效)
-C 压缩数据传输
-N 不执行脚本或命令,仅仅做端口转发 通常与-f连用
-L 将本地机(客户机)的某个端口转发到远端指定机器的指定端口
-R 将远程主机(服务器)的某个端口转发到本地端指定机器的指定端口
-g 表示允许远程主机连接转发端口

SSH全透明代理

ssh -nNTf -D localhost:26 root@113.106.16.160

代理脚本下载:http://pac.itzmx.com/ #只需要把abc.pac 的前句服务器地址改成自己的服务器和端口

安装nginx: yu -y install nginx

把abc.pac 移动到 /usr/share/nginx/html 

在client机器上设置IE代理:

SSH 端口转发+内网穿透的更多相关文章

  1. iptables 端口转发--内网实现上网

    iptables -t nat -I POSTROUTING -s 192.168.0.0/24 -j SNAT --to-source 118.x.x.xiptables -A FORWARD -s ...

  2. ssh 端口转发实现外网 80 端口映射到内网 80 端口

    开发中经常需要外网服务映射到本机内网服务的需要,便于调试. 以前都是同事帮着配,这两天自己也看了一下 ssh 端口转发. 同事分分钟钟搞定的事情,自己折腾了 2 天, 真是弱爆了. 最初老想不明白一件 ...

  3. rein 多平台支持的超便携端口转发与内网穿透工具

    介绍 本程序主要用于进行反向代理IP地址和端口,功能类似于 nginx 的 stream 模式和rinetd 的功能:在(1.0.5)版本开始,rein支持内网穿透,这一功能类似于frp 和ngrok ...

  4. 基于frp的内网穿透实例1-通过SSH访问内网机器

    原文地址:https://wuter.cn/1804.html/ 老母鸡终于到了,作为一个能运行linux系统的四核1G硬件,它还是比较小巧的. FRP 全名:Fast Reverse Proxy.F ...

  5. 使用frp进行内网穿透,实现ssh远程访问Linux服务器

    搭建一个完整的frp服务链需要: VPS一台(也可以是具有公网IP的实体机) 访问目标设备(就是你最终要访问的设备) 简单的Linux基础(如果基于Linux配置的话) 我这里使用了腾讯云服务器作为服 ...

  6. NAT、端口映射、内网穿透、公网IP都是啥

    原文地址:https://wuter.cn/1756.html/ 一.IPv4地址 IP协议是为计算机网络相互连接进行通信而设计的协议,它是能使连接到网上的所有计算机网络实现相互通信的一套规则. 这里 ...

  7. NATAPP--实现SSH内网穿透

    NATAPP--实现SSH内网穿透 1. 关于Natapp 2. 使用Natapp 3. Natapp安装和配置 4. XShell连接 相关参考博文原文地址: CSDN:KevenPotter:NA ...

  8. Frp内网穿透搭建,家庭主机对外提供接口,支持ssh访问

    Frp内网穿透搭建,家庭主机对外提供接口,支持ssh访问 1.使用场景: 需求1.家中服务器 ubuntu 主机,跑接口服务,需要对外暴漏, 需求2.同时需要在外网ssh远程 ​ 关键词: frp内网 ...

  9. p2p-tunnel 打洞内网穿透系列(三)TCP转发访问内网web服务

    系列文章 p2p-tunnel 打洞内网穿透系列(一)客户端配置及打洞 p2p-tunnel 打洞内网穿透系列(二)TCP转发访问远程共享文件夹 p2p-tunnel 打洞内网穿透系列(三)TCP转发 ...

随机推荐

  1. K近邻分类法

    K近邻法 K近邻法:假定存在已标记的训练数据集,分类时对新的实例根据其K个最近邻的训练实例的类别,通过多数表决等分类决策规则进行预测. k近邻不具有显示学习的过程,是“懒惰学习”(lazy learn ...

  2. RTL-SDR + GnuRadio+RFcat 分析、重放无线遥控信号

    0×00 前言 前段时间在<永不消逝的电波(二)HackRF入门:家用无线门铃信号重放> 一文中通过HackRF录制.重放了无线遥控信号,不过一直没来得及对信号进行分析,刚好在国外网站看到 ...

  3. linux装JDK

    一.安装sun java升 级到ubuntu 11.10之后.ubuntu 默认自带的是openjdkjava.默认情况这个是能够使用的,但是如果你想搭建专业的开发环境,还是需要使用sun的靠谱.另外 ...

  4. 最大流模版 pascal

    //最大流模版 ; maxm=; ..maxn] of integer; end; var n,m,max:longint; r:..maxn,..maxn] of longint; g:..maxn ...

  5. jsRender绑定数据

    首先,引入jquery(很重要),其次引入jsRender.js <script type="text/javascript" src="js/jquery-1.7 ...

  6. C# 文件选择对话框,Unity3d文件保存对话框

    using OpenWinForm = System.Windows.Forms; 在unity3d中,使用FileDialog应该把System.Windows.Forms.dll拷贝到unity工 ...

  7. rtpMIDI Tutorial

    Tobias Erichsen private stuff & software for audio, midi and more Search Main menu Skip to prima ...

  8. Linux初学---->WinSCP+Putty

    十二是个初学者,就觉得有意思.所以学下Linux.如果有啥不对的情路过大牛多多指点.心中也开始学着写博客,因为觉得博客对于学习技术不仅是个记录,还是对学的东西一个复习,一个反思,一个交流.另如果有好的 ...

  9. Swift---- 可选值类型(Optionals) 、 断言(Assertion) 、 集合 、 函数

    1 使用数组实现九宫格 1.1 问题 Swift提供经典的数组和字典两种集合类型来存储集合数据.本案例使用数组实现一个九宫格程序,如图-1所示: 图-1 1.2 方案 九宫格就是有一个n行n列的方格, ...

  10. 上下文管理、线程池、redis订阅和发布

    一:上下文管理: 对于一些对象在使用之后,需要关闭操作的.比如说:socket.mysql数据库连接.文件句柄等. 都可以用上下文来管理. 语法结构: Typical usage: @contextm ...