HTTPS 和假人认证

Vit*_*dev 6 ssl certificate https ssl-certificate

我从未在网站上使用过 https,现在想尝试一下。我做了一些研究,但不确定我是否理解了一切。非常感谢答案和更正。

开始了:

  1. 要使用 https,我需要为我使用的 Web 服务器生成“私有”和“公共”密钥。就我而言,它是 apache(手册:http : //httpd.apache.org/docs/2.0/ssl/ssl_faq.html

  2. Https 协议应该绑定到端口 443。

    问:怎么做?是默认完成的吗?我在哪里可以检查配置?

  3. 应用https。

    Q:如果我在浏览器中看到 https 是否意味着页面上的数据流量被加密了?页面上的任何表单都会通过 https 提交数据?

  4. 尽管所有数据都将被加密,但浏览器仍会显示难看的红色消息。这只是因为他们对我的证书一无所知。他们预装了大约一百个证书,但显然我的不是其中之一。但是数据是通过https加密的。

  5. 如果我希望浏览器识别我的证书,我需要由预安装其证书的证书颁发机构 (ca) 之一(例如 thawte、geotrust、rapidssl 等)对其进行签名。

UPD:要阅读 ssl/tsl:HTTPS 连接的前几毫秒,我发现它非常有用。有关如何在服务器端使用 ssl/tsl 加密的 PHP 代码示例在此处发布

sir*_*rge 12

答案(种类):

  1. :您需要生成 SSL 证书和私钥(公钥嵌入在证书中):假设为 X509 证书
  2. 是的:一般来说这是个好主意。例如:当您将mod_ssl模块安装到 apache 服务器时,默认配置为使用端口 443。有关配置 Apache 和 mod_ssl 的更多指示。
  3. 是的:更准确地说:除非您离开页面,否则浏览器和服务器之间的流量加密的(在这种情况下,“页面”的含义是在服务器上的配置中定义的:再次查看 Apache 配置)。
  4. 浏览器通常会要求您在其 SSL 连接规则中添加“例外”。发生这种情况是因为您的浏览器不信任您服务器的证书。更准确地说,它不信任它,因为它没有由您的浏览器信任的任何 CA(证书颁发机构)签名(所谓的“信任链”)。
  5. 是和否。如果您希望这个星球上所有用户安装的所有浏览器都信任您的服务器:YES。如果您只想让浏览器信任它::您始终可以将自己的浏览器配置为信任您的特定服务器。

我希望这有帮助。我知道我写的很多东西可能不够精确,但我不知道你目前对这个主题的了解有多广。