Perbezaan antara su dan sudo dan cara mengkonfigurasi sudo di linux

Perbezaan antara su dan sudo dan cara mengkonfigurasi sudo di linux

Sistem Linux banyak dijamin daripada mana -mana rakan sejawatannya. Salah satu cara untuk melaksanakan keselamatan di Linux ialah dasar pengurusan pengguna dan kebenaran pengguna dan pengguna biasa tidak diberi kuasa untuk melaksanakan operasi sistem.

Sekiranya pengguna biasa perlu melakukan sebarang perubahan sistem yang perlu digunakannya sama ada 'su'Atau'sudo'Perintah.

Linux: SU V/S SUDO

CATATAN - Artikel ini lebih sesuai untuk Ubuntu pengagihan berasaskan, tetapi juga terpakai bagi kebanyakan yang popular Linux pengagihan.

'su' vs 'sudo'

'su'memaksa anda untuk berkongsi kata laluan root kepada pengguna lain sedangkan 'sudo'memungkinkan untuk melaksanakan arahan sistem tanpa akar kata laluan. 'sudo'membolehkan anda menggunakan kata laluan anda sendiri untuk melaksanakan arahan sistem i.e., mewakilkan tanggungjawab sistem tanpa akar kata laluan.

Apa itu 'sudo'?

'sudo'adalah binari akar setuid, yang melaksanakan perintah root bagi pihak pengguna yang diberi kuasa dan pengguna perlu memasukkan kata laluan mereka sendiri untuk melaksanakan perintah sistem diikuti oleh 'sudo'.

Siapa yang boleh melaksanakan 'sudo'?

Kita boleh lari '/usr/sbin/visudo'Untuk menambah/mengeluarkan senarai pengguna yang boleh melaksanakan'sudo'.

$ sudo/usr/sbin/visudo

Pukulan skrin '/usr/sbin/visudo'Fail, kelihatan seperti ini:

The sudo Senarai kelihatan seperti rentetan di bawah, secara lalai:

akar semua = (semua) semua

Catatan: Anda mesti akar untuk mengedit /usr/sbin/visudo fail.

Memberikan akses sudo

Dalam banyak keadaan, Pentadbir sistem, Khususnya baru ke lapangan mencari rentetan "akar semua = (semua) semua"Sebagai templat dan memberikan akses yang tidak terhad kepada orang lain yang mungkin berpotensi sangat berbahaya.

Mengedit '/usr/sbin/visudo ' fail ke sesuatu seperti corak di bawah mungkin sangat berbahaya, melainkan jika anda percaya semua pengguna yang disenaraikan sepenuhnya.

root semua = (semua) semua adam semua = (semua) semua tom semua = (semua) semua tanda semua = (semua) semua

Parameter sudo

Yang dikonfigurasi dengan betul 'sudo'sangat fleksibel dan bilangan arahan yang perlu dijalankan mungkin dikonfigurasikan dengan tepat.

Sintaks yang dikonfigurasikan 'sudo'Barisan adalah:

User_name machine_name = (berkesan_user) perintah

Sintaks di atas boleh dibahagikan kepada empat bahagian:

  1. User_name: Ini adalah nama 'sudo'Pengguna.
  2. Machine_name: Ini adalah nama tuan rumah, di mana 'sudo'Perintah sah. Berguna apabila anda mempunyai banyak mesin tuan rumah.
  3. (Berkesan_user): 'Pengguna berkesan' yang dibenarkan melaksanakan arahan. Lajur ini membolehkan anda membolehkan pengguna melaksanakan arahan sistem.
  4. Perintah: perintah atau satu set arahan pengguna yang boleh dijalankan.

Cadangan Baca: 10 Konfigurasi Sudoer Berguna untuk Menetapkan 'Sudo' di Linux

Beberapa situasi, dan mereka yang sepadan 'sudo'Talian:

Q1. Anda mempunyai pengguna tanda yang merupakan pentadbir pangkalan data. Anda sepatutnya memberikannya semua akses pada pelayan pangkalan data (beta.Database_server.com) sahaja, dan bukan di mana -mana tuan rumah.

Untuk situasi di atas 'sudo'Barisan boleh ditulis sebagai:

Mark Beta.Database_server.com = (semua) semua

S2. Anda mempunyai pengguna 'Tom'Yang sepatutnya melaksanakan perintah sistem sebagai pengguna selain root pada pelayan pangkalan data yang sama, di atas dijelaskan.

Untuk situasi di atas 'sudo'Barisan boleh ditulis sebagai:

Mark Beta.Database_server.com = (tom) semua

Q3. Anda mempunyai pengguna sudo 'kucing'yang sepatutnya menjalankan perintah'anjing'Hanya.

Untuk melaksanakan situasi di atas, kita boleh menulis 'sudo' sebagai:

Mark Beta.Database_server.com = (kucing) anjing

Q4. Bagaimana jika pengguna perlu diberikan beberapa arahan?

Sekiranya bilangan arahan, pengguna sepatutnya dijalankan di bawah 10, Kita boleh meletakkan semua arahan bersama, dengan ruang putih di antara mereka, seperti yang ditunjukkan di bawah:

Mark Beta.Database_server.com = (kucing)/usr/bin/command1/usr/sbin/command2/usr/sbin/command3 .. 

Sekiranya senarai arahan ini berbeza -beza mengikut julat, di mana ia tidak mungkin untuk menaip setiap arahan secara manual kita perlu menggunakan alias. Alias! Ya utiliti linux di mana arahan panjang panjang atau senarai arahan boleh dirujuk sebagai kata kunci yang kecil dan mudah.

Beberapa alias Contoh, yang boleh digunakan sebagai pengganti kemasukan dalam 'sudo'Fail konfigurasi.

User_alias Admins = Tom, Jerry, Adam User_Alias ​​Webmaster = Henry, Mark
Webmasters webservers = (www) apache cmnd_alias proc =/bin/membunuh,/bin/killall,/usr/bin/atas

Adalah mungkin untuk menentukan a Kumpulan sistem, Di tempat pengguna, yang dimiliki oleh kumpulan itu hanya menghuraikan '%' seperti di bawah:

%Apacheadmin Webservers = (www) Apache

S5. Bagaimana dengan melaksanakan 'sudo'Perintah tanpa memasukkan kata laluan?

Kita boleh melaksanakan 'sudo'Perintah tanpa memasukkan kata laluan dengan menggunakan'Nopasswd' bendera.

Adam All = (Semua) NoPasswd: Procs

Di sini pengguna 'Adam'Boleh melaksanakan semua arahan alias di bawah "Procs", Tanpa memasukkan kata laluan.

Cadangan Baca: Biarkan sudo menghina anda apabila anda memasukkan kata laluan yang salah

"sudo"Memberi anda persekitaran yang mantap dan selamat dengan banyak fleksibiliti berbanding dengan 'su'. Lebih -lebih lagi "sudo"Konfigurasi mudah. Beberapa pengagihan Linux mempunyai "sudo"Diaktifkan secara lalai manakala kebanyakan distros hari ini memerlukan anda untuk membolehkannya sebagai Langkah keselamatan.

Untuk menambah pengguna (bob) ke sudo hanya menjalankan arahan di bawah sebagai root.

Adduser Bob Sudo 

Itu sahaja buat masa ini. Saya akan berada di sini lagi dengan artikel lain yang menarik. Sehingga kemudian ditantikan dan disambungkan ke Tecmint. Jangan lupa memberi kami maklum balas berharga anda di bahagian komen kami.