2.17 新手必看的Linux伺服器管理和維護註意事項

来源:https://www.cnblogs.com/qinlulu/archive/2022/05/05/16226615.html
-Advertisement-
Play Games

本節介紹有關伺服器管理和維護過程中的一些註意事項,都是筆者的經驗之談,相信對新手會有一定的啟發和幫助。 很多初學者接觸Linux 時間不長,還未完整地學習一遍 Linux,理解本節內容可能有些困難,可以先跳過本節,閱讀完整套教程後再回過頭來閱讀。 遠程伺服器關機及重啟時的註意事項 為什麼遠程伺服器不 ...


本節介紹有關伺服器管理和維護過程中的一些註意事項,都是筆者的經驗之談,相信對新手會有一定的啟發和幫助。 很多初學者接觸Linux 時間不長,還未完整地學習一遍 Linux,理解本節內容可能有些困難,可以先跳過本節,閱讀完整套教程後再回過頭來閱讀。

遠程伺服器關機及重啟時的註意事項

為什麼遠程伺服器不能關機?原因很簡單,遠程伺服器沒有放置在本地,關機後誰幫你按開機電源鍵啟動伺服器?雖然電腦技術曰新月異,但是像插入電源和開機這樣的工作還是需要手工進行的。如果伺服器在遠程,一旦關機,就只能求助托管機房的管理人員幫你開機了。

遠程伺服器重啟時需要註意兩點。

1) 遠程伺服器在重啟前,要中止正在執行的服務

電腦的硬碟最怕在高速存儲時斷電或重啟,非常容易造成硬碟損壞。所以,在重啟前先中止你的服務,甚至可以考慮暫時斷開對外提供服務的網路。

可能你會覺得伺服器有這麼嬌貴嗎?我的筆記本電腦經常強行關機,也沒有發現硬碟損壞啊?這是因為你的個人電腦沒有很多人訪問,強制斷電時硬碟並沒有進行數據交換。小心駛得萬年船!

2) 重啟命令的選用

Linux 可以識別的重啟命令有很多條,但是建議大家使用 "shutdown-r now" 命令重啟。這條命令在重啟時會正常保存和中止伺服器中正在運行的程式,是安全命令。

最好在重啟前執行幾次 "sync" 命令,這條命令是數據同步命令,可以讓暫時保存在記憶體中的數據同步到硬碟上。

重啟和關機也是伺服器需要註意的操作規範,不正確的重啟和關機造成伺服器故障的不在少數。

不要在伺服器訪問高峰運行高負載命令

在伺服器訪問高峰,如果使用一些對伺服器壓力較大的命令,有可能會造成伺服器響應緩慢甚至死機。

哪些命令是高負載命令呢?如果大家使用過 Windows 操作系統,則也會留意一些操作會給電腦帶來較大的運算壓力,道理都是一樣的,如複製大量的數據、壓縮或者解壓縮大文件、大範圍的硬碟搜索等。

伺服器的訪問高峰期一般認為是在 17:00-24:00。當然,每台伺服器具體提供的服務不同,訪問高峰期有時也會有所出入。比如,伺服器主要是供美國人民訪問的,那就要考慮時差的問題;或者伺服器提供的服務很特殊,訪問高峰期可能也不同。

高負載命令一般建議在凌晨的 4:00-5:00 執行。那麼,是不是說我們需要在凌晨上班?當然不是,這誰受得了啊?我們可以使用系統的計劃任務,讓操作自動在指定的時間段執行。

遠程配置防火牆時不要把自己踢出伺服器

防火牆是指將內網和外網分開,並依照數據包的 IP 地址、埠號和數據包中的數據來判斷是否允許數據包通過的網路設備。

防火牆可以是硬體防火牆設備,也可以是伺服器上安裝的防火牆軟體。

簡單來講,防火牆就是根據數據包自身的參數來判斷是否允許數據包通過的網路設備。我們的伺服器要想在公網中安全地使用,就需要使用防火牆過濾有害的數據包。

但在配置防火牆時,如果管理員對防火牆不是很熟悉,就有可能把自己的正常訪問數據包和有害數據包全部過濾掉,導致自己也無法正常登錄伺服器。比如說,防火牆關閉了遠程連接的 SSH 服務的埠。

防火牆配置完全是靠手工命令完成的,配置規則和配置命令相對也比較複雜,萬一設置的時候心不在焉,悲劇就發生了。如何避免這種趟尬的情況發生呢?

最好的方法當然是在伺服器本地配置防火牆,這樣就算不小視自己的遠程登錄給過濾了,還可以通過本機登錄來進行恢復。如果伺服器已經在遠程登錄了,要配置防火牆,那麼最好在本地測試完善後再進行上傳,這樣會把發生故障的概率降到最低。

