BUG #14543: libpq fails with group readable ssl keys

From: postgres(at)freigeist(dot)org
To: pgsql-bugs(at)postgresql(dot)org
Subject: BUG #14543: libpq fails with group readable ssl keys
Date: 2017-02-13 18:43:23
Message-ID: 20170213184323.6099.18278@wrigleys.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

The following bug has been logged on the website:

Bug reference: 14543
Logged by: Johannes Ziemke
Email address: postgres(at)freigeist(dot)org
PostgreSQL version: 9.5.6
Operating system: linux
Description:

Hi,

looks like libpq checks if a ssl key is group or world readable and aborts
if that's the case:

# pg_basebackup -R -d
'postgres://replication(at)db-rw?sslmode=verify-ca&sslcert=/etc/ssl/private/default.pem&sslkey=/etc/ssl/private/default-key.pem&sslrootcert=/etc/ssl/ca-trusted.pem'
-D /var/lib/postgresql/9.5/main --xlog-method=stream
pg_basebackup: could not connect to server: private key file
"/etc/ssl/private/default-key.pem" has group or world access; permissions
should be u=rw (0600) or less

# ls -al /etc/ssl/private/default-key.pem
-rw-r----- 1 root ssl-cert 1675 Feb 13 18:04
/etc/ssl/private/default-key.pem

While I agree this is reasonable to do if the key is world readable, it's
perfectly fine to make a SSL key group readable to share it with multiple
users on the same system.

Ubuntu (and probably most other distributions) even creates a group for
exactly this scenario:

# ls -l /etc/ssl/private/
total 4
-rw-r----- 1 root ssl-cert 1708 Apr 14 2016 ssl-cert-snakeoil.key

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message jordal 2017-02-13 19:43:55 BUG #14544: libpq: specifying 'target_session_attrs=read-write' prevents use of PQsendQuery
Previous Message Michael Cress 2017-02-13 08:41:55 Re: (Benign ?) Libpq memory leak