Apakah menonaktifkan login root meningkatkan keamanan?


12

Saya baru-baru ini menemukan argumen untuk menonaktifkan login pengguna root di Linux di http://archives.neohapsis.com/archives/openbsd/2005-03/2878.html

Saya berasumsi bahwa, jika semua orang menggunakan otentikasi kunci publik, tidak ada risiko kehilangan kata sandi root.

Apakah selalu lebih baik untuk menonaktifkan login root melalui ssh?


1
Yang benar-benar perlu Anda tanyakan adalah "Apakah menonaktifkan login root mematuhi kebijakan keamanan saya?" Kebijakan setiap orang berbeda karena berbagai alasan.
Alex Holst

Jawaban:


10

Jawaban singkatnya adalah semakin kecil profil serangan Anda, semakin baik. Selalu. Jika Anda tidak membutuhkannya atau dapat menggunakan alternatif seperti sudo atau su, maka jangan aktifkan login root.

Satu argumen besar yang mendukung penonaktifan root dan menggunakan sudo / su adalah bahwa Anda dapat melacak siapa yang melakukan apa. Satu pengguna - satu login. Jangan pernah berbagi akun.

Argumen di tautan itu tampaknya lebih spesifik untuk login lokal, daripada ssh.


3
Titik pelacakan diperdebatkan:, sudo -idan tindakan Anda muncul sebagai root, bukan milik Anda
Fahad Sadah

2
Tetapi Anda memiliki catatan login asli mereka. Anda mungkin tidak memiliki bukti, tetapi Anda memiliki bukti. Plus, Anda dapat mengontrol apa yang dapat diakses dan dilakukan pengguna.
Dijeda sampai pemberitahuan lebih lanjut.

Bagaimana dengan satu pengguna per situasi os? Hanya ada satu orang yang mengelola sistem, saya dapat melacak siapa yang sudah melakukan apa. Gunakan sudo buat string bash melarikan diri sangat kompleks ... misalnya: unix.stackexchange.com/questions/551899/…
orang perunggu

8

Poin kedua saya Dennis, plus:

Mengizinkan login root melalui SSH juga berarti root dapat diserang oleh tebakan kata sandi brute force.

Karena root selalu ada, dan hadiahnya sangat tinggi, itu adalah target prioritas. Nama pengguna harus ditebak terlebih dahulu, yang menambahkan beberapa urutan besarnya pada kesulitan masalah.


Juga, karena root, seperti pada sebagian besar akun admin, bahkan jika Anda mengatur sistem Anda untuk mengunci akun setelah (x) kegagalan, itu tidak akan. Anda malah harus mengatur sesuatu untuk memblokir IP setelah kegagalan, tetapi bahkan itu tidak akan membantu melawan kekuatan kasar yang didistribusikan.
Joe H.

1
Anda dapat mengganti nama akun root, sama seperti yang lain.
Fahad Sadah

@fahadsadah Beberapa perangkat lunak menganggap UID 0 == root. Saya pernah mencoba mengganti nama root pada router OpenWRT dan antarmuka webnya rusak.
Gerald Combs

3
Rooting melalui ssh TIDAK secara otomatis berarti bahwa sistem rentan terhadap kekerasan. Pertimbangkan sistem dengan PermitRootLogin without-passwordset opsi.
Zoredache

4

Jangan pernah menonaktifkan akun root jika Anda tidak memiliki akses konsol. Jika sistem file Anda terisi dan boot gagal ketika / etc / nologin dibuat, hanya akun root yang akan diizinkan masuk ke mesin.

Yang mengatakan, jika Anda memiliki akses konsol untuk menangani situasi ini, menutup akun root dapat menyelamatkan Anda dari sakit kepala, karena tidak ada yang bisa mendapatkan ke akun root menggunakan serangan kamus (pengalaman saya adalah bahwa ini konstan hari ini - seseorang selalu berusaha). Hal-hal lain yang mungkin Anda pikirkan untuk dilakukan:

  • Instal program seperti fail2ban yang secara otomatis menutup akses ke alamat IP jika gagal otentikasi lebih dari beberapa kali (untuk secara aktif melindungi terhadap serangan kamus).
  • Hanya gunakan kunci ssh.
  • Jika Anda mengelola banyak mesin, gunakan cfengine atau lainnya untuk mengelola kunci publik yang Anda otorisasi untuk masuk ke mesin (atau Anda mendapatkannya dengan cepat).

Salam,
João Miguel Neves


