我最近为一家欧洲银行开发了一个激励网站,其中一个要求是 SSL——该网站显示一些个人客户数据(但没有财务或真正敏感的数据)。
该网站托管在共享平台上,我已经在我的网络主机上购买了唯一 IP + SSL 证书,他们会进行安装。
下周一,一家审计公司将对网站进行全面测试,因此我需要确保一切都完全安全。Web 应用程序本身和服务器完全符合要求,只是仍需要安装 SSL。
我的问题:
- 有人能简短地(用“人性化”的术语)向我解释一下安装 SSL 证书后会发生什么吗?
- 这是否需要在网站源代码中进行额外配置?
- 这是否意味着该网站无法通过 http 访问,只能通过 https 访问?
(抱歉,我的问题比较菜鸟,我是一名设计师,而不是服务器专家。)
谢谢!
编辑:由于我还没有得到任何真正有用的答案,让我添加一些额外的解释:
- 我是不是询问如何安装证书,我的网络托管商将帮我安装
- 我只是希望对 SSL 技术有基本的了解,因为我在网上找到的所有信息对于我对服务器技术的基本了解来说都有些太专业了。
- 最让我疑惑的是,我的主机告诉我我的网站可以通过 http 和 https 访问——那么证书有什么意义呢?
答案1
有人能简短地(用“人性化”的术语)向我解释一下安装 SSL 证书后会发生什么吗?
服务器和浏览器之间发送的信息不再以第三方可轻易截取和读取的形式存在,而是以加密格式发送,有助于防止有人窥探流量。
这是否需要在网站源代码中进行额外配置?
不(是)......
也许...如果您在代码中明确将重定向到 http,而不是 https。
此外,在许多浏览器中,如果您的网站通过 http 加载图像等内容,您会收到警告。因为浏览器会抱怨 https 和 http 的混合。
这是否意味着该网站无法通过 http 访问,只能通过 https 访问?
通常不会,因为服务器将允许 http 流量和 https。但这可以在服务器级别进行控制。这可以如果您有足够的控制权,则可以在服务器级别实现(我不会在这里详细介绍),但它要求您拥有比共享服务器上通常拥有的更多的访问权限(除非共享,您是指虚拟服务器?)。
一般来说...请不要误解。
如果您很快将接受 Web 应用程序安全审计员的审查(我认为是应用程序,而不是平面 html,因为平面 html 具有加载用户数据的能力)...而您不具备 SSL 的基本知识,那么不幸的是,您很可能会审核失败。
抱歉,我并不想妄下结论,因为你可以通过...我不知道您的安全审计的具体要求。但从与安全审计员合作的经验来看 - SSL 只是一个开始。
这是一个可以帮助您开始了解安全问题的网站:https://www.owasp.org/index.php/Main_Page
但就像人们常说的,如果你不具备某个特定角色的技能,那就找人帮忙吧。我不指望开发人员拥有设计师的全部技能,反之亦然,所以也许可以向开发人员朋友寻求帮助?
答案2
您说的“激活”是什么意思?
如果你对 SSL 缺乏了解,那么在你配置服务器之前,最好先学习一下 :)
根据您所运行的网络服务器,流程会有所不同。
对于 Apache 网络服务器,需要大量配置和人机交互才能使其工作 - 除非您的托管商愿意为您执行此操作。
对于 Windows Web 服务器,操作更多的是指向和单击,但是您仍然需要知道自己在做什么:) 虽然您可以通过 HTTP 访问 SSl 网站,但这是一个非常糟糕的主意 - 它抵消了首先保护流量的许多优势。
我可以马上告诉你,当你在与金钱相关的网站(例如银行)上执行此操作时,你将不符合 PCI 标准。
PCI 要求非常严格,当然也是众所周知的。您可能会发现审计公司希望您遵守 PCI 规定,即使该网站不直接执行支付交易。
底线是,如果这在任何方面都是高端的或者对生产敏感的,请找专业人士为您做这些事情。
答案3
至于最后一条,将到达未加密站点的请求重定向到加密站点是一种常见的做法,如在 Apache httpd 配置中可以找到的此示例中所示:
<VirtualHost 1.2.3.4:80>
ServerName thesite.example.com
RedirectMatch (.) https://thesite.example.com$1
[...]
</VirtualHost>
请注意,此重定向通过纯 HTTP 连接传输,并且只有当您的用户主动在浏览器中输入 https URL 时,他们才会免受某些特定攻击。
答案4
“SSL 通过加密来保护用户网络浏览器和服务器之间的数据”能回答您的问题吗?
维基百科的条目SSL 上提供了更多详细信息。