溫馨提示×

Debian SFTP如何使用密鑰認證

小樊
61
2025-04-05 02:14:14
欄目: 智能運維

在Debian系統中使用SFTP進行密鑰認證,可以按照以下步驟操作:

1. 生成SSH密鑰對

首先,你需要在客戶端生成一對SSH密鑰(公鑰和私鑰)。如果你已經有一對密鑰,可以跳過這一步。

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

執行上述命令后,系統會提示你輸入文件保存位置和密碼短語。通常情況下,你可以直接按回車鍵使用默認位置和空密碼短語。

2. 將公鑰復制到服務器

接下來,你需要將生成的公鑰復制到SFTP服務器的~/.ssh/authorized_keys文件中。

方法一:使用ssh-copy-id命令

如果你有權限訪問服務器,可以使用ssh-copy-id命令:

ssh-copy-id user@server_ip

系統會提示你輸入服務器用戶的密碼,輸入正確后,公鑰會被復制到服務器。

方法二:手動復制

如果你沒有權限使用ssh-copy-id,可以手動復制公鑰:

  1. 在客戶端生成公鑰(如果還沒有):

    ssh-keygen -t rsa -b 4096 -f ~/.ssh/id_rsa.pub
    
  2. 將公鑰內容復制到剪貼板:

    cat ~/.ssh/id_rsa.pub
    
  3. 登錄到服務器:

    ssh user@server_ip
    
  4. 在服務器上創建.ssh目錄(如果不存在)并設置正確的權限:

    mkdir -p ~/.ssh
    chmod 700 ~/.ssh
    
  5. 將公鑰內容粘貼到~/.ssh/authorized_keys文件中,并保存:

    echo "your_public_key_content" >> ~/.ssh/authorized_keys
    
  6. 設置authorized_keys文件的權限:

    chmod 600 ~/.ssh/authorized_keys
    

3. 配置SSH服務器

確保SSH服務器允許密鑰認證。編輯服務器上的/etc/ssh/sshd_config文件:

sudo nano /etc/ssh/sshd_config

找到并確保以下配置項被啟用或設置為如下值:

PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys

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

sudo systemctl restart sshd

4. 使用SFTP進行連接

現在,你可以使用SFTP進行連接了。在客戶端終端中輸入以下命令:

sftp -i ~/.ssh/id_rsa user@server_ip

如果一切配置正確,你應該能夠無需輸入密碼直接登錄到SFTP服務器。

注意事項

  • 確保私鑰文件的權限設置正確(通常是600)。
  • 如果使用密碼短語保護私鑰,連接時需要輸入密碼短語。
  • 確保服務器上的防火墻允許SSH連接(默認端口22)。

通過以上步驟,你應該能夠在Debian系統中成功配置和使用SFTP密鑰認證。

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