linux ssh代理 –快速搭建代理服务器
大家好,又见面了,我是你们的朋友全栈君。
前言:开发机器IP固定,路由上有限制,不通直连。是个很郁闷的事。有个时间在网上看到的ssh代理转发。命令功能很强大。在这我就对自己了解的画了个间图方便大家理解。
本地转发、正向隧道
“本机”连上“ssh服务器”,然后把”ssh服务器”能访问的机器地址和端口(当然也包括“ssh服务器”自己)镜像到”本机”的端口上。
命令:
ssh -L [客户端IP或省略]:[客户端端口]:[服务器侧能访问的IP]:[服务器侧能访问的IP的端口] [登陆服务器的用户名@服务器IP] -p [服务器ssh服务端口(默认22)]
其中,客户端IP可以省略,省略的话就是127.0.0.1了,也就是说只能在客户端本地访问。服务器IP都可以用域名来代替。
举例说明:
本地IP192.168.1.2,你可以ssh到某台服务器8.8.8.8,8.8.8.8可以访问8.8.4.4,你内网里还有一台机器(192.168.1.88)可以访问你。
如果你想让内网里的另外一台电脑访问8.8.4.4的80端口的http服务,那么可以执行:
ssh -CfNg -L 192.168.1.2:8080:8.8.4.4:80 test@8.8.8.8
C表示压缩数据传输 f表示后台用户验证,这个选项很有用,没有shell的不可登陆账号也能使用. N表示不执行脚本或命令 g表示允许远程主机连接转发端口
也就是说,ssh到8.8.8.8上,然后让8.8.8.8把8.8.4.4的80端口映射到本地的8080端口上,而且和本地192.168.1.2这个IP绑定。
内网里的另外一台机器可以通过IE浏览器中输入http://192.168.1.2:8080查看8.8.4.4的网页
反向隧道—-隧道监听远程port,突破防火墙提供服务
本机”连上“ssh服务器”,然后把“本机”能访问的机器地址和端口(也包括”本机”自己)镜像到“ssh服务器”的端口上。
反向连接用得可能更多一些。比如你的客户端在内网,在外网是无法直接访问到的,这时用反向连接打通一条隧道,就可以从外网通过这条隧道进来了。
命令:
ssh -R [服务器IP或省略]:[服务器端口]:[客户端侧能访问的IP]:[客户端侧能访问的IP的端口] [登陆服务器的用户名@服务器IP] -p [服务器ssh服务端口(默认22)]
其中,服务器IP如果省略,则默认为127.0.0.1,只有服务器自身可以访问。指定服务器外网IP的话,任何人都可以通过[服务器IP:端口]来访问服务。当然,这个时候服务器本机也要输入外网IP:端口来访问。
举例说明:
“本机”IP 192.168.1.2,你可以ssh到外网某台服务器8.8.8.8,你内网里有一台机器192.168.1.3。
如果你想让外网所有的能访问8.8.8.8的IP都能访问192.168.1.3的http服务,那么可以执行:
ssh -CfNg -R 8.8.8.8:8080:192.168.1.3:80 test@8.8.8.8
C表示压缩数据传输 f表示后台用户验证,这个选项很有用,没有shell的不可登陆账号也能使用. N表示不执行脚本或命令 g表示允许远程主机连接转发端口
也就是说,ssh到8.8.8.8上,然后把本地局域网内192.168.1.3的80端口映射到8.8.8.8的8080端口上,这样外网任何一台可以访问8.8.8.8的机器都可以通过8080端口访问到内网192.168.1.3机器的80端口了。
参考: http://blog.csdn.net/linsanhua/article/details/17360369 http://www.cnblogs.com/wangkangluo1/archive/2011/06/29/2093727.html
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/141861.html原文链接:https://javaforall.cn
相关文章
- 籍Linux内存管理宝典(linux内存书)
- 登录开启Linux安全之门:启用SSH登录(linux允许ssh)
- 数据库如何在Linux中查看MySQL数据库(linux查看mysql)
- Linux安装2TB硬盘的详细步骤(linux安装2t硬盘)
- 使用SSH连接远程Linux服务器并上传文件(ssh上传文件到linux服务器上)
- Linux SSH登录失败:解决方案(linux无法ssh登录)
- 文件通过 SSH 连接 Linux 下载文件(ssh连接linux下载)
- 如何使用Linux安全登录SSH(linux怎么使用ssh)
- Linux安装SSH配置: 一步一步指引(linux安装ssh配置)
- 服务Linux开启SSH服务轻松实现远程登录(linux开机启动ssh)
- 安装及使用Linux系统中SSH安装及使用指南(linux中ssh)
- Linux阻塞队列深度剖析(linux阻塞队列)
- 系统Linux 32位系统下载:探索开放式操作系统(linux下载32位)
- 管理Linux下SSH远程管理实践(linux下的ssh)
- 服务器重启Linux服务器:通过SSH连接来实现(ssh重启linux)
- Linux g 编译:深入理解(linux-g编译)
- Linux下开启SSH登录,实现安全连接(linux允许ssh登录)
- 文件夹解决Linux访问共享文件夹问题(linux不能访问共享)
- Linux下实现快速代理设置(linux代理设置)
- 如何使用SSH安装Linux系统(ssh安装linux)
- Linux的发展历程:从岔路到新峰(linux的分支)
- Linux用户登录:失败的头痛之旅(linux用户登录失败)
- 探索Linux脚本的SSH连接秘密(linux脚本ssh)
- Linux 无法 SSH 的解决方案(linux无法ssh)
- 使用Linux SSH命令轻松远程登录(linux的ssh命令)
- Linux下反向代理配置实现方法(linux反向代理配置)
- Linux分支:定义、功能及影响(linux的分支)
- 简单易懂的Linux定时关机命令操作指南(linux定时关机命令)
- 快速高效:Linux服务器代理软件(linux服务器代理软件)
- 服务器快速搭建Linux代理服务器(linux架设代理)
- Linux大神教你取消代理,让网络畅通无阻!(linux取消代理)
- Linux下批量mv文件的一种简洁方法(linux批量mv)
- 令人惊讶:用Linux命令轻松查看(linux 命令查看)
- Linux文件显示:缤纷色彩世界(linux文件显示颜色)