GNU/Linux >> Belajar Linux >  >> Linux

Apakah lokasi pusat untuk authorized_keys adalah ide yang bagus?

Solusi 1:

Semua file kunci dapat dipusatkan di direktori yang sama dan tidak dicampur dalam file yang sama.

Cukup atur sshd_config file seperti ini:

AuthorizedKeysFile  /etc/ssh/authorized_keys/%u

Di server Anda:

  • www-data key akan ada di /etc/ssh/authorized_keys/www-data
  • kunci root ada di /etc/ssh/authorized_keys/root

Mengenai hak akses, pengaturan ini diterima oleh sshd:

/etc/ssh/authorized_keys dimiliki oleh root:root dan memiliki mode 755. File kunci dimiliki oleh root:root dan memiliki mode 644.

Mode lain mungkin berfungsi tetapi saya belum mengujinya.

Solusi 2:

Secara umum saya tidak akan melakukan apa yang Anda sarankan. Itu merusak asumsi umum (seperti ~/.ssh/authorized_keys bekerja untuk pengguna Anda, dan memperkenalkan masalah yang telah Anda sebutkan dalam pertanyaan Anda. Jika Anda melihat masalah mencolok sebelum implementasi, berarti solusi Anda tidak ideal.

Dari segi keamanan, menurut saya juga MENYERAH ide agar semua orang berbagi akun layanan:Saat ini hanya Anda, dan Anda tahu bahwa Andalah yang membuat perubahan. Dalam 5 tahun ketika Anda memiliki 5 admin, Anda akan ingin tahu siapa yang mengubah apa, dan menggali log audit untuk melihat siapa yang menggunakan kunci apa saat itu sangat merepotkan.
Anda lebih baik meminta orang masuk sebagai diri mereka sendiri dan menggunakan sudo atau sesuatu yang serupa untuk meningkatkan hak istimewa mereka dan melakukan apa pun yang perlu mereka lakukan.

Jika Anda masih ingin memusatkan kunci SSH, saya sarankan melihat ke dalam sistem penerapan seperti Puppet atau radmind untuk mengelola/mendistribusikan authorized_keys file ke ~user/.ssh/ yang sesuai direktori (atau meretas solusi buatan sendiri yang menempatkan SCP pada tempatnya).
Saat Anda memperluas ke beberapa server, Anda mungkin ingin melihat patch Kunci Publik LDAP untuk versi OpenSSH yang lebih lama (atau AuthorizedKeysCommand direktif dan skrip yang sesuai dalam versi OpenSSH yang lebih baru) juga sehingga Anda dapat memusatkan pengguna dan tidak perlu mendistribusikan kunci mereka ke seluruh jaringan Anda, tetapi itu mungkin cukup jauh untuk Anda.


Linux
  1. Ruang Cadangan Untuk Root Pada Sistem File – Mengapa?

  2. Untuk Apa Inode Baik?

  3. Apa Mnemonic yang Baik Untuk Shell Double Vs. Kutipan Tunggal?

  1. Apa kata sandi root default untuk MySQL 5.7

  2. Di mana .bashrc untuk root?

  3. Aktifkan kata sandi sederhana untuk pengguna root di CentOS

  1. Apakah sebaiknya menggunakan git untuk mengontrol versi file konfigurasi?

  2. Apakah baik membuat partisi terpisah untuk /boot?

  3. Menambahkan entropi nomor acak untuk kunci GPG?