Mengapa login sebagai root itu buruk?


192

Saya sering menemukan posting di forum atau situs web lain di mana Anda melihat orang-orang bercanda sedemikian rupa tentang menjalankan / masuk sebagai root seolah-olah itu adalah sesuatu yang mengerikan dan semua orang harus mengetahuinya. Namun, tidak banyak yang diungkap oleh pencarian tentang masalah ini.

Ini mungkin diketahui secara luas oleh para ahli Linux, tetapi saya benar-benar tidak tahu mengapa. Saya ingat selalu berjalan sebagai root ketika saya pertama kali mencoba Linux tahun lalu (Redhat dan Mandrake) dan tidak ingat mengalami masalah karena itu.

Sebenarnya ada beberapa distro yang memiliki latar belakang merah terang dengan tanda-tanda peringatan di atasnya sebagai wallpaper untuk pengguna root (SuSe?). Saya masih menggunakan akun "Administrator" untuk penggunaan reguler pada instalasi Windows saya dan belum pernah mengalami masalah di sana.


15
Saya pikir tidak ada masalah dalam menjalankan program sebagai root. Hanya saja, Anda dapat merusak inti OS Anda (bahkan sudoers dapat melakukannya) jika Anda tidak terlalu bijaksana di linux. selain itu saya tidak peduli ada masalah. Tapi itu hanya sudut pandang saya.
Gaurav Butola

1
Pertanyaan terkait di sini .
loevborg

Kesulitan untuk masuk ke mode root bervariasi antara distro. Saya pribadi kesal dengan bagaimana Fedora tidak mengizinkan Anda untuk 'sudo' langsung dari kotak. OpenSUSE dan Ubunto memiliki sudo yang sudah dikonfigurasi sebelumnya ... jadi jika Anda memilih distro yang tepat, Anda dapat meminimalkan gangguan Anda karena tidak bisa mendapatkan akses ke file.
djangofan

4
@GauravButola bahkan jika Anda seorang ahli, itu masih merupakan ide yang buruk jika aplikasi dikompromikan.
strugee

2
@ DaboRoss komentar OP bahwa ia bekerja di windows sebagai administrator; untuk pengalaman (kecil) saya di OS itu, bagi saya sepertinya lebih seperti Ubuntu: itu adalah akun istimewa dalam arti dapat melakukan apa pun yang Anda inginkan, tetapi meminta izin sebelum misalnya menginstal perangkat lunak baru. Jadi mungkin setara dengan menggunakan "administrator" pengguna di windows yang diterjemahkan ke Ubuntu adalah menjalankan pengguna utama dengan sudo yang dikonfigurasikan sehingga tidak meminta izin --- berjalan langsung karena root jauh lebih berbahaya.
Rmano

Jawaban:


154

Itu mengalahkan model keamanan yang sudah ada selama bertahun-tahun. Aplikasi dimaksudkan untuk dijalankan dengan keamanan non-administratif (atau hanya manusia biasa) sehingga Anda harus meningkatkan hak istimewa mereka untuk memodifikasi sistem yang mendasarinya. Misalnya, Anda tidak ingin crash Rhythmbox baru-baru ini untuk menghapus seluruh /usrdirektori Anda karena bug. Atau kerentanan yang baru saja diposting di ProFTPD untuk memungkinkan penyerang mendapatkan shell ROOT.

Ini hanya praktik yang baik pada sistem operasi apa pun untuk menjalankan aplikasi Anda di tingkat pengguna dan menyerahkan tugas administratif kepada pengguna root, dan hanya berdasarkan kebutuhan.


