Linux伺服器安全配置:提高系統防禦能力
隨著網路的快速發展,伺服器安全性問題日益突出。為了保護伺服器的穩定性和資料的安全性,伺服器管理員應加強對Linux伺服器的安全配置。本文將介紹一些常見的Linux伺服器安全配置方法,並提供相關的程式碼範例,以協助管理員提升系統的防禦能力。
- 更新系統和軟體包
保持伺服器的作業系統和軟體包處於最新的狀態是保障伺服器安全的重要步驟之一。及時更新系統和軟體包,可以修復已發現的漏洞,並提供更強大的安全功能。以下是在CentOS系統中使用yum更新系統和軟體包的範例程式碼:
- 禁用不必要的服務
Linux伺服器預設啟動了許多不必要的服務,這些服務可能會成為攻擊者入侵系統的潛在入口。應該仔細審查伺服器開啟的所有服務,並根據實際需求停用不必要的服務。以下是在CentOS系統中停用某個服務的範例程式碼:
1 2 | sudo systemctl stop <service-name>
sudo systemctl disable <service-name>
|
登入後複製
- 設定防火牆
防火牆是保護伺服器免受網路攻擊的關鍵元件之一。透過配置防火牆規則,可以限制伺服器允許存取的IP位址、連接埠和協定。以下是CentOS系統中使用防火牆設定服務firewalld的範例程式碼:
1 2 3 4 5 6 7 8 9 10 | sudo systemctl start firewalld
sudo firewall-cmd --zone=public --add-port=22 /tcp --permanent
sudo firewall-cmd --reload
sudo firewall-cmd --zone=public --add-port=80 /tcp --permanent
sudo firewall-cmd --reload
|
登入後複製
- 設定SSH存取
SSH是管理員遠端登入伺服器的常用方式。為了增加SSH存取的安全性,可以進行以下配置:
- 修改SSH預設連接埠:將預設的22連接埠改為一個非常用端口,可以減少暴力破解的風險。
- 停用root使用者登入:禁止root使用者直接使用SSH登入伺服器,可以增加攻擊者的入侵難度。
- 設定公鑰登入:使用金鑰對登入伺服器,而不是密碼登錄,可以提供更高的安全性。
以下是在修改SSH設定檔的範例程式碼:
1 2 3 4 5 6 7 8 9 10 11 | sudo vi /etc/ssh/sshd_config
Port 2222
PermitRootLogin no
RSAAuthentication yes
PubkeyAuthentication yes
|
登入後複製
修改完成後,使用下列指令重新啟動SSH服務:
1 | sudo systemctl restart sshd
|
登入後複製
- 新增防暴力破解的限制
為了防止暴力破解SSH密碼,可以增加限制機制,限制SSH失敗登入的次數和時間間隔。以下是使用fail2ban工具限制SSH暴力破解的範例程式碼:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | sudo yum install epel-release
sudo yum install fail2ban
sudo cp /etc/fail2ban/jail .conf /etc/fail2ban/jail . local
sudo vi /etc/fail2ban/jail . local
[sshd]
enabled = true
port = ssh
logpath = %(sshd_log)s
backend = %(sshd_backend)s
maxretry = 3
bantime = 3600
sudo systemctl start fail2ban
sudo systemctl enable fail2ban
|
登入後複製
以上是一些常見的Linux伺服器安全配置方法和範例程式碼。當然,對於伺服器安全來說,還有許多其他方面需要注意,例如配置合適的檔案權限、使用強密碼等。管理員進行伺服器安全配置時,需要綜合考慮伺服器的實際環境和需求,合理制定安全性策略,以提高系統的防禦能力。
以上是Linux伺服器安全配置:提高系統防禦能力的詳細內容。更多資訊請關注PHP中文網其他相關文章!