xinetd は、非ルートデーモンが特権ポートを listen できるようにする最良の方法ですか?

xinetd は、非ルートデーモンが特権ポートを listen できるようにする最良の方法ですか?

使用する必要がある場合Java アプリケーションの SNMP 監視アプリケーション (通常はデーモン ユーザーとして実行されます) が snmp ポートをリッスンする必要があります。

他に選択肢がない場合は、もちろん別のポート、たとえば 11161 を使用することもできます。

しかし、XInetd を使用してポート 161 を 11161 にリダイレクトすることはできます。

私の質問は、これが最善の方法かどうかです。iptables ポート リダイレクトの方が優れていますか?

答え1

一般的にはxinetd良い解決策です。一回限りの場合は、私はよくバランスすべてをコマンドラインで設定できるという理由だけで、複数回実行する必要がある場合は、の方xinetdが適しています。

iptables によるリダイレクトは問題なく動作しますが、透明性が欠けています。他の誰かがシステムを保守する必要がある場合、リダイレクト ルールに気付かない可能性があります。一方、xinetd などのプロキシ ソリューションは、などのさまざまな標準診断コマンドの出力に表示されますnetstat

答え2

まず第一に、Oracle の説明はひどいです。アプリケーション (Java はオペレーティング システムに関してアプリケーションです) で SNMP を使用する適切な方法は、それを OS-snmp-service (Linux の場合は snmpd) のサブエージェントとして登録することです。

それを実現する方法があるはずです。その後、SNMPD セキュリティ設定 (snmpd のマニュアル ページを参照) を使用して、MIB のその部分へのアクセスを制限できます。

関連情報