2014-01-13 2 views
0

나는 CentOS 6.5Jetty 9.1.0.v20131115을 사용합니다. Jetty의 JMX 기능을 사용합니다.부두 JMX 열린 포트 1099

는 난 단지 실행중인 컴퓨터 (localhost, 또는 127.0.0.0/8) 내에서 액세스 할 JMX를 갖고 싶어,하지만 외부에서 (예를 들어, JMX는 public.example.com에서 액세스 할 수 없다).

따라서 Jetty의 JMX RMI 호스트가 와일드 카드 jetty.jmxrmihost=0.0.0.0 대신 jetty.jmxrmihost=localhost을 사용하도록 구성했습니다.

여전히 내 외부 서버 인스턴스는 "외부"에서 액세스 할 수 있으므로 누구나 JMX를 통해 제티 서버에 연결할 수 있습니다.

방파제가 에만 수신 대기하도록 구성해야하는 항목 에서 발생한 JMX 연결은 무엇이겠습니까?


파일 ${jetty.base}/start.d/jmx.ini :

--module=jmx 
#jetty.jmxrmihost=localhost # I tried this one, but it didn't work either 
jetty.jmxrmihost=127.0.0.1 
jetty.jmxrmiport=1099 

파일 ${jetty.base}/start.d/jmx-remote.ini : 그냥

--module=jmx-remote 
+0

그동안 저는 Jetty JMX 외부에 액세스하는 방법을 검색하는 데 2 ​​일을 보냈습니다. –

답변

1

여기

이 주제에 관련된 내 부두 구성 파일입니다 질문에 대한 질문에서 Jetty/JMX 문제가 적고 방화벽 문제가 더 많은 것으로 보입니다. 원하는 것은이 서버의 JMX 포트에 대한 원치 않는 외부 트래픽을 차단하는 것입니다.

권한이 있고 기꺼이 그렇게하면 JMX 포트를 여는/etc/sysconfig/iptables (이 예제에서는 1099)에서 규칙을 제거해야합니다. 이러한 규칙은 다음과 같이 표시됩니다

[0:0] -A INPUT -s SOME_IP_SUBNET -p tcp -m tcp --dport 1099 -j ACCEPT 

는 또는 플립 측면에서, 당신은 특정 서브넷에 대한 JMX 모니터링을 가능하게 할 수 있습니다 (예 : 회사의 서브넷으로)하는 시점에서, 다음과 같은 추가 할 것 : 각각 자신의 IP 서브넷 및 JMX 포트와 MY_IP_SUBNET_HERE 및 JMX_PORT를 교체

[0:0] -A INPUT -s MY_IP_SUBNET_HERE -p tcp -m tcp --dport JMX_PORT -j ACCEPT 

.

필자는 iptables에 대해 많은 규칙을 작성하지 않았으므로 위의 예를 꼭 필요한 구문이라고 생각하지 마십시오. * nixCraft는 basic guide to handling iptables/sysctl을 제공합니다.이 파일은 또한 파일을 편집하지 않고 규칙을 수정하는 방법을 다루고 있습니다. 보통 파일을 수정하기 만합니다. 당신이 iptables에 파일을 수정하는 경로를 이동하는 경우

두 노트 :

  • 는 iptables에 (/etc/init.d/iptables restart 또는 service iptables restart)
  • 전화 /sbin/sysctl -p 후 다시 시작의 iptables를 다시 시작해야합니다. iptables를 다시 시작하면 sysctl.conf에서 사용자 정의 규칙이 지워지고 sysctl -p을 호출하면 해당 규칙이 복원됩니다.
+0

트래픽이 해당 포트에 도달하지 못하도록하고 싶다면 특정 포트로 지정된 패킷을 드롭 할 수도 있습니다. – altendo

관련 문제