雖然在本地測試好了,但是傳到遠程伺服器上時仍有可能發生問題。於是筆者想到一個笨辦法,如果需要遠程配置防火牆,那麼先寫一個系統定時任務,讓它每 5 分鐘清空一下防火牆規則,就算寫錯了也還有反悔的機會,等測試沒有問題了再刪除這個系統定時任務。

總之,大家可以使用各種方法,只要留意不要在配置防火牆時把自己踢出伺服器就好了。

指定合理的密碼規範並定期更新

除了前面給大家介紹設置密碼需要遵守複雜性、易記憶和時效性的三原則外,還需要註意密碼的保存。

日常使用的密碼,我們最簡單的原則是寫下來。伺服器可能有很多,不可能所有的伺服器都使用同樣的密碼,最好每台伺服器的密碼都不盡相同(但是在實際的工作中也不現實)。一般的做法是給伺服器分類,每類伺服器的密碼一致,這樣可以有效地減少密碼的數量。但是在有大量伺服器的情況下,密碼的數量還是很可怕的。

比如,當年筆者從事游戲運維的時候,有超過 2000 台伺服器,再加上交換機和路由器等網路設備,雖然採用了每類伺服器相同密碼的方法,但是密碼的總數量還是超過了 100 個……這時把密碼一次性記憶下來基本上是一項不可能完成的任務。那麼,該如何保存這些密碼呢?只能通過文檔來保存了,當然這些文檔不能是明文保存的,而是要加密的。

總之,合理的密碼還要有合適的保存方式,這些在構建伺服器架構的時候都是必須考慮的內容。

合理分配許可權

管理伺服器要遵守一個最基本的原則,“給予用戶最小的許可權”。

初次接觸伺服器的人會很迷惑,我們所有同事都使用管理員 root 賬戶登錄多好,省得還要學習如何添加用戶、設置許可權。這樣操作,如果是對個人電腦來講問題不大,如日常使用的 Windows 桌面系統,但如果是伺服器,就會出現重大的安全隱患。

在實際的工作中,因為給內部員工分配的許可權不合理而導致數據泄密甚至觸犯法律的情況屢見不鮮。所以,在伺服器上,合理的許可權規劃必不可少!而且就算只有你是這台伺服器的 root,我們也建議在管理伺服器時,能使用普通用戶完成的操作都使用普通用戶,確實完成不了的操作要麼進行授權,要麼再切換到 root 執行。因為 Linux 上的 root 用戶許可權實在過大,一旦誤操作,後果是嚴重的,下場是慘淡的。

在實際的工作中,越是重要的伺服器,對許可權的管理越嚴格。原則上,在能夠完成工作的前提下,分配的許可權越小越安全。當然,許可權越小,你需要做的規劃和許可權分配任務就越多,但是伺服器也越可靠。

定期備份重要數據和日誌

沒有備份的伺服器,就是在作死!

我身邊有很多人,手機壞了或丟了,通訊錄就沒了;自己電腦的硬碟壞了,上面的資料就再也找不到了,一點備份的意識也沒有。個人的損失往往可以承受,但是公司伺服器的損失可能會非常驚人。

有的人知道備份重要,但是因為懶情或忘記,結果後悔莫及。很多事情都是知易行難的,備份來不得半點僥幸心理。如果公司的主要盈利項目是在互聯網上的業務,那麼數據的丟失就有可能造成公司的直接利益損失。

十年磨一劍
您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 今天分享幾段工作生活中常用的代碼,都是最為基礎的功能和操作,而且大多還都是出現頻率比較高的,很多都是可以拿來直接 使用或者簡單修改就可以放到自己的項目當中 日期生成 很多時候我們需要批量生成日期,方法有很多,這裡分享兩段代碼 Python學習交流Q群:906715085### 獲取過去 N 天的日期 ...
  • 本章主要介紹pytest幾種數據驅動的方法,也是我們做介面自動化中經常要使用到的,大致分為以下四種。 一.yaml 二.json 三.csv 四.excel 一.yaml 1.安裝插件:pip install pyyaml 2.yaml的兩種讀寫方法load()和dump(),話不多說,直接上代碼 ...
  • 一、什麼是Maven? Apache Maven是一個軟體項目管理的綜合工具。基於項目對象模型(POM)的概念,提供了幫助管理構建、文檔、報告、依賴、發佈等方法,Maven簡化和標準化項目建設過程。處理編譯,分配,文檔,團隊協作和其他任務的無縫連接。 Maven增加可重用性並負責建立相關的任務。 1 ...
  • 本文闡述了socket編程、IO網路模型,以及各種IO模型的適用場景。 RPC架構設計 文章更新曆史 2022/03/01 初稿。 2022/05/04 修改相關描述。 socket socket網路編程 socket概述 socket套接字是兩台主機之間邏輯連接的端點。 TCP/IP協議是傳輸層協 ...
  • C++實例1--通訊錄管理系統 1 #include<iostream> 2 #include<string> 3 4 using namespace std; 5 6 #define MAX 1000 // 最大人數 7 8 // 通訊錄管理系統 9 10 // 主菜單 11 void showM ...
  • 大家好,我是DD,今天繼續來學點Java的新特性! 假設有這樣一個場景,我們需要做一個工具。用來自動生成項目文檔,文檔可以通過瀏覽器查看,所以最後產出物肯定是一堆html文件。為了讓這些html文件更容易讀,良好的格式肯定要保持,該換行的換行、該縮進的縮進。 那麼,在組織最後內容的時候,你可能就會這 ...
  • 為組件設置邊框 很多情況下,我們常常喜歡給不同的組件設置邊框,從而讓界面的層次感更明顯,swing中提供了Border對象來代表一個邊框,下圖是Border的繼承體系圖: ​ 特殊的Border: TitledBorder:它的作用並不是直接為其他組件添加邊框,而是為其他邊框設置標題,創建該類的對象 ...
  • iNeuOS本次更新主要完善數據點、設備和計算平臺的計算預警,三個地方的計算預警作用的數據範圍不一樣,數據點只對單獨數據點、設備是對當前設備範圍的數據點、計算平臺是對當前平臺的所有數據點。 ...
