Dua program setuid, /usr/bin/bar
dan /usr/bin/baz
, berbagi satu file konfigurasi foo
. Mode file konfigurasi adalah 0640
, karena menyimpan informasi sensitif. Program yang satu berjalan sebagai bar:bar
(yaitu, sebagai bilah pengguna , bilah kelompok ); yang lain sebagai baz:baz
. Mengubah pengguna bukanlah suatu pilihan, dan bahkan mengubah grup tidak akan lebih disukai.
Saya ingin menautkan file konfigurasi tunggal dengan /etc/bar/foo
dan /etc/baz/foo
. Namun, ini gagal karena file harus, sejauh yang saya tahu, milik root:bar
atau milik root:baz
.
Solusi potensial: Buat grup baru barbaz
dengan anggota bar
dan baz
. Biarkan foo
milik root:barbaz
.
Itu terlihat seperti solusi yang cukup berat bagi saya. Apakah tidak ada cara yang lebih rapi dan mudah untuk berbagi file konfigurasi foo
antara kedua program?
Untuk saat ini, saya mempertahankan dua, salinan file yang identik. Ini bekerja, tetapi jelas salah. Apa yang benar?
Sebagai informasi: Saya memiliki sedikit pengalaman dengan grup Unix dan tidak ada dengan setgid (2).
ssl-cert
grup, yang merupakan barbaz
grup Anda . Standar ini adalah untuk mengatur semua kunci pribadi yang akan dimiliki oleh ssl-cert
grup, dan menempatkan UID yang terkait dengan program yang perlu mengaksesnya ke dalam grup itu.
ssl-cert
yang skrip postinst-nya, saat instalasi, membuat grup yang Anda gunakan. Saya tidak menyadarinya ssl-cert
. Apache2 (diinstal pada host saya) merekomendasikan ssl-cert
. Berbagai paket Exim dan Dovecot tidak, tetapi Postfix (tidak diinstal pada host saya) tergantung pada ssl-cert
. Karena Apache, host saya memang memiliki grup ssl-cert , tetapi grup ini belum memiliki anggota. Terima kasih atas sarannya.