GNU/Linux >> Belajar Linux >  >> Linux

4 Cara Menonaktifkan Akun Root di Linux

Akar akun adalah akun utama di Linux dan sistem operasi mirip Unix lainnya. Akun ini memiliki akses ke semua perintah dan file pada sistem dengan izin baca, tulis, dan eksekusi penuh. Ini digunakan untuk melakukan segala jenis tugas pada suatu sistem; untuk membuat/memperbarui/mengakses/menghapus akun pengguna lain, menginstal/menghapus/memperbarui paket perangkat lunak, dan banyak lagi.

Karena akar pengguna memiliki kekuatan absolut, tindakan apa pun yang dia lakukan sangat penting pada suatu sistem. Dalam hal ini, kesalahan apa pun oleh root pengguna mungkin memiliki implikasi besar pada operasi normal suatu sistem. Selain itu, akun ini juga dapat disalahgunakan dengan menggunakannya secara tidak semestinya atau tidak tepat baik secara tidak sengaja, jahat, atau melalui ketidaktahuan kebijakan yang dibuat-buat.

Oleh karena itu, disarankan untuk menonaktifkan akses root di server Linux Anda, sebagai gantinya, buat akun administratif yang harus dikonfigurasi untuk mendapatkan hak pengguna root menggunakan perintah sudo, untuk melakukan tugas-tugas penting di server.

Pada artikel ini, kami akan menjelaskan empat cara untuk menonaktifkan login akun pengguna root di Linux.

Perhatian :Sebelum Anda memblokir akses ke root akun, pastikan Anda telah membuat akun administratif, yang mampu menggunakan perintah sudo untuk mendapatkan hak pengguna root, dengan perintah useradd dan berikan akun pengguna ini kata sandi yang kuat. Bendera -m berarti membuat direktori home pengguna dan -c memungkinkan untuk menentukan komentar:

# useradd -m -c "Admin User" admin
# passwd admin

Selanjutnya, tambahkan pengguna ini ke grup administrator sistem yang sesuai menggunakan perintah usermod, di mana sakelar -a berarti menambahkan akun pengguna dan -G menentukan grup untuk menambahkan pengguna (roda atau sudo tergantung pada distribusi Linux Anda):

# usermod -aG wheel admin    #CentOS/RHEL
# usermod -aG sudo admin     #Debian/Ubuntu 

Setelah Anda membuat pengguna dengan hak administratif, alihkan ke akun tersebut untuk memblokir akses root.

# su admin

1. Ubah Shell Pengguna root

Metode paling sederhana untuk menonaktifkan login pengguna root adalah dengan mengubah shell-nya dari /bin/bash atau /bin/bash (atau shell lain yang mengizinkan login pengguna) ke /sbin/nologin , di /etc/passwd file, yang dapat Anda buka untuk diedit menggunakan editor baris perintah favorit Anda seperti yang ditunjukkan.

  
$ sudo vim /etc/passwd

Ubah baris:

root:x:0:0:root:/root:/bin/bash
to
root:x:0:0:root:/root:/sbin/nologin

Simpan file dan tutup.

Mulai sekarang, saat root pengguna login, dia akan mendapatkan pesan “Akun ini saat ini tidak tersedia. ” Ini adalah pesan default, tetapi, Anda dapat mengubahnya dan menyetel pesan khusus dalam file /etc/nologin.txt .

Metode ini hanya efektif dengan program yang memerlukan shell untuk login pengguna, jika tidak, sudo , ftp dan email klien dapat mengakses akun root.

2. Nonaktifkan Login root melalui Perangkat Konsol (TTY)

Metode kedua menggunakan PAM modul bernama pam_securetty , yang mengizinkan akses root hanya jika pengguna masuk menggunakan TTY “aman” , seperti yang didefinisikan oleh cantuman di /etc/securetty .

File di atas memungkinkan Anda menentukan TTY . yang mana perangkat pengguna root diizinkan untuk login, mengosongkan file ini mencegah login root pada perangkat apa pun yang terhubung ke sistem komputer.

Untuk membuat file kosong, jalankan.

$ sudo mv /etc/securetty /etc/securetty.orig
$ sudo touch /etc/securetty
$ sudo chmod 600 /etc/securetty

