Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ssl 远程客户端上的Docker TLS安全性_Ssl_Docker - Fatal编程技术网

Ssl 远程客户端上的Docker TLS安全性

Ssl 远程客户端上的Docker TLS安全性,ssl,docker,Ssl,Docker,我正在编写一个客户端,它将使用docker提供的远程API来使用公开的REST服务。我想保护客户端和服务器之间的通信。我不完全熟悉证书处理。我以编程方式将包含服务器的公共证书的信任存储区包含到我的客户端。我明白我必须遵循同样的方法。但在阅读了Docker关于它的文档后,我有点困惑: http://docs.docker.com/articles/https/ 我知道我必须生成两组密钥,一组用于服务器,另一组用于客户端。按照docker文档中所述的步骤,我生成了以下内容: MacBook-Pro

我正在编写一个客户端,它将使用docker提供的远程API来使用公开的REST服务。我想保护客户端和服务器之间的通信。我不完全熟悉证书处理。我以编程方式将包含服务器的公共证书的信任存储区包含到我的客户端。我明白我必须遵循同样的方法。但在阅读了Docker关于它的文档后,我有点困惑:

http://docs.docker.com/articles/https/
我知道我必须生成两组密钥,一组用于服务器,另一组用于客户端。按照docker文档中所述的步骤,我生成了以下内容:

MacBook-Pro:misc Joe$ ls -l
total 40
-rw-r--r--  1 Joe  staff  1743 Nov 19 23:06 ca-key.pem
-rw-r--r--  1 Joe  staff  1346 Nov 19 23:06 ca.pem
-rw-r--r--  1 Joe  staff  1743 Nov 19 23:10 key.pem
-rw-r--r--  1 Joe  staff     0 Nov 19 23:14 server-cert.pem
-rw-r--r--  1 Joe  staff  1751 Nov 19 23:07 server-key.pem
-rw-r--r--  1 Joe  staff   907 Nov 19 23:13 server.csr
ca-key.pem和ca.pem之间有什么区别?同样,什么是server-cert.pem和server-key.pem?哪些连接到服务器,哪些连接到客户端

但不管怎样,尝试以下方法会给我一个错误:

MacBook-Pro:misc Joe$ openssl x509 -req -days 365 -in server.csr -CA ca.pem -CAkey ca-key.pem -out server-cert.pem
Signature ok
subject=Dummy
Getting CA Private Key
Enter pass phrase for ca-key.pem:
ca.srl: No such file or directory
6502:error:02001002:system library:fopen:No such file or directory:/SourceCache/OpenSSL098/OpenSSL098-44/src/crypto/bio/bss_file.c:356:fopen('ca.srl','r')
6502:error:20074002:BIO routines:FILE_CTRL:system lib:/SourceCache/OpenSSL098/OpenSSL098-44/src/crypto/bio/bss_file.c:358:

也许这与此相关(来自同一文档):“警告:这些TLS命令将仅在Linux上生成一组工作证书。Mac OS X附带的OpenSSL版本与Docker所需的证书不兼容。”您认为这是导致此错误的原因吗?