【问题标题】:Distributing SSH keys with iPhone app使用 iPhone 应用程序分发 SSH 密钥
【发布时间】:2012-04-24 12:05:25
【问题描述】:

我有一个 iPhone 应用程序需要安全地连接回我们的托管环境。它使用 SSH 执行此操作,然后使用端口转发连接到 localhost:port,这实际上是在主机上运行的服务。

目前我进行概念验证的方式是在应用程序中包含证书(私有和公共),然后通过 SSH 连接到主机。

这意味着不需要分发密码,但是这是一种好的做法吗?私钥是否应该包含在应用程序中?

如果没有,我应该如何在不分发密码的情况下执行此操作,我应该包括什么?

【问题讨论】:

    标签: ios security ssh certificate


    【解决方案1】:

    分发密码或分发私钥是完全一样的事情,一般都是不可以的。

    您没有向我们提供有关您实际尝试做什么的足够信息,但在我看来,您对最有可能解决的问题采取了一种非常复杂的方法。如果您的 iPhone 应用程序需要与服务器通信,那么您至少应该让每个 iPhone 应用程序生成自己的私钥/公钥组合,并将其公钥带外添加到服务器上的授权用户,这样您就可以有选择地撤销个别用户的访问权限。

    【讨论】:

    • 您如何建议在没有密码或私钥的情况下连接回 SSH 服务器?
    • 我想使用 SSH 端口转发来访问 iOS 应用程序中本地主机上的端口。例如。我有一个服务在主机的 80 端口上运行,我需要能够通过 iOS 设备的 9000 端口上的 SSH 隧道安全地访问它。
    • 然后,就像我说的那样,为每个设备生成一个唯一的证书组合,并使用带外身份验证通道。
    • 谢谢 - 因为我怀疑它不安全。我将根据每个特定设备实现单独的授权密钥。
    • 确保您在服务器端对帐户进行了非常仔细的配置,以确保他们所能做的就是访问远程隧道。这本身就是一整卷。
    猜你喜欢
    • 1970-01-01
    • 2011-06-11
    • 2011-07-13
    • 2023-03-03
    • 1970-01-01
    • 2012-10-07
    • 1970-01-01
    • 1970-01-01
    • 2012-05-07
    相关资源
    最近更新 更多