Cara Meninjau Penggunaan Perintah Sudo di Linux

Diterbitkan: 2022-08-24
Laptop Linux menampilkan prompt bash
fatmawati achmad zaenuri/Shutterstock.com

Perintah sudo memberikan kekuatan superuser atau root kepada pengguna. Tidak diragukan lagi Anda memberi mereka pidato "dengan kekuatan besar datang tanggung jawab besar". Inilah cara memeriksa apakah mereka mendengarkan atau tidak.

Perintah sudo

Perintah sudo adalah singkatan dari "pengguna pengganti lakukan." Ini memungkinkan orang yang berwenang menjalankan perintah seolah-olah mereka adalah pengguna lain. Itu dapat mengambil parameter baris perintah, salah satunya adalah nama pengguna yang ingin Anda jalankan perintahnya. Cara paling umum sudo digunakan adalah dengan menghilangkan opsi baris perintah dan menggunakan tindakan default. Ini secara efektif menjalankan perintah sebagai pengguna root.

Untuk menggunakan sudo dengan cara ini memerlukan izin khusus. Hanya yang memiliki hak istimewa yang dapat menggunakan sudo . Saat Anda menginstal distribusi Linux modern, Anda akan diminta untuk menyiapkan kata sandi root yang dapat Anda gunakan dengan sudo . Izin untuk melakukannya diberikan kepada pengguna biasa yang Anda buat selama penginstalan. Ini adalah cara yang lebih disukai untuk menangani akses ke kemampuan pengguna root. Cara lama adalah membuat pengguna root dan masuk sebagai mereka untuk mengelola sistem Anda.

Ini adalah skenario yang berbahaya. Sangat mudah untuk lupa—atau terlalu malas untuk—logout dan masuk kembali sebagai pengguna biasa saat Anda tidak lagi memerlukan hak akses root. Kesalahan apa pun yang Anda buat di jendela terminal sebagai root akan dieksekusi, tidak peduli seberapa drastisnya. Hal-hal yang akan diblokir oleh shell jika pengguna biasa mencoba melakukannya akan berjalan tanpa pertanyaan ketika root memintanya. Menggunakan akun root alih-alih akun biasa juga merupakan risiko keamanan.

Cara Mengontrol Akses Sudo di Linux
TERKAIT Cara Mengontrol Akses Sudo di Linux

Menggunakan sudo memfokuskan pikiran. Anda memasuki perairan berbahaya yang sama, tetapi Anda secara sadar memilih untuk melakukannya, dan semoga berhati-hati. Anda hanya memanggil status pengguna super Anda ketika Anda perlu melakukan sesuatu yang membutuhkannya.

Jika Anda membuka akses root ke pengguna lain, Anda ingin tahu bahwa mereka merawat mereka sama seperti Anda. Anda tidak ingin mereka menjalankan perintah secara sembrono atau spekulatif. Kesehatan dan kesejahteraan instalasi Linux Anda bergantung pada pengguna istimewa yang berperilaku hormat dan bertanggung jawab.

Berikut adalah beberapa cara untuk memantau penggunaan root mereka.

File auth.log

Beberapa distribusi memelihara log otentikasi, dalam file bernama “auth.log.” Dengan munculnya dan penyerapan yang cepat dari systemd , kebutuhan akan file "auth.log" telah dihapus. Daemon systemd-journal mengkonsolidasikan log sistem ke dalam format biner baru dan journalctl menyediakan cara bagi Anda untuk memeriksa atau menginterogasi log.

Jika Anda memiliki file “auth.log” di komputer Linux Anda, file tersebut mungkin berada di direktori “/var/log/”, meskipun pada beberapa distribusi nama file dan jalurnya adalah “/var/log/audit/audit .catatan."

Anda dapat membuka file dalam less seperti ini. Ingatlah untuk menyesuaikan jalur dan nama file agar sesuai dengan distribusi Anda, dan bersiaplah jika Linux Anda bahkan tidak membuat file otentikasi.

Perintah ini berfungsi di Ubuntu 22.04.

 less /var/log/auth.log 

Melihat file /var/log/auth.log dengan less

File log dibuka, dan Anda dapat menggulir file atau menggunakan fasilitas pencarian yang dibangun ke dalam less untuk mencari "sudo."

Isi file /var/log/auth.log ditampilkan dalam less

