簡體   English   中英

從公共Internet訪問專用網絡上網關后面的機器上的REST端點

[英]Accessing REST end point on machine behind gateway on private network from public Internet

我的服務器正在家里運行,該服務器位於防火牆和網關的后面。 該服務器托管以Java編寫的基於REST的服務。 我希望公共Internet上的移動應用程序客戶端能夠訪問此服務器。

我不想更改網關/防火牆配置。

實現此設置的標准方法是什么?

我想到了以下方法:

  • 使用遠程端口轉發。 我可以擁有一個雲虛擬機,作為登陸機,並在該雲上打開SSH和HTTP端口。 遠程用戶將通過此雲計算機進行連接。 在HTTP情況下,我可以重定向http數據包,而ssh可以實現。

  • 使用雲中繼服務。 我不能使用Azure中繼服務,因為它們不提供Java庫。

我可能還需要從外部網絡通過SSH進入服務器。

建議的實現方式是什么?

您可以嘗試使用Azure Service Bus實施自己的中繼服務,請參閱https://azure.microsoft.com/zh-cn/documentation/articles/service-bus-java-how-to-use-queues/了解如何開始。

+---------+ send +----------+ send +------------+ req  +-------------+
|Home Serv| <->  |ServiceBus| <->  |Azure WebApp| <->  |Mobile Client|
+---------+ recv +----------+ recv +------------+ resp +-------------+

以上解釋:

  • 本地服務通過Service Bus Queue將Azure WebApp與消息進行通信。
  • 移動客戶端將Azure WebApp與HTTP請求和響應進行通信。
  • 與以上ServiceBus的所有通信都是通過AMQP或HTTP REST API實現的,可以通過網關進行通信,但會導致時間延遲。

希望能幫助到你。 最好的祝福。

您的問題很清楚。 確實有多種方法可以實現它。 當您要求行業標准時,請避免發布完整的解決方案列表。

恕我直言, VPN是行業標准的安全方法,可以從Internet訪問任何網絡 硬件/軟件實現有很多,您可以根據自己的基礎結構找到最佳的實現

萬一您的移動設備不支持VPN,我會尋找其他解決方案。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM