Socket使用Linux SSH代理发送数据
来源:互联网 发布:indesign cc 2015 mac 编辑:程序博客网 时间:2024/05/17 22:36
Socket使用Linux SSH代理发送数据
写这篇文章是为了解决项目开发中,在处理第三方接口时,在本地开发调试的问题。
场景:
某应用需要调用发送短信接口发送短信(或调用其他第三方接口),但是这些接口都有服务器IP鉴权,只允许从局方提供的服务器上才能调用。
需求:
接入第三方接口需要一个开发和反复调试的过程,每次将写好的程序上传到服务器上测试很是麻烦,看日志和断点调试又都不方便,现在需要让第三方接口把自己电脑认作是服务器,这样就方便开发调试了。
前提条件:
服务器要可以进行SSH连接,但又没有VPN(因为有VPN就没有这些问题了,拨进去就直接可以)
一、做如下准备:
1、一台可以通过Intenet进行ssh连接的linux服务器
我们假设服务器IP地址为202.102.110.110,ssh端口22,登录账号root,登录密码123456
2、一个有IP地址鉴权,只允许该服务器访问的第三方接口
我们假设这个接口为一个Socket接口,接口IP地址为202.102.119.119,端口为8080
3、ssh代理软件
myentunnel,下载地址:http://ishare.iask.sina.com.cn/f/23849533.html?from=like,如果该连接不可以下载,百度一下即可,有很多资源。
4、firefox浏览器
非必须,下面也会写一下firefox浏览器的代理配置,网上购买ssh账号就可以访问 facebook 这样的网站了。
二、配置ssh代理软件
1、运行myentunnel.exe,如图:
打开显示配置界面,如图:
2、配置SSH登录参数
输入服务器IP地址202.102.110.110、登陆账号、密码,这里我们设置本地代理端口为7070,后面需要用到。
点击保存——>连接,我们可以隐藏窗口,需要打开界面在电脑右下角可以找到。
三、Socket 连接使用代理像第三方接口发送数据
1、常规 Socket 连接代码如下:
- Socket socket = new Socket("202.102.119.119",8080);
- socket.setSoTimeout(60000);
- //……
2、使用代理连接发送数据代码如下:
- Socket socket = new Socket(new Proxy(Proxy.Type.SOCKS, new InetSocketAddress("127.0.0.1",7070)));//本地代理端口为7070
- socket.connect(new InetSocketAddress("202.102.119.119",8080));
- socket.setSoTimeout(60000);
- //……
这样以来,第三方接口鉴权IP获取的IP地址就是我们的服务器IP地址(202.102.110.110),而不会是我们自己电脑的IP地址了。
四、配置 firefox 浏览器使用socks5 代理
1、访问 http://www.ip138.com/ 可以查看我们的IP地址,下图是我的IP地址:
2、打开 firefox 浏览器,在地址栏输入about:config,搜索 remote ,设置 network.proxy.socks_remote_dns 的值为true,双击可以切换false和true。
3、点击浏览器上面菜单栏中的工具->高级->网络->设置->手动配置代理->输入socks主机为127.0.0.1,端口为7070 ->确定完成
此时再打开http://www.ip138.com/ 网站查看IP地址就变成服务器的IP地址了 202.102.110.110
- Socket使用Linux SSH代理发送数据
- 【转】Socket通过HTTP代理发送数据
- ssh socket转发代理
- ssh socket转发代理
- ssh socket转发代理
- linux socket无延迟发送数据
- 使用Socket类接收和发送数据
- C#使用socket发送和接受数据
- perl使用socket 发送二进制数据
- 使用Socket类接收和发送数据
- Linux Socket CAN驱动 <3. Socket CAN发送数据流程>
- Linux Socket CAN驱动 <3. Socket CAN发送数据流程>
- linux下c语言编程,使用socket发送文件和数据
- socket数据发送过程
- socket发送数据
- Linux下SSH代理
- ssh 客户端使用代理
- Linux下发送与接收组播数据(socket编程)
- 关于编码: ascii(ansi), gb-2312, unicode, utf8(续)
- 高性能javascript
- java中byte,String,InputStream之间的转换
- 如果Instagram在中国
- windows7 CMD下查看占用端口的进程(转)
- Socket使用Linux SSH代理发送数据
- linux查看内核版本、系统版本、系统位数(32or64)
- Spartan-3E Starter Kit 出厂例程修改与编译
- iOS: Classes for fetching and parsing XML or JSON via HTTP
- C++获取CPU ID
- modelsim se 10.1a 下载与破解
- 绝版经典《Linux与UNIX Shell编程指南》
- wav格式音频转换成aac格式音频(一)
- 349元我们应该有什么样的期待-原道N12豪华版 RK2906入手初体验