5
... dan itu melindungi Anda dari mengubah kesalahan sepele dalam bencana. Saya adalah pengguna / pengguna Unix sejak tahun 1990, tapi tetap saja saya dapat menyelipkan ruang di tempat yang salah tepatnya melakukan rm -rf tmp/tests/*...
Rmano

9
1.) Sebagian besar orang akan menganggap direktori home mereka lebih penting daripada direktori root, karena yang pertama tidak dapat diinstal ulang. Jadi saya tidak mengerti maksud Anda. 2.) Dalam hal keamanan, Anda benar. Tapi datang dari windows (di mana ada WAY lebih banyak malware di sekitar), di mana saya telah menggunakan akun admin sejak (seperti banyak), saya mengalami kesulitan mengingat ini bahaya nyata. Saya terlalu malas mengetik sudodan kata sandi untuk setiap perintah kedua di Linux. Bukankah pengguna Linux seharusnya malas ?????
phil294

tidak setuju -_-: ~: |
Edgy1

@LazyPower terima kasih telah mengedit jawaban Anda, tapi sekarang saya tidak mengerti lagi. Untuk memodifikasi folder Ubuntu ~ pribadi saya, program tidak memerlukan hak sudo. Rhythmbox BISA menghapus seluruh direktori $ HOME / Music saya! Dan hanya itu yang saya pedulikan! Bagaimana ini terkait dengan izin root?
phil294

1
Itu panggilan yang bagus untuk @Blauhirn. Saya baru saja mengirim edit lanjutan untuk mencerminkan bahwa kami tidak ingin menghapus keseluruhan / usr. Dalam hal melindungi folder $ HOME Anda, tidak ada cadangan yang baik yang dapat membantu Anda. Saya tidak berpikir skenario khusus ini akan terkait dengan keamanan seperti halnya praktik yang baik. Terima kasih lagi untuk info.
lazyPower

79

Hanya satu kata: keamanan.

  1. Anda login sebagai root = semua aplikasi berjalan dengan hak akses root - setiap kerentanan di Firefox, Flash, OpenOffice dll. Sekarang dapat menghancurkan sistem Anda, karena kemungkinan virus sekarang memiliki akses di mana-mana. Ya, hanya ada beberapa virus untuk Ubuntu / Linux, tetapi juga karena keamanan yang baik dan pengguna yang tidak berhak standar.
  2. Ini bukan hanya tentang virus - bug kecil dalam aplikasi dapat menghapus beberapa file sistem atau ...
  3. Ketika Anda login sebagai root, Anda dapat melakukan segalanya - sistem tidak akan bertanya! Apakah Anda ingin memformat disk ini? Oke, cukup satu klik dan selesai, karena Anda root dan Anda tahu apa yang Anda lakukan ...

16
File data, yang semuanya dimiliki oleh akun pengguna saya, jauh lebih berharga bagi saya daripada file sistem. Semua contoh Anda di atas masih menjadi masalah ketika login sebagai pengguna, kecuali bahwa file sistem yang mudah diganti dilindungi.
kbeta

5
@ kbeta Anda berasumsi bahwa Anda berjalan di komputer di mana satu-satunya barang berharga adalah data dan file sistem Anda. Pada kenyataannya linux sering digunakan dalam suatu sistem di mana ada banyak pengguna yang menggunakan sistem secara bersamaan. Dalam hal ini stabilitas sistem (dan karenanya file sistem) jauh lebih berharga dan file pengguna lain juga penting.
Eric Pauley

2
@ kbeta Cukup adil tetapi konfigurasi sistem yang rusak juga dapat menimbulkan risiko bagi data Anda ... dan tentu saja memiliki cadangan akan menjadi ide bagus apakah sistem Anda berisiko saat ini atau tidak. Bekerja dengan cadangan saat ini dengan rencana pemulihan bencana akan lebih baik.
Pryftan

47

Menjalankan sebagai root buruk karena:

  1. Kebodohan: Tidak ada yang mencegah Anda melakukan sesuatu yang bodoh. Jika Anda mencoba mengubah sistem dengan cara yang bisa berbahaya, Anda perlu melakukan sudo yang cukup menjamin jeda saat Anda memasukkan kata sandi agar Anda sadar bahwa Anda akan membuat kemungkinan perubahan besar / mahal.
  2. Keamanan: Telah disebutkan beberapa kali dalam pertanyaan ini, tetapi pada dasarnya itu adalah hal yang sama, lebih sulit untuk diretas jika Anda tidak tahu akun login pengguna admin. root berarti Anda sudah memiliki setengah dari set mandat admin yang berfungsi.
  3. Anda tidak benar-benar membutuhkannya: Jika Anda perlu menjalankan beberapa perintah sebagai root dan Anda merasa jengkel karena harus memasukkan kata sandi beberapa kali ketika sudo telah kedaluwarsa, yang perlu Anda lakukan hanyalah sudo -idan sekarang root. Ingin menjalankan beberapa perintah menggunakan pipa? Kemudian gunakan sudo sh -c "comand1 | command2".
  4. Anda selalu dapat menggunakannya di konsol pemulihan: Konsol pemulihan memungkinkan Anda untuk mencoba dan memulihkan dari melakukan sesuatu yang bodoh atau memperbaiki masalah yang disebabkan oleh aplikasi (yang masih harus dijalankan sebagai sudo :)) Ubuntu tidak memiliki kata sandi untuk akun root dalam kasus ini tetapi Anda dapat mencari secara online untuk mengubahnya, ini akan mempersulit siapa pun yang memiliki akses fisik ke kotak Anda untuk dapat membahayakan.

Alasan mengapa Anda tidak dapat menemukan informasi tentang mengapa itu buruk adalah karena, well, ada terlalu banyak data di internet :) dan banyak orang yang telah menggunakan Linux sejak lama berpikir seperti Anda. Cara berpikir tentang akun root ini cukup baru (satu dekade mungkin?) Dan banyak orang masih merasa terganggu dengan harus menggunakan sudo. Terutama jika mereka bekerja pada server yang berarti mereka masuk dengan maksud untuk membuat perubahan sistem. Mungkin dibawa dari pengalaman buruk sebelumnya dan standar keamanan yang sebagian besar sysadmin tahu lebih baik tetapi mereka masih tidak menyukainya :).


"Mungkin satu dekade?" Jauh lebih lama dari itu bahkan sejak Anda menulis ini. Bahkan tanpa sudo ada su untuk tidak menyebutkan misalnya grup roda (misalnya). Pemisahan hak istimewa selalu penting dan selalu penting dan akan selalu penting. Otoh tidak banyak orang menggunakan OS berbasis Unix yang bertahun-tahun lalu dan banyak yang memang terbiasa selalu menjadi administrator.
Pryftan

36

Ini pertanyaan yang bagus. Saya pikir jawabannya sedikit berbeda tergantung pada apakah Anda berbicara tentang server atau instalasi desktop.

Di desktop, tidak biasa menggunakan rootakun. Bahkan, Ubuntu dikirimkan dengan akses root dinonaktifkan. Semua perubahan yang membutuhkan hak pengguna super dilakukan melalui sudodan grafisnya serumpun gksudodan kdesudo. Namun, mengingat mudahnya membuat rootkata sandi, mengapa orang tidak melakukannya?

Salah satu alasannya adalah memberi Anda lapisan keamanan tambahan. Jika Anda menjalankan suatu program rootdan kelemahan keamanan dieksploitasi, penyerang memiliki akses ke semua data dan dapat langsung mengendalikan perangkat keras. Sebagai contoh, itu mungkin menginstal trojan atau key-logger ke dalam kernel Anda. Namun dalam praktiknya, serangan dapat melakukan sejumlah besar kerusakan bahkan tanpa hak pengguna super. Lagipula, semua data pengguna - termasuk dokumen dan kata sandi yang tersimpan - dapat diakses tanpa akses root.

Poin yang lebih valid, pada sistem pengguna tunggal, adalah bahwa pengguna dicegah agar sistem tidak dapat digunakan secara tidak sengaja. Jika pengguna secara tidak sengaja mengeluarkan perintah yang menghapus semua file, mereka masih dapat mem-boot sistem, bahkan jika data hilang.

Selain itu, sebagian besar aplikasi yang menghadapi pengguna (X11) saat ini dibangun dengan asumsi bahwa mereka dijalankan sebagai akun pengguna biasa dan tanpa hak administrator. Dengan demikian beberapa program mungkin berperilaku salah ketika dijalankan sebagai root.

Pada sistem multi-pengguna dengan hanya akses shell non-grafis, banyak dari alasan ini tidak berlaku. Namun, Ubuntu masih cukup default untuk rootakun yang tidak dapat diakses . Untuk satu hal, ada perbedaan nyata antara mendapatkan akses ke akun pengguna (dengan sudohak) melalui lubang keamanan dan mendapatkan akses ke root, karena dalam kasus pertama mengganggu pengguna lain akan membutuhkan berjalan sudodan masih akan meminta kata sandi akun sebagai langkah keamanan tambahan. Untuk yang lain, berguna untuk melakukan banyak tugas administratif dari akun pengguna dan hanya meminta sudoketika hak pengguna super benar-benar diperlukan. Jadi ketika menginstal program dari sumber, disarankan untuk membangun sumber - berjalan configuredanmake- di dalam direktori pengguna dan hanya menggunakan sudo make installpada langkah terakhir. Sekali lagi ini membuatnya lebih sulit untuk menembak diri sendiri (dan pengguna lain dari sistem multi-pengguna) di kaki, dan itu mengurangi kemungkinan membangun skrip yang mendatangkan malapetaka dengan sistem. Jadi, bahkan pada server, ada baiknya tetap menggunakan administrasi berbasis sudo Ubuntu .


2
he will still be able to boot the system, even if the data will be lost.- Apa gunanya ini? Jika data saya hilang, data saya hilang dan hanya itu. Perangkat lunak sistem Linux dapat diinstal ulang jika dihapus, mengapa saya harus peduli tentang kehilangan data dalam direktori tersebut? Di sisi lain, kehilangan data dalam ~buruk. Dan sudotidak melindungi saya dari itu.
phil294

2
Praktik baik lainnya adalah membuat cadangan data penting. Jika Anda menghapus direktori home, Anda masih bisa boot dan cukup menyalin file dari cadangan. Atau, katakanlah Anda memiliki laptop kecil untuk bepergian. Mungkin ada beberapa foto, catatan perjalanan, jadwal kereta api - tetapi tidak ada yang terlalu penting. Jika Anda menghapus file pengguna, Anda masih dapat melakukan booting sistem dan check-in untuk penerbangan Anda atau mencari tahu bus mana yang akan diambil.
Richlv

@Blauhirn Backups. Dan ada kemungkinan pemulihan bahkan jika terlihat suram.
Pryftan

34

Salah satu alasan untuk tidak menjalankan sebagai root yang belum (sejauh ini) diidentifikasi oleh jawaban lain adalah keterlacakan. Ini mungkin kurang penting pada mesin yang terutama mesin pengguna tunggal (desktop atau laptop Anda), tetapi pada mesin server, jika seseorang masuk sebagai root, Anda tidak tahu siapa yang harus disalahkan atas tindakan yang diambil. Oleh karena itu, sebagian besar organisasi profesional dengan banyak sistem dan beberapa administrator yang memerlukan roothak istimewa mengharuskan orang untuk masuk menggunakan ID pengguna (dan kata sandi) mereka sendiri, dan kemudian menggunakan sudoatau program serupa untuk beroperasi dengan roothak istimewa saat diperlukan.

Jika tidak, alasan utama untuk tidak berjalan sebagai root adalah:

  • Minimalkan risiko kerusakan akibat kecelakaan. Jika Anda menjalankannya rm -fr / home/me/my-subdirsebagai root, maka Anda baru saja secara dramatis menghilangkan segala yang penting dari mesin Anda karena ruang tersebut setelah slash (pertama) - karena hal-hal yang berjalan lebih dulu adalah hal-hal yang ditambahkan terlebih dahulu - hal-hal kecil seperti kernel, yang /bindan /etcdirektori. Unix menjadi kesal jika Anda kehilangan itu.

  • Minimalkan risiko kerusakan dari situs luar yang berbahaya. Jika Anda menjelajah sebagai root, Anda lebih rentan terhadap unduhan materi berbahaya oleh drive-by.

Saya menggunakan MacOS X lebih dari Ubuntu, tetapi di sana, root dinonaktifkan secara default, dan masih ada di mesin saya. Saya secara rutin memperbarui kernel dan operasi serupa lainnya - menggunakan sudo(di belakang layar). Teknik serupa berlaku untuk Linux secara umum.

Pada dasarnya, Anda hanya boleh menggunakan hak istimewa yang sangat kuat rootuntuk periode kerja yang disingkat untuk menghindari risiko kesalahan.


1
Ini bukan tentang menyalahkan seseorang, ini tentang bisa mengetahui mengapa seseorang melakukan perubahan.
jippie

2
@ jippie: Maksud saya 'menyalahkan' dengan cara yang sama seperti VCS melacak yang melakukan apa sehingga orang yang tepat dikaitkan dengan tanggung jawab untuk perubahan, baik atau buruk, dan salah satu nama untuk perintah yang melakukan pelacakan itu adalah 'menyalahkan'. Ini memberi Anda seseorang untuk diajak bicara untuk mencari tahu mengapa sesuatu terjadi. Itu tidak selalu 'salah' (meskipun sering kali menyedihkan, alasan untuk perlu tahu adalah karena sesuatu tidak berjalan sesuai harapan dan ada kebutuhan untuk tahu mengapa tidak). Jadi, ini adalah tentang akuntabilitas dan keterlacakan daripada menyalahkan orang itu atas apa yang mereka lakukan.
Jonathan Leffler

Di Ubuntu, perintah seperti rm -fr / home/me/my-subdirtidak benar-benar mencoba untuk menghapus secara rekursif /, karena /diperlakukan secara khusus untuk menjaga dari kesalahan tersebut. Lihat dokumentasi opsi --preserve-rootdan untuk detailnya. Tetapi prinsipnya adalah suara: kesalahan ketik satu karakter memang ada yang menghasilkan menghapus segalanya. Misalnya, jika Anda bermaksud menghapus semua yang ada di direktori saat ini dengan menjalankan , tetapi Anda tidak sengaja meletakkan sebelumnya , itu akan menjadi buruk. --no-preserve-rootman rmrmrm -r */*
Eliah Kagan

