Mengapa sshd mengizinkan login root secara default?

7

Saat ini saya sedang mengerjakan pengerasan server saya terhadap peretasan - di antara hal-hal lain, saya mendapatkan banyak upaya untuk masuk sebagai root dari ssh. Sementara saya telah mengimplementasikan fail2ban, saya bertanya-tanya, mengapa login root akan diizinkan secara default untuk memulai? Bahkan dengan distro berbasis non sudo, saya selalu dapat masuk sebagai pengguna normal dan beralih - jadi saya bertanya-tanya apakah ada keuntungan yang jelas untuk mengizinkan login root di ssh, atau itu hanya sesuatu yang tidak ada yang mau diubah?

Journeyman Geek
sumber

Jawaban:

8

Ada keuntungan yang jelas untuk mengizinkan login root di ssh

Ada beberapa sistem cadangan yang perlu root pada sistem jarak jauh untuk benar-benar melakukan cadangan. Bukan hal yang aneh untuk melihat pengaturan dengan otentikasi berbasis kunci untuk melakukan tugas pemeliharaan pada sistem jarak jauh.

Saya sangat berharap default akan diubah dari PermitRootLogin yessetidaknya PermitRootLogin without-password, ini akan memungkinkan otentikasi berbasis kunci saja. Otentikasi kata sandi jarak jauh ke akun root hampir tidak pernah dibutuhkan.

Ini menjadi lebih umum pada sistem (seperti Ubuntu) untuk sistem yang akan diatur dengan akun root dengan kata sandi yang dinonaktifkan. Tidak ada banyak risiko dalam pengaturan default karena tidak ada cara untuk langsung dikonfirmasi ke akun dengan kata sandi yang dinonaktifkan.

Juga pertimbangkan bahwa upaya brute force untuk login dari jauh ke root melalui ssh memiliki peluang sangat rendah untuk berhasil jika Anda memiliki akun root dengan kata sandi yang cukup kompleks. Menonaktifkan akun root memang memberikan lapisan keamanan tambahan, tetapi mungkin tidak diperlukan jika Anda memiliki kata sandi yang kuat. Jika Anda menggabungkan kata sandi yang kuat dengan alat reaktif seperti denyhosts dan fail2ban, biasanya hampir tidak ada risiko bahwa upaya untuk memaksa paksa kata sandi root akan berfungsi.

Itu selalu merupakan praktik yang baik untuk mengeraskan sistem setelah instalasi dilakukan berdasarkan risiko dan persyaratan untuk jaringan Anda. Sistem yang tidak kritis dan tidak memiliki data pengguna tidak benar-benar membutuhkan tingkat pengerasan yang sama dengan sistem yang menyimpan catatan medis atau perbankan.

Sakit kepala
sumber
2

Saya tidak yakin, tetapi saya akan berasumsi bahwa mereka ingin memastikan bahwa orang yang melakukan pemasangan asing dapat masuk. Login pertama mungkin harus di-root karena belum ada pengguna lain.

Namun, Anda harus memastikan untuk menonaktifkan login sebagai opsi root di sshd config setelah Anda membuat pengguna Anda dan memberinya izin sudo.

Saya juga merekomendasikan agar Anda mengubah port SSH ke sesuatu selain 22. Meskipun itu tidak membuat mesin Anda lebih aman - itu menghentikan semua permintaan yang boros / mengganggu.

Xeoncross
sumber
Saya sangat tidak setuju dengan perubahan dari port standar. Gunakan pemfilteran paket.
Warner
Betulkah? Apa yang buruk tentang itu? Saya baru saja mulai melakukannya karena saya melihat admin yang dihormati melakukannya ...
Xeoncross
Ini adalah sesuatu yang diadopsi orang dari menjalankan server bersama tanpa penyaringan atau pemisahan jaringan.
Warner
@ Warner tetapi, saya tidak mengerti, mengubah dari port standar tidak akan menjadi cara yang cukup sederhana bagi kebanyakan orang untuk hanya menangkis sebagian besar upaya?
Camilo Martin
2

Pertimbangkan untuk mencegah login root sebagai perlindungan tambahan. Beberapa tahun yang lalu bruteforce mencapai puncaknya, saat ini, mereka cenderung mencari kerentanan melalui apa yang dapat mereka lihat oleh para diaken (apache, pureftpd, ...). Mencegah login root menjadi ide bagus jika besok eksploit ditemukan dengan SSHD. Meskipun SSHD sudah matang dan aman, Anda tidak pernah tahu. Akhir-akhir ini eksploit lebih mengarah pada peningkatan priviledge dengan kernel atau menggunakan aplikasi pihak ketiga dengan kernel sehingga mencegah login root tidak akan mengubah apa pun.

Distro berbasis Debian sudah beralih, sedangkan distro berbasis RedHat menyarankannya (jika Anda membaca dokumen praktik terbaik mereka)

Embreau
sumber
1

Yah, karena root adalah pengguna yang valid dan sshd melakukan itu dengan memperbolehkannya. Pada OpenBSD (orang yang sama dari OpenSSH), misalnya, Anda tidak diminta untuk membuat pengguna selama instalasi, jadi Anda perlu menggunakan root untuk mengakses kotak Anda.

Beberapa distribusi berbasis desktop memaksa Anda untuk membuat pengguna tambahan, tetapi untuk server Anda sebenarnya tidak membutuhkannya.

Juga, argumen ini bahwa sudo atau su lebih aman daripada masuk karena root adalah mitos besar. Di Ubuntu, misalnya, pengguna dapat menjalankan perintah APAPUN menggunakan sudo secara default, sehingga penyerang yang masuk juga dapat menjalankan perintah APAPUN sebagai root. Cukup tidak berguna dari sudut pandang keamanan.

sucuri
sumber
di sisi lain, penyerang perlu menebak nama pengguna dan kata sandi - bukan hanya memaksa kata sandi dengan kasar. Saya juga mencatat bahwa sudo dibatasi untuk orang-orang di file sudoers - jadi ini adalah pengguna pertama dalam banyak kasus
Journeyman Geek
0

Cukup spesifik untuk distro. Beberapa mengizinkannya, beberapa tidak.

Jika saya mengelola distro, saya akan mengkonfigurasi sistem menjadi sekeras mungkin saat menginstal. Lebih baik lupa mengaktifkan beberapa fitur daripada melupakan menonaktifkan faeture.

Joe Internet
sumber
Sistem pengerasan sebanyak mungkin menjadi tantangan jika Anda juga mencoba membuat sistem Anda digunakan di desktop oleh banyak pengguna akhir. Anda perlu kompromi dan mengeraskan sistem cukup untuk melindungi pengguna dalam kasus default tetapi memungkinkan pengguna tingkat lanjut untuk memodifikasi sistem agar sesuai dengan kebutuhan mereka.
Zoredache