SFTP With PPK File

王嘉鴻 2018/12/25 05:04:17
3002

SFTP With PPK File


簡介

介紹 SFTP 不使用密碼作為驗證而採用 key pair 登入的作法

作者

王嘉鴻


1. 前言

       工作上遇到一個需求,需要去其他廠商的 FTP 抓取檔案,因資安的考量,不可採取密碼方式登入,而是要使用 key pair 登入 sftp,同時,
   我只拿到一個 ppk 檔案。以下將透過本機模擬的方式,介紹如何實作Key pair 登入SFTP。
 

2. 環境

     Red Hat Linux 7 
     PUTTY
     IDE: sts-3.7.2.RELEASE

3. 實作

      3.1 產生 public key and private key
     需求使用 ppk file 所以我們使用 putty 來幫我們把 key 產生,使用 puttygen.exe
     選擇 RSA 按下 Generate (需要等待一段時間) 因為需求不需要任何密碼所以key passphrase 我們不輸入
     好了之後會看到 public key 已經產生,private key 可以把它儲存下來 
 
     
 
     3.2 Linux ssh 設定
    我們使用 SFTP 當作我們的 SFTP SERVER,需要更改幾項設定
    打開 /etc/ssh/sshd_config 確認設定是否正確
    PubkeyAuthentication yes -- 開啟公開金鑰認證登入方式
    AuthorizedKeysFile .ssh/authorized_keys 公開金鑰檔名位置
    改好之後需要重新啟動服務 service sshd restart
    需要將 public key 放到相對位置,
    因為方便測試我使用 root 檔案位置會在 /root/.ssh/authorized_keys
    如果使用其他帳號位置會在 /home/user/.ssh/authorized_keys
    打開 authorized_keys 將產生好的 public key 放上

4. 測試

       寫個簡單的小測試,使用 JSch 套件來連接 SFTP,測試範例中只要將產生的 ppk 檔案設定進來,
   就可以使用 user 不用密碼就可以做到登入。      
 
   
王嘉鴻