解决方案

利用ssh命令建立SOCKS5代理服务器

seo靠我 2023-09-26 02:23:06

文章目录

ssh命令建立SOCKS5代理服务器一、ssh命令建立SOCKS5代理服务器二、停止ssh 开启的socks代理三、测试SOCKS5 服务是否正常1. 通过socket.sendUrgentDSEO靠我ata(0xff);来检测是否与服务端连通2. 通过具体的应用软件测试,举例filezilla client 四、参考

ssh命令建立SOCKS5代理服务器

一、ssh命令建立SOCKS5代理服务器

sshSEO靠我 -f -N -D bindaddress:port name@server

bindaddress :指定绑定ip地址

port : 指定侦听端口

name: ssh服务器登录名

server: ssh服务SEO靠我器地址

-N 选项确保ssh保持空闲状态,并且不在主机上执行任何命令。(不执行shell)

-D 端口上的动态端口转发

(Specifies a local “dynamic” application-leSEO靠我vel port forwarding.Currently the SOCKS4 and SOCKS5 protocols are supported, and ssh will act as a SSEO靠我OCKS server.)

-f 作为守护进程进入后台

举例1:假设把一个树莓派作为SOCKS5代理服务器,该树莓派的IP地址是192.168.4.160,SOCKS5的端口7070,在树莓派中输入如下命SEO靠我令:

ssh -f -N -D 192.168.4.160:7070 pi@127.0.0.1

这样就建立了SOCKS5代理。

举例2:

ssh -f -N -D 0.0.0.0:1080 she@127.0SEO靠我.0.1

访问控制可以通过实现iptables。例如,要仅允许来自ip的1.2.3.4人员使用SOCKS5代理,请添加以下iptables规则:

iptables -A INPUT --src 1.2.3SEO靠我.4 -p tcp --dport 1080 -j ACCEPT iptables -A INPUT -p tcp --dport 1080 -j REJECT

第一条规则说,允许任何人SEO靠我1.2.3.4连接到端口1080,另一条规则说,拒绝其他所有人连接到端口1080。

二、停止ssh 开启的socks代理

命令会在后台运行,可以通过ps aux | grep ssh查看进程是否在正常运行SEO靠我

如果需要关闭进程,杀掉运行的进程即可

三、测试SOCKS5 服务是否正常

1. 通过socket.sendUrgentData(0xff);来检测是否与服务端连通

package socks5;imporSEO靠我t java.net.Socket;/*** java之socket的OOBInline和UrgentData和发送心跳包研究* 参考URL: https://blog.csdn.net/u01106SEO靠我8702/article/details/53413325** UrgentData可以理解为紧急发送数据方式,如果我们客户端先用write方法写入数据,再用UrgentData发送数据,再去执行flSEO靠我ush操作,* 我们可以得到服务端先打印UrgentData发送的数据,然后再打印write写入的数据。** 说明使用sendUrgentData方法发送数据后,系统会立即将这些数据发送出去;而使用wSEO靠我rite发送数据,必须要使用flush方法才会真正发送数据。** 我们还可以通过socket.sendUrgentData(0xff);来检测是否与服务端连通,和ping IP 效果差不多,* 其它的SEO靠我socket.isConnected() socket.isOutputShutdown()都是本地检测*/ public class TestClient {public statiSEO靠我c void main(String[] args){System.out.println(isConnected());}@SuppressWarnings("resource")public stSEO靠我atic boolean isConnected(){Socket socket;try{socket=new Socket("11.12.117.101", 1080);//往输出流发送一个字节的数SEO靠我据,只要对方Socket的SO_OOBINLINE属性没有打开,就会自动舍弃这个字节,// 而SO_OOBINLINE属性默认情况下就是关闭的socket.sendUrgentData(0xFF);rSEO靠我eturn true;}catch(Exception e){return false;}} }

2. 通过具体的应用软件测试,举例filezilla client

1)编辑–>设置,如下SEO靠我,配置socks5服务器相关信息。

2)填写ftp 地址,进行ftp连接。

11.12.112.184 是真实FTP地址

11.12.117.101 是socks5代理服务器地址。

如下连接日志,可以看到,fSEO靠我ilezilla client自动会连接代理服务器建立连接。

FTP服务端看到的是你socks代理服务器ip地址。

四、参考

SSH搭建Socks Proxy

参考URL: https://www.jiansSEO靠我hu.com/p/274b691f672d
“SEO靠我”的新闻页面文章、图片、音频、视频等稿件均为自媒体人、第三方机构发布或转载。如稿件涉及版权等问题,请与 我们联系删除或处理,客服邮箱:html5sh@163.com,稿件内容仅为传递更多信息之目的,不代表本网观点,亦不代表本网站赞同 其观点或证实其内容的真实性。

网站备案号:浙ICP备17034767号-2