Bahkan menggunakan fasilitas pencarian less , perlu beberapa saat untuk menemukan entri sudo yang Anda minati.

Katakanlah kita ingin melihat untuk apa pengguna bernama mary menggunakan sudo . Kita dapat mencari file log dengan grep untuk baris dengan "sudo" di dalamnya, dan kemudian menyalurkan output melalui grep lagi dan mencari baris dengan "mary" di dalamnya.

Perhatikan sudo sebelum grep dan sebelum nama file log.

 sudo grep sudo /var/log/auth.log | grep "mari" 

Menggunakan grep untuk menyaring entri yang menyebutkan mary dan sudo

Ini memberi kita baris yang memiliki "sudo" dan "mary" di dalamnya.

Kita dapat melihat bahwa pengguna mary diberi hak sudo pada 15:25, dan pada 15:27 dia membuka file fstab di editor. Itu adalah jenis aktivitas yang pasti membutuhkan penyelaman yang lebih dalam, dimulai dengan mengobrol dengan pengguna.

Menggunakan journalctl

Metode yang disukai pada distribusi Linux berbasis systmd adalah dengan menggunakan perintah journalctl untuk meninjau log sistem.

Jika kita meneruskan nama program ke journalctl , ia akan mencari file log untuk entri yang berisi referensi ke program itu. Karena sudo adalah biner yang terletak di “/usr/bin/sudo”, kita dapat meneruskannya ke journactl . Opsi -e (akhir pager) memberitahu journalctl untuk membuka pager file default. Biasanya ini akan lebih less . Layar secara otomatis digulir ke bawah untuk menampilkan entri terbaru.

 sudo journalctl -e /usr/bin/sudo 

Menggunakan journalctl untuk mencari entri yang menyebutkan sudo

Entri log yang menampilkan sudo terdaftar dalam less.

journalctl menampilkan entri yang berisi sudo di penampil file yang lebih sedikit

Gunakan tombol "Panah Kanan" untuk menggulir ke kanan untuk melihat perintah yang digunakan dengan setiap pemanggilan sudo . (Atau regangkan jendela terminal Anda agar lebih lebar.)

Menggulir ke samping untuk melihat perintah yang digunakan dengan sudo

Dan karena output ditampilkan dalam less , Anda dapat mencari teks seperti nama perintah, nama pengguna, dan cap waktu.

TERKAIT: Cara Menggunakan journalctl untuk Membaca Log Sistem Linux

Menggunakan Utilitas Log GNOME

Lingkungan desktop grafis biasanya menyertakan sarana untuk meninjau log. Kita akan melihat utilitas log GNOME. Untuk mengakses utilitas log, tekan tombol "Super" di sebelah kiri "Spacebar."

Ketik "log" di bidang pencarian. Ikon "Log" muncul.

Klik ikon untuk meluncurkan aplikasi "Log".

Aplikasi Log GNOME

Mengeklik kategori di bilah sisi akan memfilter pesan log menurut jenis pesan. Untuk membuat pilihan yang lebih terperinci, klik kategori “Semua” di bilah sisi, lalu klik ikon kaca pembesar di bilah alat. Masukkan beberapa teks pencarian. Kami akan mencari "sudo."

Mencari entri yang berisi sudo di aplikasi Log GNOME

Daftar acara difilter untuk menampilkan hanya acara yang terkait dengan perintah sudo . Blok abu-abu kecil di akhir setiap baris berisi jumlah entri dalam sesi acara tersebut. Klik sebuah garis untuk memperluasnya.

Blok abu-abu yang berisi jumlah entri dalam sesi sudo

Kami mengklik baris teratas untuk melihat detail dari 24 entri dalam sesi itu.

Detail acara ditampilkan dalam tampilan yang diperluas

Dengan sedikit menggulir, kita dapat melihat kejadian yang sama seperti yang kita lihat saat menggunakan perintah journalctl . Sesi pengeditan pengguna mary yang tidak dapat dijelaskan pada file fstab dengan cepat ditemukan. Kami dapat mencari "mary", tetapi itu akan mencakup entri selain penggunaan sudo .

Tidak Semua Orang Membutuhkan Akses root

Di mana ada persyaratan yang tulus dan masuk akal, memberikan hak istimewa sudo kepada pengguna lain dapat masuk akal. Demikian juga, masuk akal untuk memeriksa penggunaan—atau penyalahgunaan—kekuasaan ini, terutama setelah mereka diberikan.