cat /etc/passwd |grep postgre
postgres:x:115:127:PostgreSQL administrator,,,:/var/lib/postgresql:/bin/bash
apt-cache show postgresql
Package: postgresql
Priority: optional
Section: database
Installed-Size: 65
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Original-Maintainer: Debian PostgreSQL Maintainers <pkg-postgresql-public@lists.alioth.debian.org>
Architecture: all
Source: postgresql-common (136)
Version: 9.1+136
Depends: postgresql-9.1
Filename: pool/main/p/postgresql-common/postgresql_9.1+136_all.deb
Size: 5468
MD5sum: 34f5a1373ad5cd0b6f5aa3e7af06c9e7
SHA1: 6f271758bd51c23614b12fd63fb711ecfa43e9e5
SHA256: e8921a22b560e81f57a2a00001e31ba1036f67a8e7f151bf8f977b4919fc559a
Bisakah saya menggantinya /bin/bash
dengan /bin/false
?
bash
security
postgresql
passwd-file
Senyum. Pemburu
sumber
sumber
Jawaban:
Ada sebuah shell karena kami menggunakan PostgreSQL dari baris perintah sebagai pengguna PostgreSQL.
sumber
/bin/bash
agar PostgreSQL saya tetap berjalan dengan benar .. Terima kasih!Postgres berjalan di bawah akun pengguna sistem operasi khusus untuk alasan keamanan. Akun ini dibuat di mesin Anda ketika penginstal berjalan, dan kecuali ditimpa pada baris perintah, itu akan disebut "postgres".
Pada sistem operasi mirip Unix seperti Linux dan Mac OS X, akun tersebut diatur tanpa kata sandi dan pengguna umumnya tidak perlu khawatir lagi. Sumber .
Juga bukan praktik yang baik untuk mengedit file passwd secara manual. Anda harus menggunakan perintah:
sumber
Jika admin server menggunakan
sudo
dan tidak berhati-hati tentang lingkungan apa dan dan umask hasil ini, bekerja pada database dapat membuat file di lokasi yang tidak diinginkan atau dengan izin yang tidak diinginkan.Menetapkan shell untuk pengguna memungkinkan admin untuk login sebagai postgres dan melakukan pekerjaan pada shell pengguna tersebut. Mencari tahu
sudo
sebagai sumber pesan kesalahan server tidak spesifik akan terlalu merepotkan.Jika Anda tidak membutuhkan ini, dan yakin bahwa Anda tidak akan pernah memanggil binari postgres dengan cara yang rawan kesalahan, Anda dapat menghapus shell dengan aman:
Ingatlah bahwa, beign dapat menjadi root, Anda masih bisa menjadi siapa saja, termasuk pengguna tanpa cangkang yang valid:
Sumber resmi:
sumber