Perbedaan antara Su dan Sudo dan Cara Mengkonfigurasi Sudo di Linux

Perbedaan antara Su dan Sudo dan Cara Mengkonfigurasi Sudo di Linux

Sistem Linux banyak diamankan daripada salah satu mitranya. Salah satu cara untuk mengimplementasikan keamanan di Linux adalah kebijakan manajemen pengguna dan izin pengguna dan pengguna normal tidak berwenang untuk melakukan operasi sistem apa pun.

Jika pengguna normal perlu melakukan perubahan sistem apa pun, ia perlu menggunakan salah satusu' atau 'sudo' memerintah.

Linux: sudo su v/s

CATATAN - Artikel ini lebih berlaku untuk Ubuntu distribusi berbasis, tetapi juga berlaku untuk sebagian besar yang populer Linux distribusi.

'su' vs 'sudo'

'su'memaksa Anda untuk berbagi kata sandi root untuk pengguna lain sedangkan 'sudo'Memungkinkan untuk menjalankan perintah sistem tanpa akar kata sandi. 'sudo'Memungkinkan Anda menggunakan kata sandi Anda sendiri untuk menjalankan perintah sistem i.e., mendelegasikan tanggung jawab sistem tanpa akar kata sandi.

Apa itu 'sudo'?

'sudo'adalah biner root setuid, yang mengeksekusi perintah root atas nama pengguna yang berwenang dan pengguna perlu memasukkan kata sandi mereka sendiri untuk menjalankan perintah sistem diikuti oleh 'sudo'.

Siapa yang bisa mengeksekusi 'sudo'?

Kita bisa lari '/usr/sbin/visudo'untuk menambah/menghapus daftar pengguna yang dapat mengeksekusi'sudo'.

$ sudo/usr/sbin/visudo

Bidikan layar '/usr/sbin/visudo'File, terlihat seperti ini:

Itu sudo Daftar terlihat seperti string di bawah ini, secara default:

root all = (all) all

Catatan: Kamu harus akar untuk mengedit /usr/sbin/visudo mengajukan.

Memberikan akses sudo

Dalam banyak situasi, Administrator sistem, Khusus baru di lapangan menemukan string "root all = (all) all“Sebagai templat dan memberikan akses tidak terbatas kepada orang lain yang berpotensi sangat berbahaya.

Mengedit '/usr/sbin/visudo ' File ke sesuatu seperti pola di bawah ini mungkin benar -benar sangat berbahaya, kecuali jika Anda yakin semua pengguna yang terdaftar sepenuhnya.

root all = (all) all adam all = (all) all tom all = (all) all mark all = (all) all

Parameter sudo

Yang dikonfigurasi dengan benar 'sudo'sangat fleksibel dan jumlah perintah yang perlu dijalankan dapat dikonfigurasi secara tepat.

Sintaks dari yang dikonfigurasi 'sudo'Garis adalah:

Perintah user_name machine_name = (efektif_user)

Sintaks di atas dapat dibagi menjadi empat bagian:

  1. Nama belakang: Ini nama 'sudo' pengguna.
  2. Nama mesin: Ini adalah nama host, di mana 'sudo'Perintah itu valid. Berguna saat Anda memiliki banyak mesin host.
  3. (Efektif_user): 'Pengguna efektif' yang diizinkan untuk menjalankan perintah. Kolom ini memungkinkan Anda memungkinkan pengguna untuk menjalankan perintah sistem.
  4. Memerintah: perintah atau satu set perintah yang mungkin dijalankan pengguna.

Disarankan Baca: 10 Konfigurasi Sudoers yang Berguna untuk Mengatur 'Sudo' di Linux

Beberapa situasi, dan mereka yang sesuaisudo' garis:

Q1. Anda memiliki pengguna tanda yang merupakan administrator database. Anda seharusnya memberinya semua akses di server database (beta.database_server.com) hanya, dan tidak pada host mana pun.

Untuk situasi di atas 'sudoLine dapat ditulis sebagai:

Mark Beta.database_server.com = (semua) semua

Q2. Anda memiliki pengguna 'Tom'Yang seharusnya menjalankan perintah sistem sebagai pengguna selain root di server database yang sama, di atas dijelaskan.

Untuk situasi di atas 'sudoLine dapat ditulis sebagai:

Mark Beta.database_server.com = (tom) semua

Q3. Anda memiliki pengguna sudo 'kucing'yang seharusnya menjalankan perintah'anjing' hanya.

Untuk mengimplementasikan situasi di atas, kita dapat menulis 'sudo' sebagai:

Mark Beta.database_server.com = (kucing) anjing

Q4. Bagaimana jika pengguna perlu diberikan beberapa perintah?

Jika jumlah perintah, pengguna seharusnya dijalankan berada di bawah 10, Kita dapat menempatkan semua perintah di samping, dengan ruang putih di antara mereka, seperti yang ditunjukkan di bawah ini:

Mark Beta.database_server.com = (cat)/usr/bin/command1/usr/sbin/command2/usr/sbin/command3… 

Jika daftar perintah ini bervariasi ke rentang, di mana secara harfiah tidak mungkin untuk mengetik setiap perintah secara manual yang perlu kita gunakan alias. Alias! Ya utilitas linux di mana perintah panjang atau daftar perintah dapat disebut sebagai kata kunci yang kecil dan mudah.

Beberapa Alias Contoh, yang dapat digunakan sebagai pengganti masuk 'sudo'File Konfigurasi.

User_alias Admin = Tom, Jerry, Adam User_alias Webmaster = Henry, Mark
Webmasters WebServers = (www) Apache cmnd_alias proc =/bin/kill,/bin/killall,/usr/bin/top

Dimungkinkan untuk menentukan a Grup Sistem, di tempat pengguna, itu milik grup itu yang hanya sufiks '%' seperti di bawah ini:

%Apacheadmin WebServers = (www) Apache

Q5. Bagaimana kalau mengeksekusi asudo'Perintah tanpa memasukkan kata sandi?

Kita bisa mengeksekusi asudo'Perintah tanpa memasukkan kata sandi dengan menggunakan'Nopasswd'Bendera.

Adam all = (all) nopasswd: procs

Di sini pengguna 'Adam'Dapat mengeksekusi semua perintah alias di bawah "Procs”, Tanpa memasukkan kata sandi.

Disarankan Baca: Biarkan sudo menghina Anda saat Anda memasukkan kata sandi yang salah

sudo”Memberi Anda lingkungan yang kuat dan aman dengan banyak fleksibilitas dibandingkan dengan 'su'. Lebih-lebih lagi "sudoKonfigurasi itu mudah. Beberapa distribusi linux memiliki “sudo"Diaktifkan secara default sementara sebagian besar distro hari ini membutuhkan Anda untuk mengaktifkannya sebagai a Tindakan keamanan.

Untuk menambahkan pengguna (bob) ke sudo cukup jalankan perintah di bawah ini sebagai root.

Adduser Bob Sudo 

Itu saja untuk saat ini. Saya akan berada di sini lagi dengan artikel menarik lainnya. Sampai kemudian tetap disini dan terhubung ke tecmint. Jangan lupa memberi kami umpan balik berharga di bagian komentar kami.