Mengapa `postgres` membutuhkan shell?


13

Dalam sistem Debian Wheezy saya, saya perhatikan bahwa pengguna postgres 'postgres', "administrator PostgreSQL", menggunakan /bin/bashsebagai shell. Namun, saya tidak tahu mengapa ini diperlukan. Mengubah ini /bin/falsemasih memungkinkan saya untuk menggunakan perintah psql.

Jadi, mengapa pengguna sistem postgresmemerlukan shell, dan apakah itu harus secara khusus /bin/bash?


5
Ini diperlukan untuk menjalankan cronjob pg_autovacuum.
Simon Richter

Jawaban:


14

Lihat Mengapa pengguna 'tempat sampah' memerlukan shell login?

Dikatakan pola ini untuk pengguna sistem

  • Umum di Debian, dan tidak banyak di distribusi lain.
  • Dianggap sebagai masalah bug / keamanan asli oleh beberapa orang.
  • Diperlukan untuk menjalankan pekerjaan cron sebagai pengguna itu, dan mungkin juga oleh beberapa skrip jika mereka menggunakan su -c untuk dijalankan sebagai pengguna ini. Seharusnya mudah untuk memeriksa ini. Periksa pekerjaan cron milik psql. Periksa skrip dalam paket postgres ( dpkg-query -L) dan ambil mereka untuk penggunaan su.

Disarankan juga bahwa jika kekhawatiran utama Anda adalah semacam penyalahgunaan pengguna yang melibatkan login SSH, mungkin akan lebih mudah untuk menggunakan AllowGroups di sshd_config. (Membuat sshlogingrup, seperti yang direkomendasikan oleh Panduan Server Ubuntu ).

Pola ini diperbaiki dalam sistem dasar awal tahun ini - lihat bug # 274229 . Jadi, jika Anda berpikir postgres dapat diperbaiki juga, akan lebih baik untuk menghubungi pengelola paket misalnya dengan mengajukan bug.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.