我今天试图了解在互联网上托管 ASP.NET Core 网站的选项。我知道基于 HTTP.SYS 的托管是可能的,无需在网络服务器上安装 IIS,但我还没有找到明确的信息来说明为什么要这样做(优点/缺点)以及当今在互联网上托管的最安全的方式是什么asp.net 核心网站。 IIS 过去被认为是一种不安全的网络服务器,我不知道在今天这种情况在多大程度上仍然如此。我不参与讨论 kestrel,我认为它更多地是一种仅供开发的选项,但对于直接互联网托管而言不够安全。
有不少误解的地方。
这三个都已安全并已准备好投入生产。
但是,由于其他因素,例如操作系统 (Windows/Linux)、Web 框架 (PHP/ASP.NET) 或您自己的代码中的漏洞,面向互联网的网站很容易受到损害。因此,如果您的目标是保护网站安全,则必须着眼于大局并与安全专业人员合作。 “我没有找到明确的信息”,因为有关如何保护特定网站的详细信息需要对您的设置进行广泛的调查,而且很少是免费的。
HTTP.sys 是一个基于 Windows 的 ASP.NET Core Web 服务器。它是 Kestrel Server 的替代品,并且具有 Kestrel 不支持的一些功能。它基于 HTTP.sys 内核模式驱动程序构建。由于它与 ASP.NET Core 模块不兼容,因此无法与 IIS Express 或 IIS 一起使用。 ASP.NET Core 中的 HTTP.sys Web 服务器实现
IIS 是 Microsoft 推出的一款功能强大、灵活且通用的 Web 服务器,运行在 Windows 平台上。它作为一项功能与 Windows 捆绑在一起,可以根据需要打开或关闭。尽管 IIS 已经存在了二十年,但它仍然支持运行 20 年前开发的应用程序以及去年使用最新 .Net 技术编写的应用程序。
你说IIS过去被认为是不安全的Web服务器,现在不知道到什么程度仍然如此。但我想说,IIS的安全配置和管理不仅仅是一个技术问题,人的因素也很重要,因为最终是人来实施各种设置和控制。安全是一个系统工程,不仅有空间的跨度,也有时间的跨度,有安全配置和管理的IIS系统并不是绝对安全的,只能说在一定的情况下、一定的范围内是安全的。一段时间以来,随着不断发展,其安全形势也在发生着相应的变化。只有让安全意识、安全技术、安全管理贯穿全过程,才能实现最大程度的安全。