「postgres」にシェルが必要なのはなぜですか?


13

私のDebian Wheezyシステムでは、postgresユーザー「postgres」、「PostgreSQL管理者」が/bin/bashシェルとして使用していることに気付きました。ただし、これが必要な理由はわかりません。これを変更/bin/falseすると、コマンドを使用できるようになりますpsql

それでは、なぜシステムユーザーpostgresはシェルを必要とし、具体的にシェルを必要とするの/bin/bashですか?


5
これは、実行中のcronjobに必要でしたpg_autovacuum
サイモンリヒター14

回答:


14

チェックアウト「ビン」ユーザがログインシェルを必要としないのはなぜ?

システムユーザー向けのこのパターンは

  • Debianで一般的であり、他のディストリビューションではあまりありません。
  • 数人がバグ/本物のセキュリティ問題とみなした。
  • cronジョブをそのユーザーとして実行するために必要です。また、su -cを使用してこのユーザーとして実行する場合は、おそらくいくつかのスクリプトでも必要です。これらを簡単に確認できるはずです。psqlに属するcronジョブを確認します。postgresパッケージ(dpkg-query -L)のスクリプトをチェックして、それらを使用するためにgrepしてくださいsu

また、SSHログインに関係するこのユーザーの何らかの乱用が主な懸念である場合は、sshd_configでAllowGroupsを使用すると便利かもしれません。(Ubuntu Server Guideでsshlogin推奨されているグループの作成)。

パターンは今年の初めにベースシステムで修正されました- バグ#274229を参照してください。したがって、postgresも修正できると思われる場合は、バグを報告するなどしてパッケージメンテナに連絡することをお勧めします。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.