Java SOCKS v5请求发送当前用户而不是无用户
我的问题是: 1) 在docker compose网络中,如何将dante用作SOCKS v5代理,而不进行身份验证,将amqp消息从生产者发送到RabbitMQ 2) 我以前从来没用过袜子,所以我不知道我想做的是愚蠢的还是行不通的,是吗 我目前正试图建立一个由三部分组成的网络:Java SOCKS v5请求发送当前用户而不是无用户,java,docker,proxy,socks,dante,Java,Docker,Proxy,Socks,Dante,我的问题是: 1) 在docker compose网络中,如何将dante用作SOCKS v5代理,而不进行身份验证,将amqp消息从生产者发送到RabbitMQ 2) 我以前从来没用过袜子,所以我不知道我想做的是愚蠢的还是行不通的,是吗 我目前正试图建立一个由三部分组成的网络: 代理服务器(Dante) RabbitMQ服务器 消息生产者 我想通过Dante将我的消息代理给rabbitMQ 为了实现这一点,我已开始使用以下选项创建我的制作人: -DsocksProxyHost=dante 我正
-DsocksProxyHost=dante
我正在使用docker compose脚本运行应用程序,我可以验证我的制作人是否连接到主机dante
。但是,我的producer始终尝试连接当前用户凭据,即root(如果我更改了用户,则为socksuser),忽略以下选项:
-Djava.net.socks.username=socksuser
-Djava.net.socks.password=sockspass
我可以用docker compose的以下输出验证设置:
app_1 | Connecting to proxy host: dante
app_1 | User: socksuser with password: sockspass
app_1 |
dante_1 | Jan 24 15:01:41 (1516806101.263639) sockd[7]: info: pass(1):
tcp/accept [: 172.19.0.4.40910 172.19.0.3.1080
dante_1 | Jan 24 15:01:41 (1516806101.265226) sockd[7]: info: block(1):
tcp/accept ]: 172.19.0.4.40910 172.19.0.3.1080:
error after reading 11 bytes in 0 seconds:
system password authentication
failed for user "root"
app_1 | java.net.SocketException: SOCKS : authentication failed
app_1 | at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:473)
应用程序1 |连接到代理主机:dante
应用程序1 |用户:socksuser,密码:sockspass
附录1|
dante|u 1 | Jan 24 15:01:41(1516806101.263639)sockd[7]:信息:通行证(1):
tcp/accept[:172.19.0.4.40910 172.19.0.3.1080
dante|u 1 | Jan 24 15:01:41(1516806101.265226)sockd[7]:信息:block(1):
tcp/accept]:172.19.0.4.40910 172.19.0.3.1080:
在0秒内读取11个字节后出错:
系统密码验证
用户“root”失败
app|u 1 | java.net.SocketException:SOCKS:身份验证失败
app_1|位于java.net.socksocketimpl.connect(socksocketimpl.java:473)
我使用的dante docker映像是,提供了默认配置,该配置声明允许每个人使用代理。用于SOCKS5身份验证的方法在实际身份验证之前由SOCKS5客户端和SOCKS5服务器协商商定 因此,如果客户端正在启动身份验证,这表明服务器需要它,我会检查SOCKS5服务器配置