2017-09-13 41 views
1

方案與IIS上DMZ

工作,我有我已經研究了兩年的應用程序。我使用框架.NET來開發它來自Pascal的Oxygene語言。 當我的代碼中有新的東西時,我使用文件系統方法發佈我的應用程序。我有幾臺服務器在Amazon EC2上工作,所以我將這些文件傳輸到IIS服務器中的一個文件夾中。在這個IIS服務器中,我已經有了一個與我的應用程序相對應的網站,所以我只需替換舊文件以獲取最新文件。 我有另一臺服務器,作爲一個SQL服務器。 最後的細節是,在我的應用程序中,用戶可以附加文件,導入圖片,導出PDF和Excel文件。附件和圖片存儲在應用程序所在的同一文件夾中。

問題

這裏是我的問題。我有一個新客戶,是一個大客戶。看起來這家公司具有強大的IT安全性,因此應用程序必須位於其服務器中。 最大的問題是,他們需要我的應用程序在下面的架構設置: DMZ

我習慣只使用一個應用程序服務器(適用於外部訪問)和SQL服務器。他們希望DMZ網絡中的第三臺服務器能夠讓外部訪問發生。應用程序不能放在DMZ中的原因是因爲我在下面提到的用戶存儲在應用程序中的文件。數據庫存儲所有數據,但不包括提到的那些文件。

解決方案我已經提出,但將不被接受:

  • 發佈位於DMZ中的IIS服務器的應用程序:這不會因爲我的應用程序商店的用戶附件被接受在應用程序所在的同一文件夾中。還有圖像存儲在那裏。

  • 發佈的應用程序服務器的應用程序,同時也發佈在DMZ服務器重定向到局域網內部的IIS服務器一個空的應用程序:這是最好的解決辦法,我已經上來了。

  • 使用反向代理來保護LAN網絡:由於反向代理根本不安全,因此這不在表格中。

我有點困惑,因爲我看不到的方式來我的應用程序在兩個單獨的,使其在建議的架構工作。

任何人都可以給我提示或想法,這將如何工作?

    -

回答

0

你不能「重定向」到局域網內部,重定向是客戶端的操作,因此,如果內部服務器是不是已經暴露出來,你不能重定向別人它。

反向代理可能是您最好的選擇。你爲什麼認爲這不安全?這是一個久經考驗的解決方案,它允許您將其他端口/服務留給內部請求(如文件服務器,它就像您試圖公開的聽起來一樣)。

這些文件如何上傳?你使用FTP嗎? SMB? HTTP?該解決方案不會將這些其他協議暴露給外部世界(請勿將SMB暴露給外部,否則會導致悲劇發生)。外部用戶是否需要上傳這些文件?

+0

那麼....反向代理實際上是一個想法,我給他們,這將是一個解決方案。但它不會被公司接受,據他們說,儘管我不同意,但這根本不安全。現在我正試圖理解這個建議的架構是如何工作的。 –

+0

使用HTTP上傳文件。問題是它們存儲在應用程序的文件夾中。 –

+0

您在這裏只有兩種選擇...將您的應用程序發佈到DMZ服務器,或者將DMZ中的代理放到應用程序發佈的位置。 從技術上講,你也可以在局域網發佈的應用程序的防火牆中打開一個洞,但那會很糟糕。 沒有讓HTTP通過公共互聯網(通過DMZ),或者沒有提供代理到應用程序服務器的方式來獲取HTTP到你的應用程序/圖像沒有什麼神奇的方式。這只是網絡工作的方式。必須有一種方法可以將應用服務器中的數據傳送到互聯網。 –