Linux
SFTP 要求輸入未加密私鑰的密碼,但 WinSCP 可以正常工作嗎?
概括:
我想將文件從一台伺服器發送到另一台伺服器,並使用私鑰進行授權。
我相信公鑰安裝正確(WinSCP讓我用私鑰登錄),我故意在生成密鑰對時沒有創建密碼……但是當我嘗試在命令行上進行SFTP時,我’ m 提示輸入不存在的密碼和使用者密碼。
如何僅使用未包裝的私鑰進行 SFTP?
細節:
我有兩台伺服器:
- toServer123
- 來自Server123
我想使用私鑰登錄將文件從一台伺服器發送到另一台伺服器。
- 我使用 puttyGen 生成了一個公私鑰對:
- 提供提示的隨機移動後,我保存了公鑰和私鑰
- 當提示有關未加密的私鑰時,我將密碼欄位留空並選擇“是”
- 我在 toServer123 上安裝公鑰:
- 我使用密碼“password123”創建了一個使用者 paultest
- 我測試我可以作為使用者 paultest ssh 進入 toServer123
- 我創建 /home/paultest/.ssh/authorized_keys 並添加公鑰
- 公鑰如下所示:
cat /home/paultest/.ssh/authorized_keys
#=>ssh-rsa verylongstringoflettersandnumbersNoNewlines paultest@toServer123
- 我 chmod 權限:authorized_keys (644)、.ssh (700)
- 我在 fromServer123 上安裝了私鑰:
- 我創建目錄:/home/support_user/sftp_proc (chmod 700)
- 我將 my_private_key.ppk (chmod 600) 上傳到 /sftp_proc
- 我在 /sftp_proc 中創建文件 text.txt,其中只包含“這是一個測試”
- 作為 support_user,我嘗試從 fromServer123 SFTP 到 toServer123:
sftp -oIdentityFile=./my_private_key.ppk paultest@toServer123
我的期望:
我在沒有進一步提示的情況下登錄到伺服器,因為我正在使用未包裝的密鑰文件登錄。
我得到什麼:
Connecting to toServer123... Unauthorized access to or use of this system is prohibited. All access and use may be monitored and recorded. Enter passphrase for key './my_private_key.ppk':
我只是按Enter鍵,然後得到:
paultest@toServer123's password:
調試步驟:
- 如果我提供 paultest 密碼,SFTP 可以工作 - 但我不想使用密碼,我想使用私鑰登錄
- 如果我嘗試使用 winSCP 登錄並提供私鑰,我就可以使用它登錄 - 我沒有收到密碼或密碼提示。
問題:
如果我的目標是在不提供密碼的情況下登錄,並且沒有提示輸入不存在的密碼,我做錯了什麼?
編輯
my_private_key.ppk 看起來像:
PuTTY-User-Key-File-2: ssh-rsa Encryption: none Comment: rsa-key-20190528 Public-Lines: 6 LOTSOFLETTERSabcSYMBOLS//++ANDNUMBERS123== Private-Lines: 14 EVENEVENMORELOTSOFLETTERSabcSYMBOLS//++ANDNUMBERS123== Private-MAC: cf6c5c786f51a623b28eabe226c98dd6faa09787
AFAIK
sftp
期望不同格式的密鑰。OpenSSH 的密鑰應如下所示:-----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAyGhJBM7lcIZgvTbLG4S2N1oHAIszqAKKysCQY17Fp0dHvL+A 8mVCYwKL0otQfS2FHmmeRfrpLQtaK7R/DFnxfXn8xczpY8Cn6sv+GUjztN0gacOK Yyiymnfr4mKgSaRIaJDmi3ua8mlddvwtUJFkAt7WrVAgx0z4MkW5jR+riKnT69D+ <snip> YFbX0QKBgFTXQ+h79DR4ZwW/f5pop9v8H7GD+g/xRKadgFp4GTKA7RJx64XN/ok+ 12+u6pApA8w+ah2K2yoaBIV1d3MatYfUwSJ+0esXTYczBeSXOg6YqrMqjZ4KH2wO kOyu2/4Dq7VcuK4PSnF1wbd+ZPHffh+YOJIII4iU7fYoRMDHa3tW -----END RSA PRIVATE KEY-----
因此,您應該將您的 ppk 密鑰轉換為 RSA 密鑰。這是如何使用膩子工具來做到這一點