2011-06-28 153 views
1

我一直在學習設置服務器以用於我的網絡應用 - 並且發現我最喜歡的(最快和最容易上手)設置是CentOS5.5/Lighttpd/fastcgi和SQL。然而,我不知道這些東西有多安全 - 我使用Yum安裝了它們,並修改了一些設置以鼓勵PHP玩球 - 有什麼我應該做的,以提高我的安全級別,防止篡改我的腳本?CentOS服務器安全

服務器沒有FTP,根目錄,郵件或其他任何安裝的任何其他用戶,並且所有目錄由lighttpd:lighttpd擁有,而不是用於任何世界使用的CHMOD。更大的世界將永遠不會使用我正在寫的應用程序,它們是爲個人和我的員工/合作伙伴追蹤金錢和客戶(因此我希望他們是安全的)。

謝謝你們!

+0

技術上來說,可以在http://security.stackexchange.com/上提出這個問題。 – sdolgy

+0

雖然我會推薦serverfault,但似乎最適合 – Ben

+0

只有很多東西明智地回答這裏或在stackoverflow/security.stackexchange – symcbean

回答

2

如果你正在談論服務器(複數)並且你有預算/能力,我鼓勵你只有面向客戶端的服務器只提供靜態內容。僅將PHP和SQL移回內部。

  1. Web服務器與四百四十三分之八十零向世界開放和SSH端口只有受信任的IP或僅內部接口上偵聽開放,您可以訪問
  2. 應用服務器的80端口,只監聽從前面的請求通過專用IP地址(如果可能的話)結束Web服務器。否則,請限制它訪問前端Web服務器的公共IP,並考慮在兩者之間進行HTTPS(443)通信。
  3. 您的SQL實例/服務器應具有相同的概念,只能從應用程序服務器訪問。

這可以讓你擁有多重安全保障,並致力於資源來處理特定的任務(FE webserving /中間件應用服務/後端數據服務)

另外,如果您的FE受到威脅,他們不會有立即訪問您的PHP源代碼和數據庫內容。

如果它是單個服務器,確保只有80/443向全世界開放,並確保已有防火牆或防火牆概念,以限制/拒絕除可信來源之外的所有其他端口的訪問。考慮將SSH從端口22(默認)移動到備用端口...

+0

非常好的觀點,我只是添加,確保你使用的密碼,你永遠不會記得,把他們在一個安全的機器上的密碼庫。這些密碼應該大約48個字符(或使用證書)。這總是讓事情變得更加安全。 – Ben

+0

密碼?現在來吧。 SSH密鑰!以一本書的隨機章節爲關鍵詞... – sdolgy

+0

哈哈,一個非常好的主意,我特別想到了sql server,但我總是使用4096個密鑰作爲ssh。 – Ben