@ EliahKagan Tetapi jika Anda melakukan ... chown -R nobody:nobody ../dari mengatakan / etc itu akan melindungi Anda? Jika Anda melakukannya pada / etc itu akan menyebabkan Anda dunia yang terluka. Demikian pula .*ketika menjalankan perintah secara rekursif.
Pryftan

21

TL; DR: Lakukan hal-hal sebagai root hanya saat Anda harus. sudomembuat ini sangat mudah. Jika Anda mengaktifkan login root, Anda masih dapat mengikuti aturan ini, Anda hanya perlu berhati-hati untuk melakukannya. Meskipun mengaktifkan login root sebenarnya tidak aman jika dilakukan dengan benar, Anda tidak perlu mengaktifkan login root karena Anda sudah melakukannya sudo.

Sebenarnya ada dua pertanyaan terkait di sini.

  • Mengapa masuk log sebagai root untuk penggunaan komputer sehari-hari seseorang (browsing web, email, pengolah kata, game, dll.) Itu buruk?
  • Mengapa Ubuntu default untuk menonaktifkan login root sama sekali dan menggunakan sudodan polkit untuk memungkinkan administrator untuk menjalankan perintah tertentu sebagai root?

Mengapa tidak menjalankan semuanya sebagai root, sepanjang waktu?

Sebagian besar jawaban lain membahas hal ini. Turun ke:

  1. Jika Anda menggunakan kekuatan root untuk tugas-tugas yang tidak memerlukannya, dan Anda akhirnya melakukan sesuatu yang tidak ingin Anda lakukan, Anda bisa mengubah atau merusak sistem Anda dengan cara yang tidak Anda inginkan.
  2. Jika Anda menjalankan program sebagai root ketika Anda tidak perlu, dan itu berakhir melakukan sesuatu yang Anda tidak bermaksud untuk itu untuk melakukan - misalnya, karena kerentanan keamanan atau bug lain - itu bisa mengubah atau bahaya sistem Anda dengan cara yang tidak Anda inginkan.

