服務器安全問題總體來說,從以下兩個方面來敘述。
一、服務器管理層面的兩類預防操作,保證網絡信息安全,服務器開發過程中,規範Web開發的安全標準。
1、防止sql注入:採用預處理進行sql操作,絕對不能使用sql語句的拼接。預編譯語句,綁定變量;使用存儲過程,調用存在數據庫裏的函數;檢查數據類型,如果輸入是數字,就用integer做檢驗,如果是郵箱則正則表達式去做校驗等;使用定義好的安全函數來轉義;設置數據庫用戶的最小權限。
2、用戶密碼驗證:保障網絡信息安全,密碼驗證是必須的,儲存密碼不能使明文,最好多重加密驗證。普通應用要求長度爲6位以上,重要應用要求長度爲8位以上,並考慮雙因素認證,密碼區分大小寫字母,密碼爲大寫字母,小寫字幕、數字、特殊符號中兩種以上的組合。
3、文件上傳限制:文件上傳一定要類型限制,上傳後把文件名格式化。(上傳文件是病毒,文件,用以誘惑用戶或者管理員下載執行,上傳文件是釣魚圖片或爲包含腳本的圖片,在某些版本瀏覽器中會被作爲腳本執行,被用於釣魚和欺詐)
4、過濾可執行腳本:對用戶提交的網絡信息數據進行轉義,防止用戶提交含有js腳本的信息輸出到頁面上直接被瀏覽器執行。Seesion在登陸完成後,重寫SessionId,避免SessionFixation,服務器設置固定時間強制銷燬Session,因爲客戶端可以修改用戶的存活時間,定時拿seesionId去請求,降低SSO的風險。
5、日誌系統:網絡信息會在服務器中產生訪問日誌,記錄ip,參數等, 對後臺操作記錄日誌,方便查×××器被篡改或導致的安全問題。
6、WEB容器配置:web容器存在一些配置漏洞。如tomcat後臺管理,默認用戶及密碼登錄後直接獲取war文件。
7、數據庫設置:提高服務器網絡信息安全,可以針對前後臺操作建立不同的數據庫操作用戶,切不可用root級別鏈接數據庫。
8、優化服務器性能的方式:將使用頻率高的數據放到服務器中,將數據庫的壓力轉移到內存中,此外及時釋放資源。在針對每個客戶端做一個請求頻率的限制,在網絡架構上做好優化,善於利用負載均衡,避免用戶流量集中在單臺服務器上,同時可以充分利用好CDN和鏡像站點的分流作用,緩解主站的壓力。
二、服務器層面的監控,運維過程中,對Web服務器進行持續的網絡信息安全監控
控制服務器的訪問端口:
1.設置“僚機服務器”,故意開後門讓者來僚機服務器, 管理着我就能獲取者的手段,並在真正服務器上做相應的安全措施應對。
2.設置“誘餌服務器”,讓者真假難以區分,這個上面敘述十分相似。
3.垂直權限管理:現在應用廣泛的一種方法是基於角色的範圍控制:RBAC,Java中的Spring Security 權限管理,就是RBAC模型的一個實現
4.水平權限管理,RBAC只能驗證用戶A屬於角色RoleX,但不會判斷用戶A是否能訪問只屬於用戶B的數據B,發生了越權訪問,這種問題一般是具體問題具體解決,至今仍是一個難題,它難以發現,設計方案時,都應該滿足“最小權限原則”。
網絡信息安全問題大家平時遇到的不多,只有遇到服務器染上病毒或被時才意識到嚴重性,那是補救可能會費事很多,或者無法補救,只能認倒黴了。如果在網站運行前或者在服務器遭受後選擇防禦計劃,是完全可以保證服務器安全的。
關於服務器問題大家都可以諮詢我。Q428202849