1. 程式人生 > >伺服器安全管理規範

伺服器安全管理規範

現狀

目前,網上運維工程師伺服器安全意識參差不齊,大部分都存在這三方面的問題:

  • 伺服器安全不是很懂;

  • 伺服器安全重要,但沒按要求做,或安全設定不全面;

  • 伺服器安全重要,安全設定都有做,但實際操作有遺忘,安全意識不強。

  • 比如:在2017/01/31 18:00 UTC國外Gitlab出現故障,丟失了6小時的生產資料!Gitlab 資料庫終於在北京時間 2月2日 0:14 恢復成功(18:14 UTC 02/01)。運維工程師操作時。沒有檢查正在操作的伺服器,以至於誤刪除了正常的資料。

 

伺服器安全那些要做,那些不要做

  • 安全設定要不要做?做安全還是不做安全?還是說只做一些基礎設定。

  • 如果安全相關工作,能讓伺服器和伺服器叢集更安全,那就要去做。

  • 安全的相關工作儘量做,不會做的想辦法做,實在沒法做的,那就延後再說,也許現在沒辦法做,可能以後有辦法,想做總能找到辦法。

  • 安全無小事,要想想不安全的後果,如果出現安全事件,資料洩露,資料庫被拖庫,後果是很嚴重的,這樣的案例網際網路上很多,就不多說了。

  • 專案的口號是:使用伺服器安全運維規範,不掉坑,不背鍋!

事前檢查和監控

提前檢查

  1. 伺服器和網站漏洞檢測,對Web漏洞、弱口令、潛在的惡意行為、違法資訊等進行定期掃描。

  2. 程式碼的定期檢查,安全檢查,漏洞檢查。

  3. 伺服器安全加固,安全基線設定,安全基線檢查。

  4. 資料庫執行的命令,新增欄位、加索引等,必須是經過測試檢查的命令,才能在正式環境執行。

資料備份

  1. 伺服器資料備份,包括網站程式檔案備份,資料庫檔案備份、配置檔案備份,如有資源最好每小時備份和異地備份。

  2. 建立五重備份機制:常規備份、自動同步、LVM快照、Azure備份、S3備份。

  3. 定期檢查備份檔案是否可用,避免出故障後,備份資料不可用。

  4. 重要資料多重加密演算法加密處理。

  5. 程式檔案版本控制,測試,釋出,故障回滾。

對於生產環境的資料庫備份:「高逼格企業級MySQL資料庫備份方案,原來是這樣....」,讀者還可以在民工哥技術之路公眾號對話方塊直接回復「備份」,可以獲取一份完整的源自民工哥實際生產環境的資料庫備份方案。

 

安全監控

  1. nagios監控伺服器常規狀態CPU負載、記憶體、磁碟、流量,超過閾值告警。

  2. zabbix或cacti監控伺服器常規狀態CPU負載、記憶體、磁碟、流量等狀態,可以顯示歷史曲線,方便排查問題。

  3. 監控伺服器SSH登入記錄、iptables狀態、程序狀態,有異常記錄告警。

  4. 監控網站WEB日誌(包括nginx日誌php日誌等),可以採用EKL來收集管理,有異常日誌告警。

  5. 運維人員都要接收告警郵件和簡訊,至少所負責的業務告警郵件和簡訊必須接收,運維經理接收重要業務告警郵件和簡訊。(除非是專職運維開發)

  6. 除伺服器內部監控外,最好使用第三方監控,從外部監控業務是否正常(監控URL、埠等),比如:監控寶。

對於運維監控還可以參考一些之前寫過的一篇文章:

面試裝逼系列|這篇文章,讓運維監控不再成為你的短板!

故障避免預防

  1. 網站WEB增加WAF,避免XSS跨站指令碼、SQL注入、網頁掛馬等漏洞威脅。

  2. 程式程式碼連線資料庫、memcache、redis等,可以使用域名(域名HOSTS指定IP),當出問題,有備用的伺服器,就可以通過修改DNS或者HOSTS,恢復服務。

  3. 建立應急預案機制,定期演練事故場景,估算修復時間。

  4. 部署蜜罐系統,防範企業和伺服器內網APT攻擊。

  5. 建立雙活叢集,包括業務服務的高可用,避免業務服務單點。

  6. 伺服器叢集採用跳板機或堡壘機登入,避免伺服器叢集每臺伺服器可以遠端連線管理。

  7. 操作重要業務升級、遷移、擴容……之前,列一下操作步驟,越詳細越好,實際操作按步驟操作,操作完做好記錄。

事中操作

  1. 網站WEB增加WAF,發現XSS、SQL注入、網頁掛馬等攻擊,會自動攔截,並記錄日誌。

  2. 檢查伺服器資料備份是否可用。

  3. 在處理需求和故障時,執行風險命令(比如rm、restart、reboot等)需再三確認,執行命令前,檢查所在伺服器,所在伺服器路徑,再執行!

  4. 不要疲勞駕駛,喝酒不上機,上機不喝酒,尤其別動資料庫,避免在不清醒的狀態下,在伺服器上執行了錯誤命令,導致資料丟失或業務故障。

  5. 在處理事故時,一定要考慮處理措施是否會引發連鎖故障,重要操作三思而行。

     

事後檢查分析

 

  1. 實現網路安全視覺化管理,可以看到每天有那些異常IP和異常URL請求,伺服器叢集開放埠列表等。

  2. 能對全網進行安全策略集中管理。

  3. 統一日誌收集和分析。

  4. 備份及篡改恢復功能,程式檔案、圖片、資料檔案、配置檔案的備份,故障回滾機制。

  5. 對攻擊日誌進行深度分析,展現攻擊路徑、攻擊源,協助管理員溯源。

  6. 踐行DevOps的無指責文化,尤其是在做事故分析時。事故分析重在定位原因,制定改進措施;

 

伺服器遭受攻擊後,這樣排查處理不背鍋! :https://mp.weixin.qq.com/s/sEFxSo60s6MWz4UYu-Bbcw

一篇超實用的服務異常處理指南 :https://mp.weixin.qq.com/s/dduLDD2T1e6GVwdWWtVxsA

黑客入侵 linux 系統常用手段 : https://mp.weixin.qq.com/s/-gkdtMR-rus6nLLvfkOntA