Memang benar bahwa bahkan tanpa melakukan hal-hal sebagai root, Anda dapat menyebabkan kerusakan. Misalnya, Anda dapat menghapus semua file di direktori home Anda sendiri, yang biasanya mencakup semua dokumen Anda, tanpa berjalan sebagai root! (Semoga Anda memiliki cadangan.)

Tentu saja, sebagai root, ada cara tambahan untuk secara tidak sengaja menghancurkan data yang sama. Misalnya, Anda bisa menentukan of=argumen yang salah pada ddperintah dan menulis data mentah di atas file Anda (yang membuatnya lebih mudah untuk pulih daripada jika Anda hanya menghapusnya).

Jika Anda satu-satunya orang yang menggunakan komputer Anda, kerusakan yang dapat Anda lakukan hanya sebagai root mungkin tidak benar-benar lebih tinggi daripada kerusakan yang dapat Anda lakukan dengan hak istimewa pengguna biasa. Tapi itu masih belum ada alasan untuk memperluas risiko Anda dengan memasukkan cara - cara tambahan mengacaukan sistem Ubuntu Anda.

Jika berjalan dengan akun pengguna non-root mencegah Anda melakukan kontrol atas komputer Anda sendiri, maka ini tentu saja merupakan tradeoff yang buruk . Tetapi tidak - kapan saja Anda benar-benar ingin melakukan tindakan sebagai root, Anda dapat melakukannya dengan sudodan metode lainnya .

Mengapa tidak memungkinkan untuk masuk sebagai root?

Gagasan bahwa kemampuan untuk login sebagai root pada dasarnya tidak aman adalah mitos. Beberapa sistem memiliki akun root diaktifkan secara default; sistem lain menggunakan sudosecara default, dan beberapa dikonfigurasikan dengan keduanya.

  • Sebagai contoh, OpenBSD , yang secara luas dan masuk akal dianggap sebagai OS tujuan umum paling aman di dunia, dikirimkan dengan akun root yang diaktifkan untuk login lokal berbasis kata sandi.
  • OS terhormat lainnya yang melakukan ini termasuk RHEL , CentOS , dan Fedora .
  • Debian (dari mana Ubuntu berasal ) memiliki pengguna memutuskan pendekatan mana yang akan dikonfigurasi, selama instalasi sistem.

Tidak salah secara objektif memiliki sistem di mana akun root diaktifkan, asalkan

  1. Anda masih hanya menggunakannya saat Anda benar-benar perlu, dan
  2. Anda membatasi akses ke sana dengan tepat.

Seringkali pemula bertanya bagaimana cara mengaktifkan akun root di Ubuntu. Kita seharusnya tidak menyembunyikan informasi ini dari mereka, tetapi biasanya ketika orang bertanya ini karena mereka berada di bawah kesan keliru bahwa mereka perlu mengaktifkan akun root. Sebenarnya, ini hampir tidak pernah diperlukan, jadi ketika menjawab pertanyaan seperti itu, penting kami menjelaskannya. Mengaktifkan akun root juga membuatnya mudah terlena dan melakukan tindakan sebagai root yang tidak memerlukan hak akses root. Tetapi ini tidak berarti mengaktifkan akun root dengan sendirinya tidak aman.

sudomendorong dan membantu pengguna menjalankan perintah sebagai root hanya saat mereka perlu. Untuk menjalankan perintah sebagai root, ketik sudo, spasi, lalu perintah. Ini sangat nyaman, dan banyak pengguna dari semua tingkat keterampilan lebih suka pendekatan ini.

Singkatnya, Anda tidak perlu mengaktifkan login root karena sudah sudo. Tetapi selama Anda menggunakannya hanya untuk tugas administratif yang memerlukannya, ini sama amannya untuk mengaktifkan dan masuk sebagai root, asalkan hanya dengan cara-cara ini :

  • Secara lokal, dari konsol virtual non-grafis .
  • Dengan superintah itu, saat login dari akun lain.

Namun, risiko keamanan tambahan yang besar muncul jika Anda masuk sebagai root dengan cara-cara ini:

  • Secara grafis. Saat Anda masuk secara grafis, banyak hal berjalan untuk menyediakan antarmuka grafis, dan Anda akan menjalankan lebih banyak aplikasi sebagai root untuk menggunakan antarmuka itu untuk apa saja. Ini bertentangan dengan prinsip hanya menjalankan program sebagai root yang benar-benar membutuhkan hak akses root. Beberapa program ini mungkin mengandung bug, termasuk bug keamanan.

    Selain itu, ada alasan non-keamanan untuk menghindari ini. Masuk secara grafis sebagai root tidak didukung dengan baik - seperti yang disebutkan oleh loevborg , pengembang lingkungan desktop dan aplikasi grafis tidak sering mengujinya sebagai root. Bahkan jika mereka melakukannya, masuk ke lingkungan desktop grafis sebagai root tidak mendapatkan pengujian alfa dan beta dunia nyata oleh pengguna, karena hampir tidak ada yang mencobanya (untuk alasan keamanan yang dijelaskan di atas).

    Jika Anda perlu menjalankan aplikasi grafis tertentu sebagai root, Anda dapat menggunakangksudo atau sudo -H. Ini menjalankan jauh lebih sedikit program sebagai root daripada jika Anda benar-benar masuk secara grafis dengan akun root.

  • Jarak jauh. The rootakun berlaku bisa melakukan apa saja, dan memiliki nama yang sama di hampir setiap sistem Unix-seperti. Dengan masuk sebagai root melalui sshatau mekanisme jarak jauh lainnya, atau bahkan dengan mengkonfigurasi layanan jarak jauh untuk memungkinkannya , Anda membuatnya lebih mudah untuk penyusup, termasuk skrip otomatis dan malware yang berjalan di botnet, untuk mendapatkan akses melalui kekuatan kasar, serangan kamus (dan mungkin beberapa bug keamanan).

    Boleh dibilang risikonya tidak terlalu tinggi jika Anda hanya mengizinkan login root berbasis kunci , dan bukan kata sandi .

