在互聯網時代,Linux服務器作爲核心基礎設施,安全問題至關重要。許多新手搭建服務器後容易忽視安全配置,導致被入侵、數據泄露等風險。本文針對初學者,總結5個簡單易操作的安全加固步驟,幫你快速提升服務器安全性。

1. 系統更新與補丁管理:修復已知漏洞

爲什麼重要:新系統或軟件包默認會有安全漏洞,及時更新能堵住這些“後門”。
操作步驟(以常見系統爲例):
- Ubuntu/Debian
1. 更新軟件源:sudo apt update(獲取最新軟件包信息)
2. 安裝所有可用更新:sudo apt upgrade -y-y自動確認安裝)
3. 清理舊版本緩存:sudo apt autoremove -y

  • CentOS/RHEL
    1. 更新系統包:sudo yum update -ysudo dnf update -y

提示:更新前建議備份重要數據,避免意外斷電或網絡問題導致系統損壞。

2. 強化用戶權限與認證:拒絕“裸奔”登錄

爲什麼重要:直接用root用戶登錄服務器風險極高,弱密碼或暴力破解可能直接接管服務器。
操作步驟
- 禁用root直接登錄(推薦):
1. 編輯SSH配置文件:sudo nano /etc/ssh/sshd_config
2. 找到 PermitRootLogin yes,改爲 PermitRootLogin no
3. 重啓SSH服務:sudo systemctl restart sshd

  • 創建普通用戶並賦予sudo權限
    1. 新建用戶:sudo adduser myusermyuser可自定義,如“server”)
    2. 設置密碼:sudo passwd myuser(按提示輸入密碼)
    3. 賦予sudo權限:sudo usermod -aG sudo myuser

  • 推薦:用SSH密鑰登錄(比密碼更安全):
    1. 本地生成密鑰對(Windows需先安裝Git Bash或PuTTY):ssh-keygen -t ed25519(一路回車)
    2. 將公鑰上傳到服務器:scp ~/.ssh/id_ed25519.pub myuser@服務器IP:/tmp/id_ed25519.pub
    3. 重命名並移動公鑰到目標目錄:

     ssh myuser@服務器IP "mkdir -p ~/.ssh && cat /tmp/id_ed25519.pub >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"
  1. 以後直接用私鑰登錄:ssh -i ~/.ssh/id_ed25519 myuser@服務器IP

3. 配置防火牆:只開“必要的門”

爲什麼重要:防火牆能阻擋外部端口掃描和惡意連接,只開放業務必需的端口(如SSH、HTTP/HTTPS)。
操作步驟(以Ubuntu爲例,更簡單):
1. 安裝並啓用ufw(Ubuntu默認帶,CentOS用firewalld):

   sudo apt install ufw -y  # 僅Ubuntu需安裝
   sudo ufw enable          # 啓用防火牆
  1. 開放必要端口:
    - 允許SSH(默認22端口):sudo ufw allow ssh
    - 允許HTTP(80端口):sudo ufw allow 80/tcp
    - 允許HTTPS(443端口):sudo ufw allow 443/tcp

  2. 拒絕所有其他端口:sudo ufw default deny incoming

  3. 查看防火牆狀態:sudo ufw status

CentOS用戶

sudo systemctl start firewalld  # 啓動服務
sudo systemctl enable firewalld # 開機自啓
sudo firewall-cmd --permanent --add-service=ssh  # 開放SSH
sudo firewall-cmd --permanent --add-port=80/tcp   # 開放HTTP
sudo firewall-cmd --reload  # 生效配置

4. 關閉不必要的服務與端口:減少攻擊面

爲什麼重要:服務器默認開啓的服務(如FTP、Telnet)可能存在高危漏洞,無需時應直接關閉。
操作步驟
1. 檢查並關閉不必要的服務:
- 查看當前運行的服務:sudo systemctl list-units --type=service
- 關閉FTP(不安全協議):sudo systemctl disable --now vsftpd
- 關閉Telnet(明文傳輸):sudo systemctl disable --now telnet

  1. 檢查開放端口:
   sudo netstat -tuln  # 查看TCP/UDP開放端口(舊命令)
   sudo ss -tuln       # 更高效的替代命令(推薦)

示例:若服務器不需要FTP,應確認ss -tuln中無21端口(FTP默認端口)。

5. 日誌審計與基礎監控:發現異常登錄

爲什麼重要:安全事件發生後,日誌是“破案線索”。及時查看日誌能發現暴力破解、未授權登錄等問題。
操作步驟
1. 開啓關鍵日誌(默認已開啓,確認即可):
- 登錄日誌:/var/log/auth.log(記錄所有登錄嘗試)
- 系統日誌:/var/log/syslog(記錄系統運行狀態)

  1. 即時監控登錄
   tail -f /var/log/auth.log  # 即時查看登錄日誌,Ctrl+C停止

若發現陌生IP頻繁嘗試登錄(如多次失敗),需警惕暴力破解。

  1. 簡易防暴力破解工具
    Ubuntu/Debian:sudo apt install fail2ban -y(自動封禁多次失敗的IP)
   sudo systemctl enable --now fail2ban  # 啓動並自啓
   sudo fail2ban-client status            # 查看封禁狀態

總結

以上5步是Linux服務器安全加固的“基礎套餐”,做好後能大幅降低被攻擊的風險。後續可學習更深入的防護手段(如定期備份、入侵檢測、SSL證書加固等),但這5步足以讓新手避免大部分常見安全問題。

重要提醒:操作前請備份服務器數據,儘量在測試環境熟悉命令後再應用到生產環境。安全無小事,堅持定期檢查(如每月更新系統、季度審計日誌)才能讓服務器更“健壯”!

小夜