我从来没有做过任何形式的托管,想知道如何创建一个安全的我的电脑和手机之间有小型服务器吗?我不想访问所有内容,只想访问手机中的一部分 PC 数据,并且在同一 wifi 范围内。威胁模型较高。
Windows 7 - 苹果手机
答案1
由于您在标签中列出了一些连接类型,我会对其进行解释。
网络服务器部分是最简单的。
您只需要在 PC 上运行 Web 服务器即可。有很多方法可以做到这一点,具体取决于您的技能以及您想要实现/学习的目标。我最喜欢的是使用 JavaScript 和 Node.JS,但对于初次使用来说,这可能相当复杂。Node.JS 允许您非常快速地运行自己的 Web 服务,并且拥有大量辅助库,例如出色的 Express 库。
或者,您可能会发现使用 WAMP 更方便。它为您提供了一整套 Web 服务,包括 Apache(Web 服务器)、PHP(为您提供创建 Web 应用程序的动态语言)和 MySQL(数据库)。该主题也有各种变体,WAMP 可能是最受欢迎的。您还可以运行本机 Internet 信息服务 (IIS),这是您可以打开的可选 Windows 服务,它的作用与 Apache 相同。WAMP 的好处是它使用与廉价托管 Web 服务相同的功能,因此有很多教程和说明。
您提到了安全性,因此值得一提的是,您需要使用 SSL/TLS 安全性设置 Apache - 有很多关于如何执行此操作的教程。
然后你提到了 SFTP 和 SSH。它们是相关的,通常 1 个工具将同时提供这两种服务。在 Windows 上,你需要一个应用程序,例如自由SSHd或者温控器(个人使用免费)提供 SSH 服务器部分。这还应该为您提供 SFTP。
难题的最后一部分是在 iPhone 上使用正确的客户端应用程序。当然,Web 浏览器不是问题,但 SFTP 和 SSH 稍微麻烦一些。您需要一个或多个应用程序来实现这一点。SFTP 是最简单的,因为有许多应用程序可以通过 SFTP 传输文件,我个人更喜欢 Goodreader。SSH 是最难的,因为它更专业,但应用商店中列出了许多 SSH 客户端。不过大多数都需要花钱。
正如您所说,威胁级别很高,我再补充几点。
对于 SFTP/SSH,请确保正确配置了安全性。此外,使用基于证书的身份验证,并采用非常强的加密级别。确保所有密码也都非常强。
在 Web 方面,我建议您先学习 WAMP,以便了解所有组件。但为了真正安全地使用,我建议放弃 WAMP,转而使用 Node.JS 和强大的 TLS 配置。Node.JS 还拥有许多用户管理帮助程序库,您可能也会发现它们很有用。
在 Web 方面的最后一点,您可能需要调查使用 SASL 来验证用户与服务器的连接(SSL/TLS 用于向用户验证服务器)。
另一种安全设置是在 PC 上创建 VPN,然后从 iPhone 连接到该 VPN。然后,手机到 PC 的所有流量都将被加密。这样,您就可以将网络和其他服务限制为只能在 PC 本身和 VPN 上访问,iPhone 基本上可以直接连接到 PC。