当前位置: 首页 > 知识库问答 >
问题:

PHP中的SFTP连接(不通过ssh)

利永年
2023-03-14

在使用ssh2_sftp方法创建了一个通过SFTP发送和接收文件的小型库之后,我发现我必须连接的服务器已经禁用了ssh连接,我只能通过SFTP连接。

服务器连接在使用sftp命令的命令行下运行良好,但是ssh向我发送一个“此服务仅允许sftp连接”。

共有1个答案

令狐宜民
2023-03-14

99%的键盘交互身份验证只是提示输入密码。phpseclib是一个纯PHP SFTP实现,如果密码验证失败,它将尝试通过键盘交互方式提交密码。如何使用它的示例:

<?php
include('Net/SFTP.php');

$sftp = new Net_SFTP('www.domain.tld');
if (!$sftp->login('username', 'password')) {
    exit('Login Failed');
}

// outputs the contents of filename.remote to the screen
echo $sftp->get('filename.remote');
?>
 类似资料:
  • 我已经在notepad++/nppftp中使用相同的SFTP配置文件一年了,但从昨天开始,它无法连接到我的站点,它弹出错误消息: [SFTP]连接失败:kex错误:方法kex ALGOS不匹配:服务器[diffie-hellman-group-exchange-sha256],客户端[curve25519-sha256@libssh.org,ecdh-sha2-nistp256,diffie-he

  • 我要连接的代码: 命令行版本的相同的程序,我可以运行没有任何例外!另一个来自JCraft[link]http://www.jcraft.com/jsch/examples/SFTP.java.html网站的SFTP示例运行良好。

  • 问题内容: 我想在ssh上建立到我的mysql服务器的ssh隧道。 理想情况下,就像我直接连接一样,我将返回一个mysqli db指针。 我在没有SSH2库的共享主机上,但是我可以使用PECL在本地安装它们。 如果有一种方法可以使用本机命令,那就更好了。 我当时在想类似的东西,但是如果没有这些库,它将无法正常工作。 谁有想法?我正在liquidweb上运行共享的CentOS linux主机。 关于

  • 我试图连接到无法通过JSch管理的远程设备,尽管我可以使用具有相同凭据的WinSCP客户端进行连接。 该应用程序是一个基于J2EE的企业应用程序,在JBoss作为7.1.1运行,在Windows服务器上,我试图从Quartz作业连接SFTP服务器。下面是我用来验证SFTP登录的代码。 你能帮我找出这种行为的可能原因吗?

  • 出于测试目的,我尝试使用Spring-Integration连接到SFTP,并成功地使用了下面提到的相同的代理实现(JumpHostProxyCommand)。 下面是我一直使用的Spring boot+Apache Camel代码: Jsch代理: build.gradle文件: 我已经挣扎了两天来找出错误的根本原因,任何关于这个问题的帮助都是非常感谢的。谢了!

  • 我只是在两个问题中输入,然后程序似乎继续没有问题。但是,我需要这些代码通过cron任务实现自动化,所以我不希望它暂停程序来问我这两个问题。是不是有什么东西我不提供给它,这样它就不会问这个了?我需要做些什么来阻止它的追问?希望有人有一些想法。多谢了。