SSL 的 Arangod.conf

问题描述 投票:0回答:2

使用

arangod.conf
处的自签名证书在端口 8529 上运行 TLS 1.2 时,
/server.pem
是什么样子?当前文档仅列出了启动服务器的参数,但没有列出等效的
arangod.conf

[database]
directory = /var/lib/arangodb3

[server]
endpoint = ssl://0.0.0.0:8529
authentication = true
threads = 0
statistics = true
uid = arangodb
enter code here

[scheduler]
threads = 0

[javascript]
startup-directory = /usr/share/arangodb3/js
app-path = /var/lib/arangodb3-apps

[log]
level = info
file = /var/log/arangodb3/arangod.log

[cluster]
data-path = /var/lib/arangodb3/cluster
log-path = /var/log/arangodb3/cluster
arangod-path = @SBINDIR@/arangod@PROGRAM_SUFFIX@
dbserver-config = @SYSCONFDIR@/arangod.conf

[ssl]
keyfile = /server.pem
protocol = 5

当我开始时,没有任何效果。

我也尝试过,试图镜像文档,

[ssl]
keyfile = /server.pem /tmp/vocbase
protocol = 5

但还是没有运气。

linux ssl arangodb
2个回答
2
投票

在 Ubuntu 16.04 上的端口 8530 上运行 SSL 所遵循的步骤是:

  • 修改/etc/arangodb3/arangod.conf:
    endpoint = ssl://0.0.0.0:8530
  • 生成你的自签名SSL证书,我使用openssl
  • 您最终应该得到一个
    server.pem
    文件,其中包含您的
    server.crt
    server.key
  • 修改 /etc/init.d/arangodb3 文件:
    找到看起来像这样的行,大约第 50 行:
    $DAEMON --uid arangodb --gid arangodb --pid-file "$PIDFILE" --temp.path "/var/tmp/arangod" --log.foreground-tty false  --supervisor $@

    将其更新为如下所示:
    $DAEMON --uid arangodb --gid arangodb --pid-file "$PIDFILE" --temp.path "/var/tmp/arangod" --log.foreground-tty false –-ssl.keyfile /etc/arangodb3/server.pem --supervisor $@
  • 重新启动arangodb3服务以使用新的ssl证书,您现在应该可以通过端口8530进行连接

您可以在端口 8529 上执行 SSL,但我更喜欢使用端口 8530,因为这样我可以阻止 8529 访问以确保只有 SSL 流量到达服务器。

如果您想在访问 8530 上的服务器时阻止 Web 浏览器抱怨不受信任的 SSL 证书,只需在浏览到该站点后在客户端上手动安装证书即可。


0
投票

您可以同时设置文件和 cli 选项。但请记住,cli 选项胜过此处所述的文件中的选项 https://docs.arangodb.com/3.11/operations/administration/configuration/#configuration-precedence

您可以在配置文件中配置 ssl 端点和协议,并在 cli 选项中配置密钥文件。

# config.conf
[ssl]
protocol = 5

[server]
endpoint = http+ssl://127.0.0.1:8000


arangod --configuration config.conf --ssl.keyfile /path/to/cert.pem
© www.soinside.com 2019 - 2024. All rights reserved.