1

Itu selalu lebih baik untuk menonaktifkan login root melalui SSH.

Ada sistem PKI (misalnya kunci publik dengan SSH) yang telah dikompromikan. SSH telah memiliki kelemahan autentikasi jarak jauh sebelumnya yang memungkinkan terjadinya kompromi root. Perangkat lunak PKI terkenal lebih lemah dari perangkat keras berbasis PKI .... jika komputer host Anda dikompromikan, server target juga bisa jatuh dengan mudah. Atau mungkin ada kekurangan baru yang ditemukan di SSH. Dengan membatasi login root, Anda juga dapat memperpanjang periode waktu yang dibutuhkan penyerang untuk melakukan eskalasi privilege.

Secara historis, banyak administrator menggunakan host benteng (pada dasarnya gateway) untuk memasuki jaringan, dan kemudian melompat ke kotak sesudahnya. Menggunakan distro aman tinggi (misalnya OpenBSD) sebagai host benteng, bersama dengan sistem operasi yang berbeda memberikan pertahanan-dalam-kedalaman dan pertahanan-dalam-keanekaragaman (satu kerentanan lebih kecil kemungkinannya untuk mengkompromikan seluruh jaringan).

Harap pertimbangkan untuk memiliki koneksi out-band ke jaringan Anda juga, seperti konsentrator serial, saklar serial, atau lainnya. Ini akan memberikan ketersediaan cadangan dari antarmuka administratif Anda jika diperlukan.

Karena saya paranoid dan dalam keamanan, saya akan lebih cenderung menggunakan IPSEC VPN atau VPN Type1, dan kemudian menjalankan SSH di atasnya, tanpa paparan internet SSH apa pun. Menempatkan VPN di perangkat keras jaringan Anda dapat secara dramatis menyederhanakan ini dalam implementasi.


0

Kita harus memeriksa pertanyaan ini dari poin yang berbeda.

Ubuntu secara default menonaktifkan akun root, yang berarti Anda tidak dapat masuk melalui SSH dengan root. Tapi, itu memungkinkan siapa pun dengan CD Ubuntu dapat mem-boot dan mendapatkan akses root.

Saya percaya kompromi terbaik adalah mengaktifkan akun root dengan akses SSH yang dinonaktifkan. Jika Anda memerlukan akses root dengan SSH, login dengan pengguna normal dan gunakan sudo. Dengan cara ini mengamankan akses ke kotak, tanpa membahayakan keamanan jarak jauh.


2
Pada saat seseorang mem-boot mesin Anda dengan CD, sudah terlambat, mereka sudah mem-bajakan mesin Anda. Yang terbaik yang bisa Anda harapkan adalah partisi data terenkripsi.
Kamil Kisiel

1
Jika Anda memiliki akses ke "tempat gelas", Anda tidak perlu ssh.
Dijeda sampai pemberitahuan lebih lanjut.

@ Kamil Kisiel itu tidak berarti Anda tidak bisa memasang blok jalan untuk menghalangi mereka. Apa ungkapannya? Jika mereka dapat menyentuh kotak Anda, mereka dapat memilikinya. Tapi, kita perlu menempatkan segala sesuatunya dalam perspektif. @Dennis Williamson, bisakah Anda menjelaskan komentar Anda lebih lanjut?
Natalie Adams

Blok jalan apa? Jika Anda mem-boot CD Anda sendiri, Anda tidak memerlukan kata sandi. Anda baru saja membaca sistem file.
Kamil Kisiel

0

Saya akan mengatakan ya, login sebagai root harus dinonaktifkan untuk auditabilitas. Jika Anda adalah satu-satunya administrator sistem pada mesin ini, itu sepele untuk menentukan siapa yang melakukan apa kepada siapa, tetapi jika sepuluh orang berwenang untuk mengelola kotak dan mereka semua tahu kata sandi root, kami memiliki masalah.

Apakah root diaktifkan atau tidak, root atau pengguna lain mana pun tidak boleh masuk secara jarak jauh dengan kata sandi. fail2ban tidak akan melakukan apa pun terhadap botnet kasar, dan tidak bekerja sama sekali dengan IPv6. (protokol ssh versi 1 dan implementasi versi 2 yang lebih lama rentan terhadap serangan tebak kata sandi terhadap prompt kata sandi interaktif dalam sesi ssh, tetapi ini tampaknya tidak lagi menjadi kasus dengan implementasi ssh yang cukup baru.)

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.