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

端口转发(-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. 2014年6月份第2周51Aspx源码发布详情

    AMX高效自定义分页控件(WinForm)源码  2014-6-9 [VS2008]2014.6.9更新内容:   1. 更改用户自定义分页控件功能布局.大大精简了调用分页自定义控件的代码,和使用系统 ...

  2. “用户、组或角色'XXX'在当前数据库中已存在”问题

    一般在还原数据库后,给这个数据库添加一个登录名时出现. 例如数据库备份文件中已经包含了用户abc,现在还原了数据库,然后发现现有数据库中没有abc这个用户,想要新建一个abc用户,作为该数据库的own ...

  3. CCF 201612-2 工资计算 java 解题

    问题描述 小明的公司每个月给小明发工资,而小明拿到的工资为交完个人所得税之后的工资.假设他一个月的税前工资(扣除五险一金后.未扣税前的工资)为S元,则他应交的个人所得税按如下公式计算: 1) 个人所得 ...

  4. CSS3 Background-size

    详情见链接 http://www.w3cplus.com/content/css3-background-size/ 例子:http://www.topcss.org/demo/background- ...

  5. 第三次作业——for 语句及分支结构else-if

    1.本次学习到的知识点: (1)else-if的一般形式:if(表达式1)语句1:else if(表达式2)语句2:........else if(表达式n-1)语句n-1:else语句n: (2)遇 ...

  6. 兼容解决 IE 、火狐、谷歌浏览器中 Iframe框架的页面缓存的方法

    <script type="text/javascript"> document.write('<iframe src="/ad_footer.html ...

  7. Ajax学习心得

    Ajax学习心得 大致学了下Ajax,才知道它不是某种编程语言,而是一种在无需加载整个页面的情况下能够更新部分网页的技术.了解了它的功能后觉得这真是一种好的技术,这得给前端和运维省多少力啊! 传统的网 ...

  8. java经典题目

    /***********Ryear.java begin********************/ import java.util.Scanner;public class Ryear { /** ...

  9. SVN 服务启动报错 0x8007042a

    服务器环境:Windows Server 2008 R2 企业版,Visual SVNServer 2.6.5 不能签出代码,发现svn服务关闭,手动启动报错: 事件查看器: Error: no li ...

  10. 关于npm

    转载自AlloyTeam:http://www.alloyteam.com/2016/03/master-npm/ 这是我学npm觉得最好的一篇文章啦-大家一起学起来吧 npm本来是Node.js的包 ...