2009-02-23 187 views
0

我們有一個網站將聯繫表單的內容通過電子郵件發送給我們的客戶。我們希望對此進行更改以使其更安全(敏感數據可以通過聯繫表單發送),我們使用SSL證書加密了該頁面,因此我們目前唯一的薄弱環節就是電子郵件。PHP通過SSH發送電子郵件

我們已經建立了一個SSH連接到我們客戶端的服務器,我想知道是否有人知道是否可以通過該連接發送一封電子郵件(可能帶有附件)?

我們的網絡服務器是一臺linux機器,我們可以自己安裝應用程序。客戶端的服務器是一個unix服務器,但是他們的電子郵件系統是Microsoft Exchange。

我們已經討論過PGP,它不是我們客戶的選擇,他們不會將它安裝在他們的系統上。

感謝您的任何幫助。

彼得

回答

0

如果客戶端的服務器配置,因此「mail」命令的工作,你應該能夠使用的。而且很容易測試:ssh並嘗試一下。

否則,你可能想用smtp over SSL with encryption直接到他們的郵件服務器。

+0

謝謝,只是尋找到郵件命令現在。我還沒有想出怎麼做的唯一事情是發送附件,但我應該沒事做。您的幫助 – Peter 2009-02-23 13:48:35

1

爲了讓我的回答更清晰,我在這裏看到三(3)個系統。

  1. 運行PHP腳本的網絡服務器;後來被稱爲Web服務器
  2. 在客戶端站點上運行的Unix服務器;後來被稱爲UnixServer
  3. 客戶端站點上運行的Exchange服務器;後來refered以作爲的ExchangeServer

你可以做的是使用autossh隧道從網絡服務器通過UnixServer服務器在的ExchangeServer端點的連接。它不是端到端的加密,因爲你不會有從UnixServer到ExchangeServer的加密鏈接,它使你更接近你的目標。

上autossh完整文檔,可以發現here

輸入設置的基本步驟是這樣的:

A. Setup passwordless authentication從Web服務器到UnixServer。你必須小心翼翼地保護RSA密鑰,否則你剛剛在他們的系統上打開了一個大洞。理想情況下,在非特權用戶下運行autossh,並讓UnixServer上使用的帳戶也是非特權用戶。 確保您測試連接您開始使用autossh

B.設置爲存活你的ssh選項(autossh是一種退而求其次的選擇)前。確保~/.ssh/config文件用戶啓動autossh有以下選項設置:

TCPKeepAlive yes 
ClientAliveInterval 60 
ServerAliveInterval 15 
ServerAliveCountMax 3 

C.設置autossh。 Linux.com作爲關於它的here和debianadmin.com作爲一個here

0

我傾向於安全地存儲在服務器上的信息,並通過電子郵件發送給誰,然後可以登錄並看到此請求(以及其他所有近期的?)在網頁中用戶的通知。

你不必惹試圖使電子郵件的安全,並與不在您的專業領域系統工作的周圍,你可以適當地保護您的PHP應用程序,並利用安全功能已經在容易獲得瀏覽器。

+0

我們已經想到了這一點 謝謝,但客戶希望儘量減少破壞電子郵件的收件人,並希望它是沒有從他們的觀點不同。 – Peter 2009-02-23 13:45:00