SSL证书

简介

通常希望使用SSL连接进行通信, 这可以避免 中间人 攻击. Godot有一个连接包装器 StreamPeerSSL , 它可以进行更安全的连接. HTTPClient 类也通过使用相同的包装器来支持HTTPS.

Godot包括了来自Mozilla的SSL证书, 但你可以在项目设置中用.crt文件提供你自己的:

../../_images/ssl_certs.png

该文件应包含任意数量的 PEM 格式的公共证书 .

当然, 请记住将.crt添加为过滤器, 以便导出器在导出项目时识别这一点.

../../_images/add_crt.png

获取证书有两种方法:

方法1: 自签名证书

第一种方法最简单: 生成一个私钥和公钥对, 并将公钥(PEM格式)添加到.crt文件中. 私钥应该放到你的服务器上.

OpenSSL有 一些文档 谈到这些. 这种方法也 不需要域名验证 也不要求您花费现金从CA购买证书.

方法2:CA证书

第二种方法借助于证书颁发机构(CA), 如Verisign,Geotrust等. 这是一个更加繁琐的过程, 但它更加 正式 并且确保您的身份被清晰地表示.

除非你与大公司或企业合作, 或需要连接到别人的服务器(即通过HTTPS连接到谷歌或其他REST API供应商), 否则这种方法就不那么有用.

此外, 当使用CA颁发的证书时, 您必须启用域名验证 , 以确保您要连接的域名是您想连接的域名, 否则一个CA颁发的证书将会成功用到任意数量的网站中.

如果您使用的是Linux, 则可以使用系统提供的证书文件, 通常位于:

/etc/ssl/certs/ca-certificates.crt

此文件允许HTTPS连接到几乎任何网站(即Google,Microsoft等).

或者, 如果要连接到特定网站, 请选择任何更加具体的证书.