Saya memiliki pendekatan yang bahkan lebih ketat untuk memberikan hak akses root di server saya, yang mungkin menarik untuk yang paranoid seperti saya. Berhati-hatilah dengan apa yang Anda lakukan dan urutannya, jika tidak, Anda mungkin berakhir dengan sistem yang tidak dapat Anda akses root.
- Buat grup tertentu
sugroup
, yang anggota akan diizinkan menjadi root dan hanya mengizinkan otentikasi kunci untuk grup ini dengan meletakkan baris berikut di akhir sshd_confid:
Match Group sugroup
PasswordAuthentication no
- Tempatkan perintah
auth required pam_wheel.so group=sugroup
di /etc/pam.d/su
. Mungkin sudah ada di sana dan Anda hanya perlu menghapusnya. Ini menolak akses root ke semua pengguna bukan anggota sugroup
- Pilih kata sandi root yang kuat :)
- Periksa apakah metode otentikasi baru Anda berfungsi, dan hanya jika:
- Tolak login root langsung melalui ssh dengan menggunakan
PermitRootLogin no
di /etc/ssh/sshd_config
.
Dengan menggunakan konfigurasi ini, Anda perlu menggunakan otentikasi kunci dan kata sandi untuk menjadi root. Saya mengkonfigurasi server saya seperti ini, karena saya lebih suka tidak memiliki akses root langsung melalui ssh, terlepas dari metode otentikasi.
service ssh restart
di server dan kemudian pada klien saya mencoba menghubungkan tanpa kunci saya denganssh -o PreferredAuthentications=password -o PubkeyAuthentication=no root@host
dan memang tidak bisa login dengan kata sandi tetapi bisa dengan kunci untuk pengguna root.