Dua program setuid, /usr/bin/bardan /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/foodan /etc/baz/foo. Namun, ini gagal karena file harus, sejauh yang saya tahu, milik root:baratau milik root:baz.
Solusi potensial: Buat grup baru barbazdengan anggota bardan baz. Biarkan foomilik root:barbaz.
Itu terlihat seperti solusi yang cukup berat bagi saya. Apakah tidak ada cara yang lebih rapi dan mudah untuk berbagi file konfigurasi fooantara 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-certgrup, yang merupakan barbazgrup Anda . Standar ini adalah untuk mengatur semua kunci pribadi yang akan dimiliki oleh ssl-certgrup, dan menempatkan UID yang terkait dengan program yang perlu mengaksesnya ke dalam grup itu.
ssl-certyang 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.