一周排行
    -Advertisement-
    Play Games
  • 基於.NET Framework 4.8 開發的深度學習模型部署測試平臺,提供了YOLO框架的主流系列模型,包括YOLOv8~v9,以及其系列下的Det、Seg、Pose、Obb、Cls等應用場景,同時支持圖像與視頻檢測。模型部署引擎使用的是OpenVINO™、TensorRT、ONNX runti... ...
  • 十年沉澱,重啟開發之路 十年前,我沉浸在開發的海洋中,每日與代碼為伍,與演算法共舞。那時的我,滿懷激情,對技術的追求近乎狂熱。然而,隨著歲月的流逝,生活的忙碌逐漸占據了我的大部分時間,讓我無暇顧及技術的沉澱與積累。 十年間,我經歷了職業生涯的起伏和變遷。從初出茅廬的菜鳥到逐漸嶄露頭角的開發者,我見證了 ...
  • C# 是一種簡單、現代、面向對象和類型安全的編程語言。.NET 是由 Microsoft 創建的開發平臺,平臺包含了語言規範、工具、運行,支持開發各種應用,如Web、移動、桌面等。.NET框架有多個實現,如.NET Framework、.NET Core(及後續的.NET 5+版本),以及社區版本M... ...
  • 前言 本文介紹瞭如何使用三菱提供的MX Component插件實現對三菱PLC軟元件數據的讀寫,記錄了使用電腦模擬,模擬PLC,直至完成測試的詳細流程,並重點介紹了在這個過程中的易錯點,供參考。 用到的軟體: 1. PLC開發編程環境GX Works2,GX Works2下載鏈接 https:// ...
  • 前言 整理這個官方翻譯的系列,原因是網上大部分的 tomcat 版本比較舊,此版本為 v11 最新的版本。 開源項目 從零手寫實現 tomcat minicat 別稱【嗅虎】心有猛虎,輕嗅薔薇。 系列文章 web server apache tomcat11-01-官方文檔入門介紹 web serv ...
  • 1、jQuery介紹 jQuery是什麼 jQuery是一個快速、簡潔的JavaScript框架,是繼Prototype之後又一個優秀的JavaScript代碼庫(或JavaScript框架)。jQuery設計的宗旨是“write Less,Do More”,即倡導寫更少的代碼,做更多的事情。它封裝 ...
  • 前言 之前的文章把js引擎(aardio封裝庫) 微軟開源的js引擎(ChakraCore))寫好了,這篇文章整點js代碼來測一下bug。測試網站:https://fanyi.youdao.com/index.html#/ 逆向思路 逆向思路可以看有道翻譯js逆向(MD5加密,AES加密)附完整源碼 ...
  • 引言 現代的操作系統(Windows,Linux,Mac OS)等都可以同時打開多個軟體(任務),這些軟體在我們的感知上是同時運行的,例如我們可以一邊瀏覽網頁,一邊聽音樂。而CPU執行代碼同一時間只能執行一條,但即使我們的電腦是單核CPU也可以同時運行多個任務,如下圖所示,這是因為我們的 CPU 的 ...
  • 掌握使用Python進行文本英文統計的基本方法,並瞭解如何進一步優化和擴展這些方法,以應對更複雜的文本分析任務。 ...
  • 背景 Redis多數據源常見的場景: 分區數據處理:當數據量增長時,單個Redis實例可能無法處理所有的數據。通過使用多個Redis數據源,可以將數據分區存儲在不同的實例中,使得數據處理更加高效。 多租戶應用程式:對於多租戶應用程式,每個租戶可以擁有自己的Redis數據源,以確保數據隔離和安全性。 ...