Root bisa melakukan apa saja, termasuk hal-hal yang tak Anda maksudkan. Tak ada konfirmasi, tak ada pembatalan, dan sesudahnya catatannya bilang root yang melakukannya - dan itu tak berarti apa-apa kalau kata sandinya dipegang lebih dari satu orang.

Buat seorang pengguna bernama

sudo adduser sara
sudo usermod -aG sudo sara        # Debian and Ubuntu
# sudo usermod -aG wheel sara     # RHEL, Alma and Rocky

Beri ia kunci Anda, lalu uji sebelum menutup apa pun

sudo mkdir -p /home/sara/.ssh
sudo cp ~/.ssh/authorized_keys /home/sara/.ssh/
sudo chown -R sara:sara /home/sara/.ssh
sudo chmod 700 /home/sara/.ssh
sudo chmod 600 /home/sara/.ssh/authorized_keys
Buka terminal kedua dan masuk sebagai pengguna baru itu SEBELUM Anda mematikan root atau menutup sesi pertama. Salah ketik di berkas kunci masih bisa diperbaiki selama Anda masih punya sesi, dan berubah jadi panggilan ke dukungan begitu tak punya.

Baru tutup pintu root

# /etc/ssh/sshd_config
PermitRootLogin no
PasswordAuthentication no

sudo sshd -t && sudo systemctl reload ssh

Apa yang diberikan sudo tapi tidak oleh root

  • Setiap perintah dicatat berikut nama orang yang menjalankannya.
  • Perintah yang berbahaya menuntut lima ketukan tambahan yang disengaja, dan itu cukup untuk menangkap sebagian di antaranya.
  • Akses dicabut dengan mengeluarkan satu akun dari satu grup, bukan dengan mengganti kata sandi yang dipakai bersama semua orang.

sudo tanpa kata sandi, dengan hati-hati

Otomasi butuh sudo tanpa ditanyai. Batasi ia pada perintah yang benar-benar dijalankannya, bukan pada segalanya.

# sudo visudo -f /etc/sudoers.d/deploy
deploy ALL=(root) NOPASSWD: /bin/systemctl reload nginx, /bin/systemctl restart app
Jangan pernah menyunting /etc/sudoers dengan penyunting biasa. visudo memeriksa tata tulisnya sebelum menyimpan, dan berkas sudoers yang rusak mengunci semua orang di luar sudo sekaligus.