SSH服务器确认客户端?

时间:2015-07-22 14:28:45

标签: ssh sftp file-transfer tibco

我的公司使用商业(TIBCO MFT)软件系统来处理文件传输,最近我遇到了一个无法连接到特定客户端SFTP服务器的实例。从同一本地服务器上的Linux终端开始,我可以整天连接,但在尝试使用该软件时,我无法进行身份验证。我正在使用一个简单的用户/密码设置来连接它们。 我最终通过(在软件控制面板中)选择"在SSH选项中使用默认键"(顺便说一下是我们的键),其中选择先前是" none" 。 在我看来,我们应该被要求使用一些类的密钥,但我注意到我们有很多SFTP推送文件传输使用服务器配置,SSH密钥标记为"无&#34 ;. 我环顾四周,没有找到满意的答案。我有疑虑:

  • 远程服务器是否有一个包含远程系统密钥的文件(有点像known_hosts?),以及 如果客户端系统不在该文件中,他们甚至不会让我登录 在?
  • 这是否与"双键交换"有关。 在SSH2中使用?如果客户服务器使用SSH1,则不需要我的服务器密钥?

我真的很感激对此的任何见解。

1 个答案:

答案 0 :(得分:0)

可以设置SSH以接受密钥和用户名/密码。目标系统可以轻松支持两者。

你没有" known_hosts"文件以验证(使用密钥)您连接的主机。您只需验证主机连接到。然而,通过防火墙或SSH配置使用IP限制来限制对主机的访问是很常见的。

但是您仍然可以使用密钥访问主机上的帐户。

如果目标系统是某种Unix,您很可能会有一个帐户名来访问它。该用户帐户很可能在服务器上有一个主目录。在帐户主目录中,您将拥有一个名为" .ssh"的文件夹。在该文件夹中,您有一个名为" authorized_keys"的文件。您可以在此文件列表中列出用于访问此帐户的任意数量的公钥。如果您拥有适当的私钥/公钥对,那么您将可以访问此帐户。

所以回答你的具体问题: - 否。此类限制将基于IP。 - 否。服务器密钥仅用于验证您连接的服务器。

第一次密钥交换将验证您连接的主机。这是您第一次连接主机时被问到的问题。当你接受这个时,你有一个加密的会话。如果允许,您将在此之后输入用户名/密码。如果主机设置为使用基于密钥的身份验证,则必须提供密钥。

SSH客户端和SSH服务器都应该为日志提供许多提示。

许多Unix服务器使用OpenSSH,您可以在以下位置查看配置文件: / etc / ssh / sshd_config

如果您尝试连接到需要基于密钥的身份验证且不接受用户名/密码的SSH服务器,那么您通常会收到错误:"没有支持的身份验证方法(服务器发送:公钥)&# 34。

当使用商业解决方案时,我会怀疑他们的ssh堆栈可能已经过时且过时,而不是使用现代密码套件。您可以通过搜索" Ciphers"来查看Linux服务器上使用的密码。在" / etc / ssh / sshd_config"

为了进一步排除故障,我建议您直接使用源系统中的putty进行连接。如果TIBCO MFT使用过时的堆栈并需要更新,这很容易发生。

你可以把Putty放到:http://www.chiark.greenend.org.uk/~sgtatham/putty/

为了进一步帮助您,我们需要连接日志和配置文件。你应该有一个连接错误,告诉我们到底出了什么问题。