网站和Web应用程序已成为当今世界的必需品,从企业,公司,教育,协作,个人博客,食品和杂货,健康和医药,社交媒体平台,访问政府服务和数字支付,甚至到投票,一切都可以在互联网上找到。互联网。如今,通过单击屏幕上的一些按钮以及常见的问题“网站安全吗?”来完成我们的日常工作已变得很普遍。答案大部分是,但不是全部。每个legitNeimate网站都试图提供最大程度的安全性,但是没有一种互联网是完全100%安全的。
网站与WebApp:
网站是静态HTML,CSS,并根据CSS中提供的样式显示一些JS文件。网站不是动态的,它们不能提交表单,不能动态生成页面,并且也可能受到其他接受方式的限制。 Web应用程序是可以接受表单提交,动态生成页面,与数据库通信以执行CURD流程等的程序。
网站所有者的一些安全提示通常是:
- 获取SSL证书
- 创建安全密码
- 保留备份
- 将网站更新到最新版本
这些是技术知识有限的网站所有者遵循的一些一般安全原则。这些原则对刚带来域名和托管的用户以及添加了具有很好主题的wordpress的用户来说非常有用。这些人无需担心服务器更新和安全性,也无需担心wordpress的工作原理,他们只关心内容,有时甚至是速度。对于这些类型的人来说,上述步骤通常就足够了,但是对于Web应用程序,我们需要比网站更多的东西吗?
让我们研究一下在部署其Web应用程序时需要注意的事项。
- 切勿在生产中启用调试模式–
诸如WordPress,Djnago,Larvel之类的许多Web框架都提供了开发服务器,不应在生产中使用它。调试模式“开”提供了更好的错误日志,并为开发人员提供了源代码中的信息,例如变量名和行号。 - 限制对服务器的访问并关闭未使用的端口–
在云中运行我们的Web应用程序是非常好的选择。一些不错的选择是Digitalocean,google cloud,azure和AWS。当您租用虚拟服务器时,请限制可以访问该服务器的人员。最好使用SSH访问服务器。在运行服务器时,请始终关闭不必要的端口。 - 始终更新框架和应用程序–
更新是减少我们应用程序中错误的最好方法。以同样的方式更新用于构建应用程序的框架可能会有所帮助,但有时我们必须为应用程序重写代码,但是如果更新是长期的,那么即使必须重写代码也最好这样做。 - 确保数据库安全–
很多时候,我们错过了数据库也是我们应用程序的一部分,对于我们保持数据库安全也是必需的。始终保持强密码,限制可以访问数据库运行本机命令的用户。根据应用需要选择数据库也很好。 - DNS托管–
DNS是Internet的骨干,它是Internet的电话簿。简而言之,DNS是将人类可读的主机名(例如geeksforgeeks.org)转换为计算机可理解的数字(例如34.218.62.116)的协议。对于我们的Web应用程序来说,拥有更好而广泛的DNS(如Cloudflare,基于云的DnS)是必要的,这可以减少查找我们的服务器IP并进行连接的查找时间。 - 限制API使用量–
许多Webapp使用外部服务,这些服务将通过针对特定功能的经过特殊配置的API来提供。大多数API提供商会根据自己的计划限制使用量,对于Web应用程序开发人员来说,也更好地根据需要实施API的速率限制,因此我们无需支付任何额外费用。 - 垃圾邮件和垃圾邮件–
许多Web应用程序还包含允许订阅电子邮件的表单或其他查询表单。如今,许多bot都具有提交纯表单的能力。为了更好地保护它,可以使用各种形式的代码使大多数bot保持隔离。 Google免费提供基本的Recaptcha。 - HTTP标头–
大多数Web应用程序框架都允许发送HTTP标头,例如HSTS,CSP,Referer和Permission Policy,这可以帮助浏览器确定应允许其加载样式,源和媒体的源和协议,从而加强Web应用程序的安全性,例如升级到HTTPS,XSS保护等等。
这些是一些基本的东西,您可以通过查看用于创建Web应用程序的框架的文档来了解更多安全功能和策略。