Когда мне нужно использоватьМониторинг SNMP для приложений Java, необходимо, чтобы это приложение (обычно запущенное как демон пользователя) прослушивало порт SNMP.
Если нет другой альтернативы, конечно, я могу использовать другой порт, скажем, 11161.
Но я могу использовать XInetd для перенаправления порта 161 на 11161.
У меня вопрос: это лучший метод? Лучше ли перенаправление портов iptables?
решение1
В целом, xinetd
хорошее решение. Для одноразовых я часто используюбаланспросто потому, что все можно настроить в командной строке, но если вам нужно сделать это более одного раза, xinetd
это лучший выбор.
Перенаправление через iptables работает отлично, но страдает от недостатка прозрачности. Если кто-то другой должен поддерживать систему, он может не знать о правилах перенаправления, тогда как прокси-решения, такие как xinetd, отображаются в выводе различных стандартных диагностических команд, таких как и netstat
т. д.
решение2
Во-первых, Oracle-description отстой. Правильный способ использовать SNMP для приложения (java является приложением по отношению к операционной системе) - это зарегистрировать его как субагента для OS-snmp-service (в случае linux: snmpd).
Должен быть способ сделать это. После этого вы можете использовать настройки безопасности SNMPD (см. man-страницы snmpd), чтобы ограничить доступ к этой части MIB.