溫馨提示×

ubuntu ssh如何確保安全

小樊
65
2025-04-03 08:37:00
欄目: 智能運維

確保Ubuntu SSH的安全性是非常重要的,因為SSH是遠程訪問服務器的主要方式之一。以下是一些提高Ubuntu SSH安全性的建議:

  1. 更改默認端口: 默認情況下,SSH使用端口22。將SSH服務更改為使用非標準端口可以減少自動化攻擊的風險。

    編輯SSH配置文件:

    sudo nano /etc/ssh/sshd_config
    

    找到#Port 22這一行,取消注釋并更改為你選擇的端口號,例如:

    Port 2222
    

    保存并退出編輯器,然后重啟SSH服務:

    sudo systemctl restart ssh
    
  2. 禁用root登錄: 編輯SSH配置文件:

    sudo nano /etc/ssh/sshd_config
    

    找到PermitRootLogin這一行,將其設置為no

    PermitRootLogin no
    

    這樣可以防止root用戶直接通過SSH登錄,從而增加一層安全保護。

  3. 使用公鑰認證: 使用公鑰認證而不是密碼認證可以大大提高安全性。生成SSH密鑰對并將其添加到服務器的authorized_keys文件中。

    在本地機器上生成SSH密鑰對:

    ssh-keygen -t rsa -b 4096
    

    將公鑰復制到服務器:

    ssh-copy-id user@server_ip -p 2222
    

    確保在sshd_config文件中啟用了公鑰認證:

    PubkeyAuthentication yes
    
  4. 限制SSH訪問: 使用防火墻限制SSH訪問,只允許特定IP地址訪問SSH端口。

    使用ufw(Uncomplicated Firewall)配置防火墻規則:

    sudo ufw allow 2222/tcp
    sudo ufw enable
    
  5. 使用Fail2Ban: Fail2Ban是一個入侵防御軟件框架,可以監控日志文件并禁止惡意IP地址訪問SSH。

    安裝Fail2Ban:

    sudo apt-get install fail2ban
    

    配置Fail2Ban以監控SSH日志并禁止惡意IP地址:

    sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
    sudo nano /etc/fail2ban/jail.local
    

    [ssh]部分進行如下配置:

    [ssh]
    enabled = true
    port = 2222
    filter = sshd
    logpath = /var/log/auth.log
    maxretry = 3
    bantime = 600
    

    重啟Fail2Ban服務:

    sudo systemctl restart fail2ban
    
  6. 定期更新系統和軟件: 定期更新Ubuntu系統和SSH軟件包,以確保所有安全補丁都已應用。

    更新系統:

    sudo apt-get update
    sudo apt-get upgrade
    

通過以上步驟,你可以顯著提高Ubuntu SSH的安全性。記住,安全性是一個持續的過程,需要定期檢查和更新你的安全措施。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女