在互聯網時代,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 -y或sudo 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 myuser(myuser可自定義,如“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"
- 以後直接用私鑰登錄:
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 # 啓用防火牆
-
開放必要端口:
- 允許SSH(默認22端口):sudo ufw allow ssh
- 允許HTTP(80端口):sudo ufw allow 80/tcp
- 允許HTTPS(443端口):sudo ufw allow 443/tcp -
拒絕所有其他端口:
sudo ufw default deny incoming -
查看防火牆狀態:
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
- 檢查開放端口:
sudo netstat -tuln # 查看TCP/UDP開放端口(舊命令)
sudo ss -tuln # 更高效的替代命令(推薦)
示例:若服務器不需要FTP,應確認ss -tuln中無21端口(FTP默認端口)。
5. 日誌審計與基礎監控:發現異常登錄¶
爲什麼重要:安全事件發生後,日誌是“破案線索”。及時查看日誌能發現暴力破解、未授權登錄等問題。
操作步驟:
1. 開啓關鍵日誌(默認已開啓,確認即可):
- 登錄日誌:/var/log/auth.log(記錄所有登錄嘗試)
- 系統日誌:/var/log/syslog(記錄系統運行狀態)
- 即時監控登錄:
tail -f /var/log/auth.log # 即時查看登錄日誌,Ctrl+C停止
若發現陌生IP頻繁嘗試登錄(如多次失敗),需警惕暴力破解。
- 簡易防暴力破解工具:
Ubuntu/Debian:sudo apt install fail2ban -y(自動封禁多次失敗的IP)
sudo systemctl enable --now fail2ban # 啓動並自啓
sudo fail2ban-client status # 查看封禁狀態
總結¶
以上5步是Linux服務器安全加固的“基礎套餐”,做好後能大幅降低被攻擊的風險。後續可學習更深入的防護手段(如定期備份、入侵檢測、SSL證書加固等),但這5步足以讓新手避免大部分常見安全問題。
重要提醒:操作前請備份服務器數據,儘量在測試環境熟悉命令後再應用到生產環境。安全無小事,堅持定期檢查(如每月更新系統、季度審計日誌)才能讓服務器更“健壯”!