16

我们如何在不安装任何软件/工具的情况下验证是否已在服务器上授予 SFTP 访问权限?

4

6 回答 6

17

大多数服务器都已安装curlscp安装,您可以使用它来登录 SFTP 服务器。要测试您的凭据是否使用 curl,您可以执行以下操作:

$ curl -u username sftp://example.org/
Enter host password for user 'username':

输入您的密码,如果有效,您将获得文件列表(如ls -al),如果无效,您将收到如下错误:

curl: (67) Authentication failure

您也可以尝试使用scp

$ scp username@example.org:testing .
Password:
scp: testing: No such file or directory

这将验证您是否能够登录,但找不到该testing文件。如果您无法登录,您会收到如下消息:

Permission denied, please try again.
Received disconnect from example.org: 2: ...error message...
于 2009-08-20T12:45:18.483 回答
8

使用基于密码的身份验证检查 SFTP 访问的众多方法之一:

sftp username@serverName

或者

sftp username@serverIP

然后输入密码。

您将收到“权限被拒绝,请重试”。如果失败则消息,否则您将被允许进入带有屏幕的服务器-

sftp>

您可以使用 ls、mkdir 等命令对其进行测试。

于 2020-04-23T13:32:14.407 回答
3

尝试登录。

不要刻薄——这可能是最简单的方法。通过“验证 [ing] 是否已授予 SFTP 访问权限”,您真正要做的是检查服务器是否识别了特定的 l/p 对。

于 2009-08-20T12:12:40.160 回答
1

或者,除了执行上面提到的“sftp -v”命令之外,您始终可以 cat 存储在任何运行 sshd 的服务器上的 SSH/SFTP 日志并将它们定向到文件以供查看。

如下所示的命令集将起作用,其中 1.1.1 将是您尝试搜索的块的 /24。

cd /var/log/
cat secure.4 secure.3 secure.2 secure.1 secure |grep sshd| grep -v 1.1.1> /tmp/secure.sshd.txt
gzip -9 /tmp/secure.sshd.txt
于 2013-09-04T12:55:53.233 回答
0

天,

telnet 到 115 端口怎么样(如果我们说的是简单 FTP),看看连接时会发生什么。如果您没有被拒绝,请尝试发送 USER 命令,然后是 PASS 命令,然后是 QUIT 命令。

高温高压

干杯,

于 2009-08-20T11:57:51.077 回答
-1

在 SFTP 中,身份验证可以有以下类型: 1. 基于密码的身份验证 2. 基于密钥的身份验证

但是,如果您要进行基于密钥的身份验证,那么您必须根据此准备设置并继续登录程序。如果基于密钥的身份验证失败,它会自动要求输入密码,这意味着它会自动切换到基于密码的模式。顺便说一句,如果你想验证你可以在 linux 上使用它:

“ssh -v user@IP” 它将向您显示所有调试消息,如果通过身份验证,您将登录,否则您将获得“权限被拒绝”。希望这会帮助你。

于 2012-05-04T03:31:19.873 回答