Linux 技巧:10 件不該做的事(以及該怎麼做)

遵循這些實用技巧,避免 Linux 管理中的常見陷阱。學習如何處理權限、排查錯誤,並有效地保護你的系統。


1. 避免執行更改多個屬性的命令

不要執行會更改大量屬性的命令,而應專注於與你正在排查的問題相關的特定檔案或目錄。

範例:

避免使用:

chmod 777 everything

這可能會導致安全問題,並破壞 SSH 或sudo等應用程式。相反,你應該弄清楚為什麼需要執行這些命令,並探索更安全的替代方案。


2. 不要日常使用 Root

與 Windows 中的 Administrator 帳戶不同,Linux 的 root 使用者會繞過安全警告和檢查。使用sudo執行特權命令更安全,並提供用於追蹤的稽核記錄。


3. 理解rm命令的旗標

-r(遞迴)和-f(強制)旗標位於rm命令中,其效果是永久性的。使用它們可以在未經確認的情況下刪除檔案或目錄。

範例:

rm -rf /folder

此命令將永久刪除指定的資料夾及其全部內容,而不會詢問“你確定嗎?”


4. 排查權限被拒絕的問題

排查存取問題時,同時考慮DAC(自主存取控制)和MAC(強制存取控制)。

  • DAC:檔案權限(例如chmod, chown).
  • MAC:SELinux 或 AppArmor 等工具會強制實施額外的安全層。

範例:

檢查 SELinux 記錄:

cat /var/log/audit/audit.log

5. 網路:檢查軟體防火牆

不要以為網路問題只與硬體有關。iptables或 SELinux 等軟體防火牆可能正在阻止連線。

範例:

使用iptables命令檢查規則:

iptables -L -v -n

如果沒有指定任何規則,SELinux 可能已在 IP 層進行了設定。


6. 使用基於 SSH 金鑰的驗證

避免在 SSH 中使用密碼驗證。密碼容易受到暴力破解攻擊,尤其是基於字典的攻擊。

例外:

屬於目錄服務的使用者可能需要使用密碼。


7. 始終確認時區

檢查時間戳記時,不要以為伺服器時間是本地時間或 UTC 時間。使用下面的命令確認時區。

範例:

date
cat /etc/timezone
timedatectl


8. 有效排查核心錯誤

排查核心錯誤時,請將錯誤訊息與核心和軟體版本一起線上搜尋。

範例:

使用必應或谷歌搜尋:

<error message> <kernel version>

9. 處理唯讀檔案系統

即使作為 root 也無法修改檔案時,請檢查檔案系統是否以唯讀方式掛載。

步驟:

  1. 執行:dmesg ,尋找表明檔案系統完整性問題的錯誤。
  2. 使用以下命令檢查檔案屬性:lsattr 帶有+i屬性的檔案是不可變的,即使是 root 也無法修改。

10. 不確定時不要猜測

如果你不確定如何處理,不要猜測!請向 Linux 專家求助或查閱文件。猜測可能會使問題惡化,並使恢復更加困難。


結論

透過避免這些常見陷阱,你可以提高 Linux 管理技能,並確保環境更加安全高效。始終優先理解你使用的命令,並在必要時諮詢專家。

發表留言