Installation
$ sudo dpkg -i foundationdb-clients_*.deb foundationdb-server_*.deb
Check connection to DB
$ fdbcli
Using cluster file `/etc/foundationdb/fdb.cluster'.
The database is available.
Welcome to the fdbcli. For help, type `help'.
fdb>
Configure TLS for server side
Up to root privs
$ sudo su
Edit fdb.cluster file
$ vim /etc/foundationdb/fdb.cluster
<some symbols>:<some symbols>@127.0.0.1:4500:tls
Check connection to DB by TLS
$ fdbcli
ERROR: fdbcli is not configured with TLS, but all of the coordinators have TLS addresses.
Generate certs
$ cd ~
$ openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout private.key -out cert.crt
$ cat cert.crt private.key > fdb.pem
Copy certs to FDB dir
$ sudo cp * /etc/foundationdb/
$ chmod +r /etc/foundationdb/private.key
Edit FDB conf
$ sudo vim /etc/foundationdb/foundationdb.conf
...
[fdbserver.4500]
Public - address = 127.0.0.1:4500: TLS
listen-address = public
tls_certificate_file = /etc/foundationdb/fdb.pem
tls_ca_file = /etc/foundationdb/cert.crt
tls_key_file = /etc/foundationdb/private.key
tls_verify_peers= Check.Valid=0
...
Configure TLS for client side
Check connection by TLS
$ fdbcli -C /etc/foundationdb/fdb.cluster --tls_certificate_file /etc/foundationdb/cert.crt --tls_ca_file /etc/foundationdb/cert.crt --tls_verify_peers "Check.Valid=0" --tls-key-file /etc/foundationdb/private.key
Using cluster file `/etc/foundationdb/fdb.cluster'.
The database is available.
Welcome to the fdbcli. For help, type `help'.
fdb>
Configure ENV variables for client side
$ export FDB_TLS_CERTIFICATE_FILE=/etc/foundationdb/cert.crt
$ export FDB_TLS_CA_FILE=/etc/foundationdb/cert.crt
$ export FDB_TLS_KEY_FILE=/etc/foundationdb/private.key
$ export FDB_TLS_VERIFY_PEERS=Check.Valid=0
Check connection by TLS
Using cluster file `/etc/foundationdb/fdb.cluster'.
The database is available.
Welcome to the fdbcli. For help, type `help'.
fdb>