2
我的任务是连接到基于Windows的SFTP服务器,该服务器需要密钥和密码才能连接到它。使用libssh2连接到需要密钥和密码的SFTP服务器
我已经计算出如何使用密码或密钥进行连接,但是我无法弄清楚如何使用密码或密钥进行连接。
通过主要连接:
//connect to server
$connection = ssh2_connect($SSH_ipadd, 22, array('hostkey'=>'ssh-rsa,ssh-dss'));
if(ssh2_auth_pubkey_file($connection, $SSH_user, $SSH_public_key, $SSH_private_key)){
echo "connected successfully.";
}else{
echo "did not connect correctly.";
}
连接使用用户名/密码:
//connect to server via ssh in preperation for sftp
$connection = ssh2_connect($SSH_ipadd, 22);
//check connectivity
if(ssh2_auth_password($connection, $SSH_user, SSH_Password)){
echo "connected successfully.";
}else{
echo "did not connect correctly.";
}
,但我不确定如何一次一举两得。
当我尝试与CLI
ssh -i private.key [email protected]
它提示我连接到服务器,用于验证密钥,输入密码后。一旦这已被认证,它会将我登录到SFTP服务器。
我该如何使用PHP来验证这种类型的服务,然后上传文件等?