我从未在网站上使用过 https,现在想尝试一下。我做了一些研究,但不确定我是否理解了所有内容。非常感谢您的回答和纠正。
开始了:
要使用 https,我需要为我使用的 Web 服务器生成“私钥”和“公钥”。我使用的是 apache(手动:http://httpd.apache.org/docs/2.0/ssl/ssl_faq.html)
https协议应该绑定到443端口。
问:怎么做?默认是这样的吗?在哪里可以查看配置?
应用 https。
问:如果我在浏览器中看到 https,是否意味着页面上的数据流量已加密?页面上的任何表单都会通过 https 提交数据吗?
尽管所有数据都将被加密,但浏览器仍会显示难看的红色消息。这只是因为他们对我的证书一无所知。他们预装了大约一百个证书,但显然我的证书不在其中。但数据确实通过 https 加密。
如果我希望浏览器识别我的证书,我需要让已经预先安装其证书的认证机构 (ca) 之一 (例如 thawte、geotrust、rapidssl 等) 对其进行签名。
UPD:要了解有关 ssl/tsl 的信息:HTTPS 连接的最初几毫秒,我发现它非常有用。如何在服务器端使用 ssl/tsl 加密的 PHP 代码示例如下在此处发布。
答案1
答案(某种程度上):
- 不:您需要生成 SSL 证书和私钥(公钥嵌入在证书中):假设是 X509 证书
- 是的:一般来说,这是一个好主意。例如:当您安装mod_ssl模块到 Apache 服务器默认配置为使用端口 443。有关更多指针,请查看配置 Apache 和 mod_ssl。
- 是的:更准确地说:你的浏览器和服务器之间的流量是除非您离开该页面,否则页面将被加密(在这种情况下,“页面”的含义是在服务器配置中定义的:再次查看 Apache 配置)。
- 浏览器通常会要求您在其 SSL 连接规则中添加“例外”。这是因为您的浏览器不信任信任您服务器的证书。更准确地说,它不信任它,因为它没有由您的浏览器信任的任何 CA(证书颁发机构)签名(所谓的“信任链”)。
- 是与否。如果您希望这个星球上所有用户安装的所有浏览器都信任您的服务器:是的。如果您只希望浏览器信任它:不:您可以随时配置自己的浏览器以信任您的特定服务器。
希望对您有所帮助。我知道我写的很多内容可能不够精确,但我不知道您目前对这个主题的了解有多广泛。