Secara default di Ubuntu, baik login root grafis atau login jarak jauh melalui SSH tidak diaktifkan, bahkan jika Anda mengaktifkan login sebagai root . Artinya, bahkan jika Anda mengaktifkan login root, itu masih hanya diaktifkan dengan cara yang cukup aman.

  • Jika Anda menjalankan server ssh di Ubuntu dan belum berubah /etc/sshd/ssh_config, itu akan berisi baris PermitRootLogin without-password. Ini menonaktifkan login root berbasis kata sandi, tetapi memungkinkan login berbasis kunci. Namun, tidak ada kunci yang dikonfigurasi secara default, jadi kecuali Anda sudah mengaturnya, itu juga tidak akan berfungsi. Selain itu, login root jarak jauh berbasis kunci jauh lebih buruk daripada login root jarak jauh berbasis kata sandi, sebagian karena tidak membuat risiko serangan kasar dan serangan kamus.
  • Meskipun defaultnya harus melindungi Anda, saya pikir itu masih merupakan ide bagus untuk memeriksa konfigurasi ssh Anda, jika Anda akan mengaktifkan akun root. Dan jika Anda menjalankan layanan lain yang menyediakan login jarak jauh, seperti ftp, Anda harus memeriksanya juga.

Kesimpulannya:

  • Lakukan hal-hal sebagai root hanya saat Anda perlu; sudomembantu Anda melakukan itu, sambil tetap memberi Anda kekuatan penuh root kapan pun Anda inginkan.
  • Jika Anda memahami cara kerja root dan bahaya menggunakannya secara berlebihan, mengaktifkan akun root tidak benar-benar bermasalah dari perspektif keamanan.
  • Tetapi jika Anda mengerti itu, Anda juga tahu bahwa Anda hampir pasti tidak perlu mengaktifkan akun root .

Untuk informasi lebih lanjut tentang root dan sudo, termasuk beberapa manfaat tambahan sudoyang belum saya bahas di sini, saya sangat merekomendasikan RootSudo di wiki bantuan Ubuntu.


'Jika Anda satu-satunya orang yang menggunakan komputer Anda, kerusakan yang dapat Anda lakukan hanya karena root mungkin tidak benar-benar lebih tinggi daripada kerusakan yang dapat Anda lakukan dengan hak istimewa pengguna biasa. Tapi itu masih belum ada alasan untuk memperluas risiko Anda 'Belum lagi itu menempatkan Anda dalam kebiasaan itu ... maka Anda pergi ke sistem lain dan apa yang terjadi? Sama dengan ide absurd membuat orang terbiasa rm -idengan cara shell alias. Anda pergi ke sistem yang tidak memiliki itu dan lalu apa? Bayi duduk pengguna dari kesalahan seperti ini tidak pernah merupakan ide yang baik ketika Anda menganggap manusia adalah makhluk yang sangat banyak kebiasaan.
Pryftan

13

Akun root dinonaktifkan secara default - artinya ada tetapi tidak dapat digunakan (kecuali dalam mode pemulihan). Ini berarti bahwa penyerang mengetahui akun root Anda, tetapi tidak dapat menggunakannya meskipun ia memiliki kata sandi root. Dengan demikian, penyerang harus menebak nama pengguna yang memiliki hak administrator, DAN kata sandi pengguna tersebut (yang jauh lebih sulit daripada hanya mencoba mencari tahu kata sandi root). Di XP jika Anda memiliki Konsol Pemulihan yang diinstal, siapa pun yang memiliki akses fisik ke kotak Anda dapat melakukan booting ke dalamnya (RC) - tidak perlu kata sandi. Sama seperti Mode Pemulihan di Ubuntu.

Di Ubuntu, ketika mereka mengatakan bahwa root dinonaktifkan - yang sebenarnya dimaksudkan adalah bahwa akun itu terkunci. Akun dikunci dengan mengubah kata sandi ke nilai yang tidak cocok dengan nilai terenkripsi yang mungkin. Ini secara efektif mencegah siapa pun untuk dapat login sebagai root - karena tidak mungkin mereka dapat memasukkan kata sandi. Karena masih ada waktu di mana akses root diperlukan - kernel Ubuntu telah dimodifikasi untuk mengizinkan login lokal root hanya dalam mode pengguna tunggal.

Lihat juga halaman ini


Um Jangan tersinggung tetapi Anda mungkin ingin membaca judul pertanyaan dan kemudian membaca detailnya lagi.
Mussnoon

3
Ini sangat membantu - dan ini berhubungan dengan pertanyaan. Ini berkaitan dengan implikasi keamanan dari mengaktifkan akun, prasyarat untuk berjalan sebagai root.
Stefano Palazzo

1
@Stefano Palazzo: Walaupun informasi yang diberikan mungkin berguna, saya dengan tulus tidak dapat melihat di bagian mana jawaban untuk apa yang perlu saya ketahui. Saya sudah membacanya berulang kali.
Mussnoon

Tidak mencegah orang untuk masuk ke root.
Chad

12

Seperti mempersenjatai seorang anak kecil dengan AK47, sementara dia bisa dengan senang hati bermain dengan pistol paintball-nya. ;)

Maksud saya itu salah karena Anda dan aplikasi Anda akan memiliki lebih banyak hak istimewa daripada yang mereka butuhkan dan saat itulah hal - hal dapat dan kadang - kadang salah :(


5
analogi yang lebih pintar. (^_^)
kit.yang

2
Ini analogi yang sepenuhnya tidak pantas. Seorang anak dengan AK47 dapat bunuh diri dan orang lain. Pengguna unix dengan akses root paling banyak dapat membuat sistem mereka sementara tidak bisa dioperasikan. (Satu selalu dapat menginstal ulang os dan memulihkan operasi).
kbeta

@ KBeta Anda benar, analogi saya agak tidak proporsional dan berlebihan. tolong lanjutkan.
omeid

@ KBeta analoginya sesuai. risikonya bukan sistem yang tidak bisa dioperasi, tetapi data dan kehilangan privasi. pengguna root dapat menghapus data. silakan gunakan fantasi Anda untuk mengaitkan pembunuhan dan kehilangan data.
n611x007

11

Pertanyaan yang sangat bagus ... Biarkan saya menjawabnya dari sudut pandang praktis:

Ketika saya mulai menggunakan Linux, yang lebih dari 10 tahun yang lalu, distribusi utama tidak beriklan menggunakan akun non-root sebanyak hari ini. Karena saya terbiasa dengan Windows, saya juga tidak melihat gunanya menggunakan akun pengguna yang dibatasi. Terutama karena saya harus sering memasukkan "su" - sudo tidak begitu populer saat itu. ;-) Jadi saya selalu login sebagai root karena saya memiliki banyak perawatan yang harus dilakukan untuk mendapatkan sistem saya terkonfigurasi dengan baik. Tapi coba tebak, sistem baru yang diinstal menjadi cepat sangat tidak stabil.

