在Ubuntu上使用Java应用程序打开端口80


Charizard
2025-03-17 08:43:57 (5天前)
  1. 我需要做的是运行一个Java应用程序,它是RestletRESTful服务服务器端writetern。此服务将由另一个在Google App上运行的应用调用


发动机
</跨度>

因为 进入我的脑海中包括:

改变安全性

政策
</跨度>
JRE,即文件驻留在/lib/security/java.policy中,对于grantjava.net.SocketPermission“* .80”“listen,connect,accept,resolve ”

4 条回复
  1. 0# 易米烊光 | 2019-08-31 10-32



    更简单的解决方案是在Apache httpd中设置反向代理,Ubuntu将从/etc/init.d在端口80上为您运行。



    还有一些方法可以使用iptables,但我没有最近的个人经验。我现在有这样的代理运行。


  2. 1# 是吗@ | 2019-08-31 10-32



    你可以使用iptables重定向使用这样的东西:




    1. iptables -t nat -A PREROUTING -i eth0 -p tcp dport http -j REDIRECT to-ports 8080

    2. </code>


    使用以下命令永久更改(在重新启动后保留):




    1. iptables-save

    2. </code>

  3. 2# v-star*위위 | 2019-08-31 10-32




    解决方案1:
    </强>
    它不会改变任何东西,这不是Java限制,它是阻止您使用特权端口号(端口低于1024)的操作系统。




    解决方案2:
    </强>
    不是一个好主意IMO,有充分的理由不以root身份运行进程。




    解决方案3:
    </强>
    使用

    setcap

    要么

    iptables

    。看到

    这个上一个问题



登录 后才能参与评论