1

RMI トラフィックをトンネリングする安全な方法を探しています。私のアプリケーション(Java Webstart)では、開いている唯一のポートがポート80であると想定する必要があります.

rmi の att socketfactories を確認しましたが、本当にプロキシが必要ですか。

クライアント側ですべてのトンネリングを行う必要があります。私が乗り越えようとしている唯一のファイアウォールは、クライアント側にあります。上記のポート範囲で 1099 を開くことができません。いくつかの実装を見るといいでしょう。ありがとう!

4

2 に答える 2

4

ポート 1099 は、1995 年頃に IANA で RMI 用に予約されました。クライアント側のファイアウォールでアウトバウンド アクセス用にポート 1099 を開かない理由はありません。

super(port)RMI は、構築時 ( ) またはエクスポート時 ( ) にポート番号を指定することで、固定ポート番号を使用するように設定できますexportObject(object, port)。さらに良いことに、 を介してサーバー JVM 内にレジストリを作成すると、LocateRegistry.createRegistry()その後エクスポートされるすべてのリモート オブジェクトは、別のポートを指定するかサーバー ソケット ファクトリを使用しない限り、そのポートを使用します。

しかし... RMIには、「すぐに使える」HTTPトンネリングがすでに含まれています。外部ソリューションは必要ありません。サーバー側で、JDK で提供される RMI-Servlet をデプロイする必要があります。

于 2013-11-07T21:27:46.947 に答える