otunnel 是一款对称的安全隧道工具。特点及优势:
otunnel 为**单二进制程序**,支持多操作系统平台(GNU/Linux, Unix-like, Mac, Windows, AR等),方便拷贝/移植。
otunnel **无需配置文件**,命令行使用。通过选项分饰 **server** , **client** 角色,方便部署
otunnel 隧道是**对称设计**,支持**正、反向代理**(端口映射)
以下以反向代理为示例,介绍 otunnel 用法。
![反向代理示意图](http://ooclab.github.io/img/otunnel-principle.jpg)
前提:
假设 server 的地址为 example.com
client 与 server 可以不在同一个网络,但是 client 要能访问 server
**注意** otunnel 程序可以分饰 server 和 client 两种角色(运行参数不同)
举例:将 client 可以访问的 192.168.1.3:22 映射到 server 上的 10022 端口:
现在访问 example.com:10022 即等于访问了 client 内网的 192.168.1.3:22 !
举例:假设 example.com 的 127.0.0.1 网络有 3128 端口(你懂的),在 client 执行:
现在 client 上的任何程序访问 20080 等于访问了 example.com 上的本地 3128 端口。
如果希望 client 局域网内其他机器也能访问 20080 ,需要这样执行:
**注意** 上面命令区别就是本地监听变成所有网口。
包含多个字段信息,以 `:` 隔开(为空的字段也不能省略`:`)。
**注意**
`本地地址` 或 `远程地址` 如果为空,表示所有网口(多用在需要启动 listen server 的时候)