Satu masalah konkret misalnya: Saya tidak punya banyak ruang harddisk yang disediakan untuk Linux, jadi itu terjadi pada saya beberapa kali saya memiliki 0 byte tersisa di partisi saya. Mungkin saya tidak sepenuhnya tepat karena saya tidak tahu mekanisme yang tepat, tetapi ketika Anda mengisi disk dengan akun non-root selalu ada beberapa kilobyte tersisa. Tetapi jika Anda benar-benar memiliki 0 byte tersisa, sistem Anda membuat kesalahan aneh dan Anda mungkin berakhir dengan beberapa kesulitan untuk memperbaiki kerusakan pada sistem Anda karena ada banyak perangkat lunak sistem yang berjalan di latar belakang ...

Hal lain adalah: Pembagian antara root dan non-root membuat sistem Anda terorganisir dengan baik. Sebagai pengguna root, Anda mungkin tergoda untuk tidak menginstal aplikasi baru dengan bersih yang membuat Anda memiliki sistem yang kotor dan sulit dirawat.

Tetapi hal baiknya: Distribusi modern melakukan sebagian besar tugas administrasi untuk Anda, jadi jarang Anda harus mengutak-atik sistem Linux Anda dengan akun root. Memasukkan kata sandi dari waktu ke waktu sudah cukup, sisanya dilakukan oleh skrip distributor.

Tetapi saya ragu bahwa Anda tidak memiliki masalah pada sistem Windows Anda dengan itu jika Anda menggunakan 95 oder 98. (Setidaknya saya memiliki masalah dengan itu ...) Karena kurangnya pemisahan yang jelas antara Administrator dan pengguna biasa "tradisional "Aplikasi Windows menganggap mereka dapat melakukan apa saja. Misalnya menginstal Spyware jika mereka menyukainya, bahkan tanpa memberi tahu Anda. Microsoft terlibat dalam masalah itu ketika merilis Vista. (Efektif menerapkan mekanisme sudo.) Jadi orang mendapat dialog yang sangat menjengkelkan mengatakan "Anda tidak bisa melakukan itu". Untuk beberapa perangkat lunak yang tidak sesuai dengan Vista, Anda memerlukan beberapa peretas kotor untuk memasangnya, bahkan saat Administrator ...


"Mungkin aku tidak sepenuhnya tepat karena aku tidak tahu mekanisme pastinya, tetapi ketika kamu mengisi disk dengan akun non-root selalu ada beberapa kilobyte tersisa." Mungkin Anda merujuk ke direktori yang hilang + ditemukan? Jika demikian, Anda dapat sebagai administrator menentukan jumlah yang harus dipesan. Saya ingin mengatakan standar tipikal adalah 5% tapi saya bisa saja salah dan itu bisa diubah. Ini cukup berguna meskipun walaupun jarang dibutuhkan. Rupanya ada lebih banyak di sini (saya ingat dari tahun-tahun penggunaan saya): unix.stackexchange.com/questions/18154/…
Pryftan

Tampaknya itu tidak terbatas pada sistem file ext: unix.stackexchange.com/questions/7950/…
Philip

Ya. Saya tahu itu :) Tapi terima kasih telah menambahkan itu juga.
Pryftan

10

