java程序中代理服务器的设置问题?

对于HTTP代理的设置,命令行格式如下:java -Dhttp.proxyHost=127.0.0.1 -Dhttp.proxyPort=8080 -Dhttps.proxyHost=127.0.0.1 -Dhttps.proxyPort=8080 -Dhttp.nonProxyHosts="*.example.com|localhost" -jar webscan.jar 需要注意,若需设置HTTP代理,务必指定`http.proxyHost`和`http.proxy...
java程序中代理服务器的设置问题?
在内网渗透工作中,搭建反向socks5代理是常用手段之一,红队人员需将各种渗透工具连接至代理。然而,对于使用Java编写的工具,往往不具备socks5代理功能,导致使用proxifier挂载Java程序时出现各种问题。本文将介绍如何通过命令行解决这一难题,并纠正网上关于Java中socks5代理设置方法的错误。

启动socks5代理的命令格式为:

java -DsocksProxyHost=127.0.0.1 -DsocksProxyPort=1080 -jar webscan.jar

其中,`socksProxyHost`为socks5代理的IP地址,`socksProxyPort`为代理的端口号。若需要设置认证,网上文章提供的方法(如`java.net.socks.username`和`java.net.socks.password`)并不适用于命令行环境。实际测试中,此方法无效。

对于HTTP代理的设置,命令行格式如下:

java -Dhttp.proxyHost=127.0.0.1 -Dhttp.proxyPort=8080 -Dhttps.proxyHost=127.0.0.1 -Dhttps.proxyPort=8080 -Dhttp.nonProxyHosts="*.example.com|localhost" -jar webscan.jar

需要注意,若需设置HTTP代理,务必指定`http.proxyHost`和`http.proxyPort`;若需设置HTTPS代理,则指定`https.proxyHost`和`https.proxyPort`。同时,`http.nonProxyHosts`选项用于指定不走代理的URL。

在Java代码中直接添加`System.setProperty`设置代理更为简便。以下为设置HTTP/HTTPS代理的示例代码:

设置代理的代码示例如下:

设置Socks5代理的代码示例如下:

代理认证的代码编写如下:

总结而言,针对Java程序的代理设置,命令行方式提供了一种直接且有效的方法。官方手册是查找Java网络设置方法的重要资源。公众号致力于分享网络安全技术,包括APT分析、红队攻防等知识,每周更新原创内容,欢迎关注。2024-11-03
mengvlog 阅读 6 次 更新于 2025-07-19 03:18:13 我来答关注问题0
  • java -Dhttp.proxyHost=127.0.0.1 -Dhttp.proxyPort=8080 -Dhttps.proxyHost=127.0.0.1 -Dhttps.proxyPort=8080 -Dhttp.nonProxyHosts="*.example.com|localhost" -jar webscan.jar 需要注意,若需设置HTTP代理,务必指定`http.proxyHost`和`http.proxyPort`;若需设置HTTPS代理,则指定`http...

  • is.close();3,当然在Java中,有Proxy代理上网的使用,此时使用URL(HTTP)就不涉及Socket(TCP)了,看如下代码 //设置代理 System.setProperty("http.proxySet", "true");System.setProperty("http.proxyHost", "10.1.2.188");System.setProperty("http.proxyPort", "80");//直接访问目的地址 UR...

  •  fairy_anne Java web start有什么用

    从Java Web Start 的内置“应用程序管理器”启动,管理器将跟踪最近使用的应用程序,并提供对喜好应用程序的快速访问。从桌面图标或“开始”菜单(仅适用于 Microsoft Windows)启动。无论使用何种方式,每次启动应用程序以检查是否有应用程序的更新版本时,Java Web Start 都将重新连接到 Web 服务器。从Web 浏览器启动在J...

  • 在Java中,我们可以通过设置代理来实现网络请求的路由。代理设置是通过JVM的系统属性来实现的。主要涉及三个属性:proxySet、proxyHost和proxyPort。其中,proxySet为布尔值,当设置为true时,表示启用代理服务器,而proxyHost和proxyPort分别对应代理服务器的IP地址和端口号。设置这些系统属性有多种方式。一种...

  •  王丫丫么么哒 如何用JAVA实现一个代理服务器

    (需要指定另一个服务器的名称和端口)。 当代理服务器连接到Web服务器之后,我用一个简单的循环在个Socket之间传递数据。这里可能出现一个问题,即如果没有可操作的数据,调用read方法导致程序阻塞,从而挂起程序。为防止出现这个问题,我用setSoTimeout方法设置了Socket的时间(参见Listing 2)。这样,如果某个Socket...

檬味博客在线解答立即免费咨询

Java相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部