Metode ini memiliki beberapa keterbatasan, hanya mempengaruhi program seperti login, pengelola tampilan (yaitu gdm , kdm dan xdm ) dan layanan jaringan lain yang meluncurkan TTY. Program seperti su, sudo, ssh, dan alat openssh terkait lainnya akan memiliki akses ke akun root.

3. Nonaktifkan Login Root SSH

Cara paling umum untuk mengakses server jarak jauh atau VPS adalah melalui SSH dan untuk memblokir login pengguna root di bawahnya, Anda perlu mengedit /etc/ssh/sshd_config berkas.

$ sudo vim /etc/ssh/sshd_config

Kemudian batalkan komentar (jika dikomentari) arahan PermitRootLogin dan atur nilainya menjadi no seperti yang ditunjukkan pada tangkapan layar.

Setelah selesai, simpan dan tutup file. Kemudian mulai ulang sshd service untuk menerapkan perubahan konfigurasi terbaru.

$ sudo systemctl restart sshd 
OR
$ sudo service sshd restart 

Seperti yang mungkin sudah Anda ketahui, metode ini hanya memengaruhi set alat openssh, program seperti ssh, scp, sftp akan diblokir agar tidak mengakses akun root.

4. Batasi Akses root ke Layanan Melalui PAM

Modul Otentikasi yang Dapat Dicolokkan (PAM singkatnya) adalah metode otentikasi terpusat, pluggable, modular, dan fleksibel pada sistem Linux. PAM, melalui /lib/security/pam_listfile.so modul, memungkinkan fleksibilitas besar dalam membatasi hak istimewa akun tertentu.

Modul di atas dapat digunakan untuk mereferensikan daftar pengguna yang tidak diizinkan masuk melalui beberapa layanan target seperti login, ssh, dan program sadar PAM apa pun.

Dalam hal ini, kami ingin menonaktifkan akses pengguna root ke sistem, dengan membatasi akses ke layanan login dan sshd. Pertama buka dan edit file untuk layanan target di /etc/pam.d/ direktori seperti yang ditunjukkan.

$ sudo vim /etc/pam.d/login
OR
sudo vim /etc/pam.d/sshd

Selanjutnya, tambahkan konfigurasi di bawah ini di kedua file.

auth    required       pam_listfile.so \
        onerr=succeed  item=user  sense=deny  file=/etc/ssh/deniedusers

Setelah selesai, simpan dan tutup setiap file. Kemudian buat file biasa /etc/ssh/deniedusers yang seharusnya berisi satu item per baris dan tidak dapat dibaca dunia.

Tambahkan nama root di dalamnya, lalu simpan dan tutup.

$ sudo vim /etc/ssh/deniedusers

Juga atur izin yang diperlukan untuk ini.

$ sudo chmod 600 /etc/ssh/deniedusers

Metode ini hanya mempengaruhi program dan layanan yang sadar PAM. Anda dapat memblokir akses root ke sistem melalui ftp dan klien email dan banyak lagi.

Untuk informasi lebih lanjut, lihat halaman manual yang relevan.

$ man pam_securetty
$ man sshd_config
$ man pam

Itu saja! Pada artikel ini, kami telah menjelaskan empat cara menonaktifkan login (atau akun) pengguna root di Linux. Apakah Anda memiliki komentar, saran, atau pertanyaan, jangan ragu untuk menghubungi kami melalui formulir masukan di bawah.


Linux
  1. Cara Mengubah, Menghapus, atau Menonaktifkan Kata Sandi Pengguna di Linux

  2. Pengantar pemantauan akun pengguna Linux

  3. Cara menyesuaikan lingkungan pengguna Linux

  1. Nonaktifkan masuk dengan akun root

  2. Metode untuk menonaktifkan akun root di sistem Linux Ubuntu 20.04 LTS

  3. Aktifkan dan Nonaktifkan Akun Pengguna Root di Ubuntu 20.04 - Lakukan Sekarang?

  1. Cara menonaktifkan login jarak jauh untuk pengguna root di mesin Linux

  2. Instal WordPress di akun pengguna sebagai root

  3. Tidak dapat membuka kunci akun pengguna linux