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

端口转发(-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. [C++中级进阶]001_C++0x里的完美转发到底是神马?

    [C++中级进阶]001_C++0x里的完美转发到底是神马? 转载至:http://www.cnblogs.com/alephsoul-alephsoul/archive/2013/01/10/285 ...

  2. vs2013发布网站

    第一次在Server2008中发布网站,期间发生了很多的错误,这里记录下来,以供以后的学习. (1).首先在IIS上先建一个网站,(网站名称.物理路径.类型 IP地址 和端口)然后点击确认,这样就是先 ...

  3. 微信平台上遇到的bug

    做微信平台遇到的bug,没有什么方法修改,至今只是避免出现,还未解决 1.header的position:fixed定位:如果整个页面的高度不足屏幕高度时,安卓部分手机header与title之间会有 ...

  4. struct与union字节大小的终极解释

    1.字节对齐的细节和编译器实现相关,但一般而言,如在windows下,就VC而言,满足一下三个准则:1) 结构体变量的首地址能够被其最宽基本类型成员的大小所整除:2) 结构体每个成员相对于结构体首地址 ...

  5. Android数据存储-读取内部存储空间数据

    内部存储空间的默认位置 data/data/应用名称 写数据,获取FileOutPutStream的方式 1.直接写死路径的方式 FileOutputStream fos = new FileOutp ...

  6. Activity packagename has leaked window android.widget.PopupWindow$PopupDecorView{4f92660 V.E...... .......D 0,0-455,600} that was originally added here

    原因是在销毁Activity时,Activity中的popupwindow还处于显示状态. 解决方法是重写Activity的onDestroy()方法,在Activity销毁前调用popupWindo ...

  7. BZOJ 1858 线段树

    标记会重叠需要判断. #include <bits/stdc++.h> using namespace std; inline int Max(int x,int y) {return x ...

  8. linux /boot 清理

    随着升级 /boot分区会越来越满 导致后续无法升级  原因是因为每次升级有可能升级内核  但是旧的内核没有删除  所以导致/boot一直增大 解决办法就是删除不需要的内核,一下步骤: 查看所有安装的 ...

  9. Inversion_树状数组***

    Problem Description You have a sequence {a1,a2,...,an} and you can delete a contiguous subsequence o ...

  10. Jmeter增加压力机方法

    windows: 需要别人的机器也安装jmeter 在别人的机器上运行jmeter-server.bat 修改jmeter.properties文件,查找remote_hosts 原始:remote_ ...