Ada banyak aspek di balik pendekatan ini. Beberapa dari mereka adalah:

  • Root semuanya kuat.
  • Dalam sistem Unix dan Unix-like, hak istimewa administrasi sistem semuanya atau tidak sama sekali. Seorang pengguna baik memiliki akses root atau tidak, dan akses root menyiratkan kontrol penuh mesin. Jika mesin tersebut digunakan oleh lebih dari satu orang, atau root memiliki akses ke sistem lain atau file pengguna, lebih dapat diterima untuk memberikan sebagian hak istimewa root root kepada sebagian pengguna.

  • Pengguna root dapat menyembunyikan semua tindakan mereka.
  • sudo mencatat setiap perintah yang dijalankan melalui sudo. Memiliki catatan tentang apa yang dilakukan dengan sudo membantu kami mendiagnosis masalah dengan sistem / proses individual dan masalah konfigurasi umum, serta membantu kami mengidentifikasi perbaikan yang diperlukan.

  • Kata sandi root memberi Anda akses ke perintah apa pun di sistem.
  • Melalui file config-nya, sudo dapat memberikan akses root pengguna untuk serangkaian perintah tertentu. Ini juga menghindari efek "semua atau tidak sama sekali", memungkinkan kami untuk memberi pengguna lebih banyak kontrol atas mesin mereka dan membantu diri mereka sendiri dari masalah umum.

    di sini adalah artikel yang bagus: http://cf.stanford.edu/policy/root


    Tetapi ketika Anda memiliki sudo penuh, Anda dapat sudo su dan menyembunyikan tindakan Anda.
    Wilhelm Erasmus

    8
    rm /*
    

    Katakanlah Anda telah membersihkan area administrasi. Anda bosan dengan kata sandi, begitu juga Anda sudo su. Anda terganggu hanya untuk kedua dan lupa cd /. Lalu kamu rm *. Saya sudah melakukannya. Anda bisa mendapatkan semuanya kembali, tetapi ini adalah PITA. Oh, dan itu juga turun /media!


    10
    Kami selalu mengeluh tentang PC kami yang terlalu lambat, tetapi seolah-olah mereka dioptimalkan untuk menjalankan rm seperti itu secepat mungkin.
    jippie

    1
    @ jippie Karena RM hanya menghancurkan tautan inode ke file. Tidak butuh waktu lama untuk menghapus tautan dan menandai spasi sebagai "bebas".
    Kaz Wolfe

    @ Jippie, ini seharusnya memiliki build dalam hitungan mundur 10 detik
    Semoga

    7

    Mengapa tidak memiliki login root?

    Meskipun Anda dapat membuat kata sandi untuk akun pengguna super yang memungkinkan Anda masuk sebagai root, perlu disebutkan bahwa ini bukan cara "Ubuntu" dalam melakukan sesuatu. Ubuntu secara khusus memilih untuk tidak memberikan login root dan kata sandi secara default karena suatu alasan. Sebagai gantinya, instalasi Ubuntu default akan digunakan sudo.

    Sudo adalah alternatif untuk memberi orang-orang kata sandi root untuk melakukan tugas-tugas pengguna super. Secara default Ubuntu menginstal orang yang menginstal OS diberi izin "sudo" secara default.

    Siapa saja dengan izin "sudo" dapat melakukan sesuatu "sebagai superuser" dengan menunggu sudoperintah mereka. Misalnya, untuk menjalankan apt-get dist-upgradesebagai pengguna super, Anda dapat menggunakan:

    sudo apt-get dist-upgrade
    

    Manfaat dari pendekatan sudo

    • Dengan sudo, Anda memilih di muka mana pengguna memiliki akses sudo. Tidak perlu bagi mereka untuk mengingat kata sandi root, karena mereka menggunakan kata sandi mereka sendiri.

    • Jika Anda memiliki banyak pengguna, Anda dapat mencabut akses pengguna super seseorang hanya dengan menghapus izin sudo mereka, tanpa perlu mengubah kata sandi root dan memberi tahu semua orang kata sandi baru.

    • Anda bahkan dapat memilih perintah mana yang diizinkan dilakukan pengguna dengan menggunakan sudo dan perintah mana yang dilarang untuk pengguna itu.

    • Dan terakhir, jika ada pelanggaran keamanan, dalam beberapa kasus dapat meninggalkan jejak audit yang lebih baik yang menunjukkan akun pengguna mana yang dikompromikan.

    Sudo membuatnya lebih mudah untuk melakukan perintah tunggal dengan hak superuser. Dengan login root, Anda secara permanen tetap berada di shell superuser yang harus keluar menggunakan exitatau logout. Hal ini dapat menyebabkan orang yang tinggal di shell pengguna super lebih lama dari yang diperlukan hanya karena lebih nyaman daripada keluar dan masuk lagi nanti.

    Dengan sudo, Anda masih memiliki opsi untuk membuka shell superuser permanen (interaktif) dengan perintah:

    sudo su
    

    ... dan ini masih dapat dilakukan tanpa kata sandi root, karena sudomemberikan hak superuser pada superintah.

    Dan demikian pula, alih-alih su -untuk shell login Anda dapat menggunakan sudo su -atau bahkan sudo -i.

    Namun ketika melakukannya Anda hanya perlu menyadari bahwa Anda bertindak sebagai superuser untuk setiap perintah. Ini adalah prinsip keamanan yang baik untuk tidak bertahan sebagai pengguna super lebih lama dari yang diperlukan, hanya untuk mengurangi kemungkinan secara tidak sengaja menyebabkan kerusakan pada sistem (tanpanya, Anda hanya dapat merusak file yang dimiliki pengguna Anda).

    Hanya untuk memperjelas, Anda dapat , jika memilih, memberikan kata sandi kepada pengguna root yang memungkinkan login sebagai root, jika Anda ingin secara khusus melakukan hal-hal dengan cara ini. Saya hanya ingin memberi tahu Anda tentang kebiasaan memilih Ubuntu sudodan mencoba menjelaskan beberapa alasan mengapa Ubuntu memilih pendekatan itu sebagai default.

    Mengapa tidak mengizinkan login root melalui SSH?

    Bahkan jika pengguna root Anda memiliki kata sandi yang memungkinkan Anda untuk login sebagai root, itu masih merupakan praktik keamanan yang baik untuk menonaktifkan login root langsung dari luar, seperti di SSH. Adalah wajar bagi pengguna untuk harus su -atau sudosetelah login awal.

    Potensi manfaat untuk ini sebagian besar terkait keamanan:

    • Ini mengurangi vektor serangan dengan menghapus kemungkinan memaksa root password dari jarak jauh. Biasanya server di internet terus-menerus dihujani oleh upaya untuk memaksa root password melalui SSH.

    • Ini menciptakan jejak audit yang lebih baik sehingga bahkan dalam peristiwa pelanggaran di mana penyerang tidak mendapatkan hak superuser kemudian, Anda dapat melihat siapa user account digunakan untuk mendapatkan akses.


    6

    Ketika login sebagai root, ini memungkinkan aplikasi, skrip atau perintah baris perintah untuk mengakses bagian-bagian sensitif dari perangkat lunak yang dapat merusak sistem. Ini bisa merupakan hasil dari kurangnya pengalaman pada bagian pengguna atau programmer atau karena kode tersembunyi jahat.


    5

    Terlalu mudah mengacaukan saat beroperasi sebagai root. Anda dapat mengalahkan seluruh sistem dalam satu perintah ...


    5

    Saya dapat menambahkan bahwa ada perbedaan antara Administrator di Windows dan root di Unix. Administrator masih memiliki beberapa batasan dalam sistem, di mana root tidak memiliki batasan apa pun . Analog root yang benar di Windows adalah pengguna Sistem .

    Hal buruk untuk menggunakan PC di bawah root / Sistem adalah bahwa Anda dapat secara tidak sengaja menghancurkan apa pun tanpa peringatan dari OS.


    3

    Alasan tidak menggunakan root:

    • Tidak sengaja dapat menghancurkan file sistem
    • Bisa terkena infeksi
    • Tidak mencatat tindakan

    Alasan UNTUK menggunakan root:

    • Akses ke semuanya, tanpa mengetik kata sandi
    • GUI, tidak menggunakan terminal untuk mengelola file / direktori sistem

    Menurut saya bahwa akun non-root masih bisa menjadi korban dari alasan-alasan tersebut untuk tidak menggunakan root, yang paling banyak ditambahkan adalah konfirmasi atas tindakan Anda. Saya pikir selama Anda tahu apa yang Anda lakukan, Anda benar-benar aman menggunakan root. Di sana, saya mengatakannya.


    Meskipun secara teknis ada cara untuk mencatat tindakan termasuk setiap perintah. Ini berlaku untuk setiap pengguna. Lihat proses akuntansi misalnya di sini: linuxjournal.com/article/6144 Dan itu benar-benar aman jika Anda perlu menjadi root; kalau tidak, itu tidak sepenuhnya aman (exploit, dll.) bahkan jika perintah itu harus aman.
    Pryftan

    3

    Jika aplikasi dijalankan sebagai root, tidak ada jaminan bahwa tidak satu pun dari mereka akan mengeksekusi

    rm -rf /
    

    (Ini adalah contoh dari perintah yang tidak boleh dijalankan.)


    @StefanoPalazzo Posting ini tidak masuk akal dengan perintah dihapus, jadi saya telah memutar kembali edit Anda - Anda mungkin juga telah menghapus posting. Perhatikan bahwa, berbeda dengan kesalahpahaman yang tersebar luas, perintah ini, seperti ditulis, sebenarnya tidak menghapus file ketika dijalankan pada sistem Ubuntu, tetapi mirip dengan perintah yang melakukannya. Jadi, jika Anda khawatir seseorang mungkin secara tidak sengaja menyalin perintah dan mengecoh sistem mereka, itu tidak mungkin. Lihat dokumentasi opsi --preserve-rootdan untuk detail. --no-preserve-rootman rm
    Eliah Kagan

    Solaris memperlakukan perintah ini sebagai perilaku yang tidak terdefinisi menurut interpretasi POSIX yang luas (dan Bryan Cantrill) dan melempar kesalahan
    Jeremy Hajek

    3

    Diberikan pengguna yang berpengetahuan dan berhati-hati, saya tidak yakin bahwa jawaban yang benar ada. Saya belum melihat jawaban ini, jadi saya pikir saya akan berpadu.

    Yang tidak saya sukai adalah perubahan izin yang tidak disengaja pada sistem multi-pengguna yang saya perlukan chmodnanti. Memperbaiki melalui chmod setelah-fakta jauh lebih menjengkelkan daripada membutuhkan sudo, tapi itu tergantung pada apa yang saya rencanakan.


    3

    Tidak ada bahaya dalam penebangan sebagai root jika digunakan dengan hati-hati.

    Meskipun saya berpikir bahwa menonaktifkan root adalah solusi yang lebih baik, karena penyerang tidak bisa memaksakannya.

    Salah satu solusinya adalah membuat pengguna dalam grup sudo dengan nama yang tidak jelas, suka, gamerdan menggunakan sudo untuk melakukan tugas administratif.

    Oleh karena itu penyerang tidak hanya harus menebak kata sandi pengguna administratif tersebut tetapi juga nama loginnya. Yang tidak jelas apakah pengguna menggunakan sudo memiliki nama login suka kittyatau gameratau yang serupa.


    2

    Perangkat lunak didasarkan pada pustaka bersama, dependensi, file konfigurasi, dll.
    Sebagian besar kali, satu klik dalam aplikasi menimbulkan "reaksi berantai" dari beberapa perubahan, tidak hanya di mana Anda pikir akan melakukannya.
    Ketika perubahan-perubahan ini akan mempengaruhi pengaturan sistem-kritis, itu baik untuk Anda - sebagai pengguna - tahu.
    Itulah sebabnya akses root adalah model keamanan yang baik:
    Jika sesuatu yang krusial akan terjadi pada sistem Anda, Anda akan diberi tahu dengan meminta peningkatan hak istimewa.


    1

    Ini masalah dua sisi dengan lebih dari satu jawaban.

    Untuk beberapa kenyataan, periksa jawaban yang sama-tetapi-oh-begitu-mengerikan untuk ini:

    desktop installations:

    • gunakan pengguna dan sudo Anda sendiri jika perlu, jika tidak, satu vektor serangan berhasil digunakan karena Anda tidak benar-benar tahu apa yang Anda lakukan dan sistem Anda dikompromikan
    • di perusahaan yang lebih besar kemungkinannya, Anda bahkan mungkin tidak memiliki hak akses root di workstation Anda sendiri, bahkan jika Anda seorang admin, tergantung pada jumlah topi timah yang ada.

    server installations:

    • ada perbedaan besar antara melakukan sesi kerja singkat Anda sebagai root (asalkan Anda memiliki login tanpa kata sandi, manajemen kunci ssh yang tepat untuk semua server - dan dikonfigurasi fail2ban untuk semua login kata sandi saat Anda melakukannya) dan memiliki setiap daemon / layanan berjalan dengan penggunanya sendiri (yang merupakan keharusan) - kebanyakan orang tampaknya tidak menyadari perbedaannya
    • untuk bersenang-senang: coba gunakan alat manajemen konfigurasi versi terkontrol Anda (mungkin / boneka / garam / apa pun dengan file dari server git) hanya tanpa akses root. (Anda memiliki beberapa bentuk AAA untuk sistem khusus ini, serta untuk sistem pemantauan dan cadangan, bukan?)
    • juga: default rm -rf /tidak berfungsi di sebagian besar distro utama IIRC
    • setiap tempat kerja yang serius memiliki jumphost / bastion-host untuk mengakses armada server yang mencatat apa pun yang Anda lakukan, yang kemungkinan lebih lanjut dilindungi oleh 2FA
    • Jika Anda memiliki sudo dan tidak ada jumphost, Anda dapat memperbaiki log host untuk berakhir namun Anda tetap menginginkannya, jika mereka tidak dicerminkan secara realtime, itu.
    • ketika juga log ssh 'dibersihkan', Anda bahkan tidak dapat dibuktikan telah berada di host, jika tidak ada sistem pemantauan jaringan lebih lanjut di tempat

    Untuk ukuran perusahaan apa pun (baca: kemungkinan besar SOHO dengan ip statis) di antara kedua ekstrem ini yang tidak memiliki pemantauan / cadangan / otomasi / logging yang layak, mungkin berguna untuk menegakkan penggunaan sudo pada server. (Yang dihindarkan oleh orang-orang yang melakukan sudo su -ASAP setelah tersambung, membiarkan semua niat Anda untuk mencatat apa yang terjadi sia-sia bahkan tanpa niat jahat segera setelah lebih dari satu pengguna root login. Semoga beruntung mengubah ini melalui prosedur paksa dan merawat orang dengan kejam. tindakan untuk gagal mematuhi aturan. Hidup selalu menemukan jalan.)

    Tetapi jika Anda tidak memiliki setidaknya fail2ban untuk mengamankan login kata sandi Anda (jika ada, terutama pada sistem yang menghadapi internet), plus jangan pedulikan penanganan kata sandi yang tepat (alat manajemen kata sandi, kebijakan penyimpanan, tidak ada kata sandi utama, yang menangani ini pada karyawan fluktuasi ...) dan memiliki beberapa bentuk manajemen pembaruan yang tepat untuk armada server di tempat sehingga semua server ditambal secara teratur, Anda mungkin akan diretas suatu hari, baik itu dari dalam atau dari luar.

    Dan selalu menggunakan sudoagama dan menegakkan penggunaannya di antara semua orang tidak akan mengubah probabilitas Anda untuk memiliki banyak dalam kasus itu.


    Akhirnya jawaban yang nyata dan berbeda, alih-alih mantra biasa 'jangan pernah lakukan ini'. +1 dan terima kasih untuk ini.
    Andreas H.

    0

    Pada akhirnya tidak ada salahnya berjalan sebagai root. Hanya sekelompok orang paranoid yang berpikir bahwa menginstal ulang OS tidak mungkin. Argumen "Seseorang mungkin membahayakan program ..", lalu apa? jika mereka melakukan itu maka mereka sudah bisa keylog kata sandi Anda, atau hanya menampilkan permintaan kata sandi root dan Anda telah memberikan mereka kata sandi. Singkirkan sistem Anda karena Anda memilih semuanya di / dan menghapus? oh well, keluarkan installer dan instal ulang. Dibutuhkan kurang dari 20 menit, ambil kopi dan dinginkan. Root baik-baik saja, saya sudah menjalankan root selama saya bisa mengingat dan Anda tahu apa fungsinya? Itu membuat menginstal paket kurang dari sakit kepala. Anda tidak harus memasukkan kata sandi root setiap 5 menit seperti biasanya. Anda tidak mengalami masalah saat mencoba menyimpan / mengedit file konfigurasi sistem karena mereka re root izin saja. Jauh lebih mudah dan lebih baik dijalankan sebagai root.

    Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
    Licensed under cc by-sa 3.0 with attribution required.