У меня есть база данных Postgresql, полная учетных записей пользователей, и я хотел бы разрешить этим пользователям получать доступ к серверу через ssh, используя только аутентификацию открытых ключей.
Пока что я установил эти части на сервере Ubuntu:
Есть ли проще способ обойти эту проблему? У меня проблемы с правильной настройкой конфигурации nss (отсутствие документации и журналов).
Спасибо за ваше время и помощь.
Я бы выгружал ваших пользователей из БД в LDAP и загружал их в локальный LDAP. Вы можете легко автоматизировать обновления. Это заставит вашу ОС запрашивать пользователей из LDAP, и это будет намного более портативным - libnss-pgsql2 есть не во всех UNIX-подобных системах, если вы когда-нибудь захотите отказаться от Linux. Никогда не знаешь ;)
вы можете использовать ssh-туннелирование, чтобы позволить пользователю подключаться к вашей базе данных. Такие как
ssh -L локальный_порт: IP-адрес / имя хоста: порт_сервера пользователь @ IP-адрес / имя хоста.
здесь пользователь будет пользователем ОС, поэтому для подключения лучше всего предоставить суперпользователя postgres.
Но имейте в виду, что сервер базы данных postgresql должен находиться на этом сервере.
после этого вы можете подключиться с помощью простой команды psql как
psql -h имя хоста / IP-адрес -p порт -U пользователь -d база данных