我想創建一個用於爲ssh驗證創建密鑰的php腳本。 我已經開始與一個PHP/Bash:使用密碼創建PPK,使用OpenSSH密鑰
exec("ssh-keygen -b 1024 -t dsa -N *pwd* -f *path-to-file* -q");
創建私有和公共密鑰對。沒有問題,直到這裏;)
現在我已經將OpenSSL-Key轉換爲PuTTY的ppk格式(在cmd中,而不是在GUI中)。如果任何人有關於如何管理的想法,請告訴我。
謝謝
我想創建一個用於爲ssh驗證創建密鑰的php腳本。 我已經開始與一個PHP/Bash:使用密碼創建PPK,使用OpenSSH密鑰
exec("ssh-keygen -b 1024 -t dsa -N *pwd* -f *path-to-file* -q");
創建私有和公共密鑰對。沒有問題,直到這裏;)
現在我已經將OpenSSL-Key轉換爲PuTTY的ppk格式(在cmd中,而不是在GUI中)。如果任何人有關於如何管理的想法,請告訴我。
謝謝
如果你用RSA密鑰,你可以做這方面的工作(需要phpseclib):
<?php
include('Crypt/RSA.php');
$rsa = new Crypt_RSA();
$rsa->setPassword('password');
$rsa->loadKey('...');
//$rsa->setPassword(); // clear the password if there was one
echo $rsa->getPrivateKey(CRYPT_RSA_PRIVATE_FORMAT_PUTTY);
?>
您還沒有指定,你在哪個操作系統上運行。在* nix中,你可以使用的puttygen(從膩子):
puttygen openssl-key -o mykey.ppk
有關詳細信息,請參閱:https://linux.die.net/man/1/puttygen
在Windows中,的puttygen只是一個GUI應用程序。雖然,你可以使用WinSCP賦予,它有PuTTYgen-compatible command-line interface:
winscp.com /keygen openssl-key -o mykey.ppk
我一個Debian的服務器上運行。 – craCH 2013-04-21 20:40:38
這是一個很好的解決方案,但問題在於此工具中的BUG(請參閱聯機幫助頁) BUGS:目前沒有辦法在批處理模式下提供密碼短語,或者甚至只是指定您根本不需要密碼短語。 – craCH 2013-04-21 20:41:52