在Tomcat servlet中创建套接字 - 权限被拒绝(连接失败)

时间:2018-01-10 23:14:01

标签: java linux sockets tomcat servlets

所以我有一个奇怪的问题,我无法创建一个Socket到我的localhost地址。我尝试从我的tomcat servlet中打开一个套接字到127.0.0.1:6001。另一个应用程序正在侦听此端口。其他服务可以连接到此服务。但是在我的tomcat servlet中,当我尝试连接时,我总是得到Permission denied(连接失败)。我错过了什么吗?

规格:

  • Tomcat的7.0.76
  • CentOS Linux版本7.4.1708
  • java版“1.8.0_121”

我已经尝试过:

在catalina.policy

中添加权限
  • grant codeBase“file:$ {tomcat.home} / webapps / App”{     permission java.net.SocketPermission“localhost:6000-6200”,“accept,connect,listen”;     permission java.util.PropertyPermission“*”,“read”; };

在SELinux中设置参数

  • setsebool -P httpd_can_network_connect on

提前致谢

1 个答案:

答案 0 :(得分:0)

此“权限被拒绝”来自操作系统,而不是来自Java安全管理器,因此提供SocketPermission是无关紧要的。 Tomcat正在运行的用户标识没有连接到该端口的权限。