Cara Cek & Manajemen Pengguna Ubuntu: Panduan Lengkap untuk Pemula & Admin

目次

1. Pendahuluan

Ubuntu adalah salah satu distribusi Linux populer yang banyak digunakan oleh berbagai kalangan, mulai dari pengguna pribadi hingga lingkungan server perusahaan. Dalam pengelolaan sistem Ubuntu, manajemen akun pengguna merupakan hal yang sangat penting. Secara khusus, memeriksa daftar pengguna yang terdaftar di sistem dapat membantu dalam manajemen keamanan dan pengorganisasian akun.

Artikel ini akan menjelaskan secara rinci cara memeriksa daftar pengguna di Ubuntu. Kami akan menyajikan berbagai metode, mulai dari perintah dasar hingga cara mendapatkan informasi detail, agar bermanfaat bagi pengguna pemula hingga tingkat lanjut.

年収訴求

2. Cara Memeriksa Daftar Pengguna di Ubuntu

Di Ubuntu, informasi pengguna dapat dengan mudah diperoleh menggunakan file atau perintah tertentu. Anda dapat memeriksa daftar pengguna dengan metode berikut:

2.1 Menampilkan Daftar Pengguna Menggunakan /etc/passwd

Di Ubuntu, semua informasi pengguna disimpan dalam file /etc/passwd. Dengan menampilkan file ini, Anda dapat melihat semua pengguna yang terdaftar.

Contoh Perintah

cat /etc/passwd

Ketika perintah ini dijalankan, informasi akan ditampilkan dalam format berikut:

root:x:0:0:root:/root:/bin/bash
user1:x:1000:1000:User One,,,:/home/user1:/bin/bash
user2:x:1001:1001:User Two,,,:/home/user2:/bin/bash

Setiap baris dipisahkan oleh “: (titik dua)” dan berisi informasi berikut:

  1. Nama Pengguna (Username)
  2. Kata Sandi (saat ini disembunyikan dengan x)
  3. ID Pengguna (UID)
  4. ID Grup (GID)
  5. Informasi Pengguna (Komentar)
  6. Direktori Home
  7. Shell Default

File ini juga menyertakan pengguna sistem. Untuk mengekstrak hanya pengguna yang dapat login normal, gunakan metode berikut:

2.2 Mendapatkan Hanya Nama Pengguna

Untuk menampilkan hanya daftar semua nama pengguna, gunakan perintah berikut:

cut -d: -f1 /etc/passwd

Atau Anda juga dapat menggunakan perintah awk.

awk -F':' '{ print $1 }' /etc/passwd

Contoh Output:

root
user1
user2

2.3 Mencari Pengguna Tertentu

Untuk memeriksa apakah pengguna tertentu ada, gunakan perintah grep.

grep 'user1' /etc/passwd

Perintah ini akan menampilkan hanya informasi yang berkaitan dengan user1.

2.4 Mendapatkan Daftar Grup Menggunakan /etc/group

Untuk memeriksa grup tempat pengguna berada, lihat file /etc/group.

cat /etc/group | cut -d: -f1

Selain itu, untuk memeriksa grup tempat pengguna tertentu berada, gunakan perintah berikut:

groups user1

Contoh Output:

user1 : user1 sudo

Ini menunjukkan bahwa user1 juga termasuk dalam grup sudo.

3. Cara Memeriksa Pengguna yang Sedang Login

Di Ubuntu, ada beberapa cara untuk memeriksa pengguna yang sedang login ke sistem. Dengan menggunakan perintah tertentu, Anda dapat memperoleh daftar pengguna yang sedang membuka sesi dan informasi login yang detail.

3.1 Memeriksa Pengguna yang Login Menggunakan Perintah who

Perintah who akan menampilkan daftar semua pengguna yang sedang login.

Contoh Perintah

who

Contoh Output

user1    tty1          2025-02-16 10:05
user2    pts/0         2025-02-16 11:30

Penjelasan Setiap Bidang

  1. Nama Pengguna (pengguna yang login)
  2. Nama Terminal (konsol fisik tty1 atau koneksi jarak jauh pts/0)
  3. Waktu Login

Perintah who sederhana dan berguna ketika Anda ingin cepat memeriksa pengguna yang login.

3.2 Memeriksa Informasi Detail Menggunakan Perintah w

Perintah w memberikan informasi yang lebih detail daripada perintah who.

Contoh Perintah

w

Contoh Output

 11:35:25 up 2:15,  2 users,  load average: 0.03, 0.02, 0.00
USER       TTY      FROM               LOGIN@   IDLE   JCPU   PCPU WHAT
user1      tty1                        10:05    1:30m  0.10s  0.10s -bash
user2      pts/0    192.168.1.10       11:30    0.00s  0.05s  0.02s sshd

Penjelasan Setiap Bidang

  • Waktu Aktif Sistem (up 2:15)
  • Jumlah Pengguna yang Sedang Login (2 users)
  • Beban CPU (load average)
  • Nama Pengguna (USER)
  • Terminal Koneksi (TTY)
  • Sumber Koneksi Jarak Jauh (FROM)
  • Waktu Login (LOGIN@)
  • Waktu Idle (IDLE)
  • Penggunaan CPU (JCPU, PCPU)
  • Proses yang Sedang Berjalan (WHAT)

Khususnya, alamat IP jarak jauh pengguna yang login melalui SSH akan ditampilkan di kolom FROM, yang berguna untuk manajemen dan pemantauan akses jarak jauh.

3.3 Memeriksa Pengguna yang Login dengan Mudah Menggunakan Perintah users

Jika Anda hanya ingin menampilkan daftar nama pengguna yang sedang login secara sederhana, perintah users sangat praktis.

Contoh Perintah

users

Contoh Output

user1 user2

Perintah ini adalah versi sederhana dari who dan hanya menampilkan nama pengguna secara ringkas.

3.4 Memeriksa Pengguna Saat Ini Menggunakan Perintah whoami

Jika Anda ingin memeriksa pengguna yang sedang aktif dalam sesi saat ini, gunakan perintah whoami.

Contoh Perintah

whoami

Contoh Output

user1

Perintah ini hanya menampilkan nama pengguna yang sedang bekerja di terminal saat ini, berguna untuk memastikan Anda menjalankan perintah sebagai pengguna tertentu.

3.5 Memeriksa Riwayat Login Terbaru Menggunakan Perintah last

Perintah last memungkinkan Anda untuk melihat riwayat pengguna yang telah login sebelumnya.

Contoh Perintah

last

Contoh Output

user1    pts/0         192.168.1.10      Mon Feb 15 10:20   still logged in
user2    tty1                            Mon Feb 15 09:30 - 10:00  (00:30)
root     tty1                            Sun Feb 14 22:15 - 23:45  (01:30)

Penjelasan Setiap Bidang

  • Nama Pengguna
  • Terminal Koneksi (tty1, pts/0, dll.)
  • Sumber Koneksi Jarak Jauh (Alamat IP)
  • Waktu Mulai Login
  • Waktu Logout (still logged in berarti masih login)
  • Total Waktu Login (00:30 = 30 menit)

Perintah ini berguna untuk memantau pengguna yang telah login di masa lalu atau untuk mendeteksi akses yang tidak sah.

4. Cara Memeriksa Informasi Detail Pengguna

Di Ubuntu, ada beberapa perintah yang tersedia untuk mendapatkan informasi detail tentang pengguna yang terdaftar. Dengan memeriksa UID, grup, dan shell login pengguna tertentu, Anda dapat mengatur izin dan mengelola dengan tepat.
Di sini, kami akan menjelaskan cara memeriksa informasi detail menggunakan perintah seperti id, finger, dan chage.

4.1 Memeriksa UID, GID, dan Grup Pengguna dengan Perintah id

Perintah id memungkinkan Anda untuk memeriksa UID (User ID), GID (Group ID), dan grup tempat pengguna berada.

Contoh Perintah
id user1
Contoh Output
uid=1001(user1) gid=1001(user1) groups=1001(user1),27(sudo),1002(docker)
Penjelasan Setiap Item
  • uid=1001(user1)ID Pengguna (nomor identifikasi pengguna dalam sistem)
  • gid=1001(user1)ID Grup (grup utama)
  • groups=1001(user1),27(sudo),1002(docker)Daftar Grup yang Dimasuki

Informasi ini berguna untuk memeriksa grup mana yang menjadi anggota pengguna tertentu.

Untuk Memeriksa Informasi Pengguna Saat Ini
id

Ketika perintah ini dijalankan, informasi ID pengguna saat ini akan ditampilkan.

4.2 Memeriksa Grup Pengguna dengan Perintah groups

Untuk dengan mudah mengetahui grup mana yang menjadi anggota pengguna tertentu, gunakan perintah groups.

Contoh Perintah
groups user1
Contoh Output
user1 : user1 sudo docker

Meskipun perintah id juga dapat memperoleh informasi grup, jika Anda hanya ingin memeriksa nama grup secara singkat, perintah groups lebih praktis.

Untuk Memeriksa Grup Pengguna Saat Ini
groups

Ketika perintah ini dijalankan, daftar grup tempat pengguna saat ini berada akan ditampilkan.

4.3 Mendapatkan Informasi Pengguna Detail dengan Perintah finger

Perintah finger memungkinkan Anda untuk mendapatkan informasi yang lebih detail tentang pengguna, seperti nama lengkap, informasi login, jenis shell, dan lainnya.

Cara Instalasi

finger tidak diinstal secara default, jadi pertama-tama instal dengan perintah berikut:

sudo apt install finger
Contoh Perintah
finger user1
Contoh Output
Login: user1                     Name: User One
Directory: /home/user1           Shell: /bin/bash
Last login: Mon Feb 16 10:20 (UTC) on pts/0
Penjelasan Setiap Item
  • Login → Nama pengguna
  • Name → Nama asli yang diatur (bisa kosong)
  • Directory → Direktori home pengguna
  • Shell → Shell yang digunakan
  • Last login → Tanggal dan waktu login terakhir

Administrator sistem dapat memanfaatkan perintah finger untuk dengan mudah memeriksa pengguna mana yang menggunakan shell mana, dan lain-lain.

4.4 Memeriksa Kedaluwarsa Kata Sandi dengan Perintah chage

Administrator sistem dapat menggunakan perintah chage untuk memeriksa tanggal kedaluwarsa kata sandi dan tanggal perubahan terakhir pengguna tertentu.

Contoh Perintah
sudo chage -l user1
Contoh Output
Last password change          : Jan 15, 2025
Password expires              : Mar 15, 2025
Password inactive             : never
Account expires               : never
Minimum number of days between password change : 7
Maximum number of days between password change : 60
Number of days of warning before password expires : 5
Penjelasan Setiap Item
  • Last password change → Tanggal terakhir kata sandi diubah
  • Password expires → Tanggal kedaluwarsa kata sandi
  • Password inactive → Periode sebelum kata sandi dinonaktifkan
  • Account expires → Tanggal akun dinonaktifkan
  • Minimum number of days between password change → Interval minimum antara perubahan kata sandi
  • Maximum number of days between password change → Periode validitas kata sandi
  • Number of days of warning before password expires → Jumlah hari peringatan sebelum kata sandi kedaluwarsa

Administrator sistem dapat menggunakan informasi ini untuk mengatur kebijakan manajemen kata sandi dan meningkatkan keamanan.

5. Manajemen Pengguna di Ubuntu (Tambah, Hapus, Edit)

Di Ubuntu, penting bagi administrator sistem untuk mengelola pengguna dengan tepat. Dengan menambahkan atau menghapus pengguna baru, serta mengedit informasi pengguna yang sudah ada, Anda dapat meningkatkan keamanan sistem dan efisiensi operasional. Bagian ini akan menjelaskan metode manajemen pengguna menggunakan perintah seperti adduser, deluser, dan usermod.

5.1 Menambahkan Pengguna

Untuk membuat pengguna baru di Ubuntu, gunakan perintah adduser atau useradd.

5.1.1 Perintah adduser (Direkomendasikan)

adduser adalah perintah yang nyaman untuk menambahkan pengguna secara interaktif.

Contoh Perintah
sudo adduser newuser
Alur Interaktif
Adding user `newuser' ...
Adding new group `newuser' (1002) ...
Adding new user `newuser' (1002) with group `newuser' ...
Creating home directory `/home/newuser' ...
Copying files from `/etc/skel' ...
Enter new UNIX password: ********
Retype new UNIX password: ********
passwd: password updated successfully
Changing the user information for newuser
Enter the new value, or press ENTER for the default
        Full Name []: 
        Room Number []: 
        Work Phone []: 
        Home Phone []: 
        Other []: 
Is the information correct? [Y/n] 
Yang Dibuat
  • Akun pengguna
  • Grup khusus
  • Direktori home (/home/newuser)
  • Kata sandi untuk login
  • Informasi pengguna dasar

Metode ini adalah yang paling umum dan mudah digunakan bahkan oleh pemula.

5.1.2 Perintah useradd (Untuk Pengguna Tingkat Lanjut)

Perintah useradd berbeda dengan adduser karena dirancang lebih sederhana dan berorientasi skrip, tetapi tidak otomatis membuat direktori home, dll.

Contoh Perintah
sudo useradd -m -s /bin/bash newuser
sudo passwd newuser
Penjelasan Opsi
  • -m → Membuat direktori home
  • -s /bin/bash → Mengatur shell login ke /bin/bash

Saat menggunakan perintah ini, Anda perlu mengatur kata sandi secara terpisah.

5.2 Menghapus Pengguna

Untuk menghapus akun pengguna yang tidak diperlukan, gunakan perintah deluser atau userdel.

5.2.1 Perintah deluser (Direkomendasikan)

deluser adalah versi penghapusan dari adduser, yang memungkinkan Anda menghapus pengguna secara sederhana.

Contoh Perintah
sudo deluser newuser
Jika Ingin Menghapus Direktori Home Juga
sudo deluser --remove-home newuser

Perintah ini juga akan menghapus direktori home pengguna (/home/newuser).

5.2.2 Perintah userdel (Untuk Pengguna Tingkat Lanjut)

Perintah userdel memungkinkan kontrol yang lebih rinci.

Contoh Perintah
sudo userdel newuser
Menghapus Bersama Direktori Home
sudo userdel -r newuser

userdel adalah metode yang lebih langsung daripada deluser, tetapi perlu berhati-hati saat menggunakannya.

5.3 Mengedit Pengguna

Untuk mengubah informasi pengguna yang sudah ada, gunakan perintah usermod.

5.3.1 Mengubah Nama Pengguna

Contoh Perintah
sudo usermod -l newname oldname

Perintah ini akan mengubah oldname menjadi newname.

5.3.2 Mengubah Direktori Home

Jika Anda ingin mengubah direktori home pengguna, gunakan opsi -d.

Contoh Perintah
sudo usermod -d /new/home/path user1
Memindahkan Direktori Home Saat Ini ke Lokasi Baru
sudo usermod -d /home/newuser -m user1

5.3.3 Mengubah Grup Pengguna

Untuk menambahkan pengguna tertentu ke grup lain atau mengubah grup tempatnya berada, gunakan usermod -aG.

Menambahkan Pengguna ke Grup sudo
sudo usermod -aG sudo user1
Memeriksa Grup Saat Ini
groups user1

5.3.4 Mengubah Kata Sandi Pengguna

Administrator dapat mengubah kata sandi pengguna tertentu menggunakan perintah passwd.

Contoh Perintah
sudo passwd user1
Contoh Output
Enter new UNIX password: ********
Retype new UNIX password: ********
passwd: password updated successfully

Dengan perintah ini, kata sandi user1 akan diubah.

6. Contoh Pemanfaatan Berdasarkan Skenario

Manajemen pengguna di Ubuntu tidak hanya sebatas melihat daftar, menambah, atau menghapus, tetapi juga penting untuk mengetahui metode manajemen yang sesuai dengan situasi tertentu. Di bagian ini, kami akan memperkenalkan contoh pemanfaatan perintah sesuai dengan skenario umum.

6.1 Mencari Pengguna Berdasarkan Kriteria Tertentu

6.1.1 Menampilkan Daftar Administrator (Pengguna dengan Hak Akses Sudo)

Jika administrator sistem ingin memeriksa pengguna yang memiliki hak akses sudo, mereka dapat mencari di file /etc/group dengan perintah getent.

Contoh Perintah
getent group sudo
Contoh Output
sudo:x:27:user1,user2

Penjelasan Hasil Output

  • sudo:x:27: → Informasi grup sudo
  • user1,user2 → Pengguna yang termasuk dalam grup sudo

Dengan metode ini, Anda dapat dengan cepat memeriksa pengguna yang memiliki hak akses administrator.

6.1.2 Menampilkan Daftar Pengguna yang Dapat Login

Biasanya, /etc/passwd menyertakan pengguna sistem, tetapi untuk memeriksa pengguna yang benar-benar dapat login, akan lebih mudah untuk mencari pengguna dengan shell default.

Contoh Perintah
grep '/bin/bash' /etc/passwd
Contoh Output
user1:x:1001:1001::/home/user1:/bin/bash
user2:x:1002:1002::/home/user2:/bin/bash

Keuntungan Metode Ini

  • Hanya menampilkan pengguna yang memiliki /bin/bash atau /bin/sh
  • Pengguna dengan pengaturan nologin (misalnya, akun sistem) akan dikecualikan

6.1.3 Menampilkan Daftar Pengguna Sistem (Tidak Dapat Login)

Pengguna sistem biasanya memiliki /usr/sbin/nologin atau /bin/false yang diatur, jadi Anda dapat memeriksanya dengan perintah berikut:

Contoh Perintah
grep -E '/usr/sbin/nologin|/bin/false' /etc/passwd
Contoh Output
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
syslog:x:104:110::/home/syslog:/bin/false

Dengan memeriksa akun sistem, Anda dapat berhati-hati agar tidak menghapusnya secara tidak sengaja.

6.2 Cara Menghapus Pengguna yang Tidak Diperlukan Secara Berkala

6.2.1 Menampilkan Daftar Pengguna yang Terakhir Login

Untuk menghapus pengguna yang sudah lama tidak login, periksa riwayat login menggunakan perintah lastlog.

Contoh Perintah
lastlog
Contoh Output
Username         Port     From               Latest
root             tty1                        Mon Feb 12 14:02:08 +0000 2025
user1            pts/0    192.168.1.10       Mon Jan 15 10:30:12 +0000 2025
user2            pts/1    192.168.1.20       Never logged in
  • Never logged in → Pengguna yang belum pernah login

Berdasarkan informasi ini, Anda dapat memutuskan apakah akan menghapus akun yang tidak diperlukan.

Perintah Penghapusan Akun
sudo deluser user2 --remove-home

6.2.2 Memeriksa Tanggal Perubahan Kata Sandi Terakhir

Perintah chage memungkinkan Anda untuk memeriksa tanggal terakhir pengguna mengubah kata sandi.

Contoh Perintah
sudo chage -l user1
Contoh Output
Last password change          : Jan 15, 2025
Password expires              : Mar 15, 2025
Password inactive             : never

Jika kata sandi sudah lama tidak diubah, Anda juga dapat memaksa perubahan sebagai langkah keamanan.

Memaksa Perubahan Kata Sandi
sudo passwd --expire user1

Dengan ini, pengguna harus mengatur kata sandi baru saat login berikutnya.

6.3 Memeriksa Pengguna yang Terhubung Melalui SSH

Saat manajemen jarak jauh, penting untuk memeriksa pengguna yang sedang terhubung melalui SSH.

Contoh Perintah
who | grep pts
Contoh Output
user1    pts/0         192.168.1.10      11:30

Dengan ini, Anda dapat memeriksa pengguna yang terhubung secara jarak jauh dan alamat IP mereka.

6.4 Mengekspor Informasi Semua Pengguna ke CSV Secara Massal

Jika administrator sistem ingin membuat daftar dan menyimpan informasi semua pengguna, perintah getent dapat dimanfaatkan.

Contoh Perintah
getent passwd | awk -F: '{print $1 "," $3 "," $4 "," $6}' > users.csv
Output (Isi users.csv)
root,0,0,/root
user1,1001,1001,/home/user1
user2,1002,1002,/home/user2
  • Nama pengguna, UID, GID, dan direktori home diekspor dalam format CSV
  • Dapat dianalisis di Excel atau spreadsheet

7. FAQ (Pertanyaan yang Sering Diajukan)

Berikut adalah ringkasan pertanyaan umum mengenai manajemen pengguna Ubuntu. Informasi ini akan berguna untuk pemecahan masalah dan administrasi.

7.1 Apakah aman untuk langsung mengedit /etc/passwd?

Jawaban

Mengedit secara langsung tidak disarankan. /etc/passwd adalah file sistem yang penting, dan pengeditan yang salah dapat menyebabkan Anda tidak dapat login.

Metode yang Direkomendasikan

Anda dapat mengedit dengan aman menggunakan perintah usermod atau vipw.

Metode Pengeditan Aman
sudo vipw

Ini memungkinkan Anda mengedit /etc/passwd dalam lingkungan yang aman dan terkunci.

7.2 Apa perbedaan antara perintah who dan users?

Jawaban

PerintahDeskripsi
whoMenampilkan pengguna yang sedang login secara detail (waktu login, terminal)
usersMenampilkan hanya nama pengguna yang sedang login secara sederhana

Contoh Eksekusi

who

Contoh Output

user1    tty1          2025-02-16 10:05
user2    pts/0         2025-02-16 11:30
users

Contoh Output

user1 user2

who memberikan informasi yang lebih detail.

7.3 Bagaimana cara memeriksa riwayat login pengguna tertentu?

Jawaban

Anda dapat memeriksa riwayat login pengguna tertentu menggunakan perintah last.

Contoh Perintah
last user1
Contoh Output
user1    pts/0         192.168.1.10      Mon Feb 15 10:20   still logged in
user1    tty1                              Mon Feb 10 09:30 - 10:00  (00:30)

Ini memungkinkan Anda untuk memeriksa dari terminal/alamat IP mana login dilakukan.

7.4 Bagaimana cara mengubah kata sandi pengguna?

Jawaban

Administrator dapat mengubah kata sandi pengguna tertentu menggunakan perintah passwd.

Contoh Perintah
sudo passwd user1
Contoh Output
Enter new UNIX password: ********
Retype new UNIX password: ********
passwd: password updated successfully

Pengguna yang kata sandinya diubah harus menggunakan kata sandi baru saat login berikutnya.

7.5 Apakah ada cara untuk menonaktifkan pengguna sementara?

Jawaban

Anda dapat menonaktifkan pengguna sementara menggunakan perintah usermod.

Mengunci Akun
sudo usermod -L user1

Perintah ini akan mengunci akun user1 sementara, sehingga tidak dapat login.

Membuka Kunci Akun
sudo usermod -U user1

Dengan perintah ini, Anda dapat mengaktifkan kembali login untuk user1.

7.6 Bagaimana cara menambahkan pengguna tertentu ke grup sudo?

Jawaban

Anda dapat menambahkan pengguna tertentu ke grup sudo menggunakan perintah usermod.

Contoh Perintah
sudo usermod -aG sudo user1

Setelah ditambahkan, pengguna user1 akan dapat menggunakan perintah sudo.

7.7 Bagaimana cara mengubah direktori home pengguna?

Jawaban

Anda dapat mengubah direktori home pengguna menggunakan usermod -d.

Contoh Perintah
sudo usermod -d /new/home/path -m user1
Contoh Output
user1 home directory has been moved to /new/home/path

Dengan perintah ini, direktori home user1 akan diubah ke path baru.

7.8 Bagaimana cara menghapus pengguna secara permanen dan menghapus datanya?

Jawaban

Anda dapat menghapus pengguna dan direktori home-nya menggunakan deluser atau userdel.

Contoh Perintah
sudo deluser --remove-home user1

Atau,

sudo userdel -r user1

Ketika perintah ini dijalankan, pengguna user1 dan direktori home-nya /home/user1 akan dihapus sepenuhnya.

7.9 Bagaimana cara memeriksa aktivitas detail pengguna yang sedang login?

Jawaban

Anda dapat memeriksa aktivitas detail pengguna yang login menggunakan perintah w.

Contoh Perintah
w
Contoh Output
 11:35:25 up 2:15,  2 users,  load average: 0.03, 0.02, 0.00
USER       TTY      FROM               LOGIN@   IDLE   JCPU   PCPU WHAT
user1      tty1                        10:05    1:30m  0.10s  0.10s -bash
user2      pts/0    192.168.1.10       11:30    0.00s  0.05s  0.02s sshd
  • Pengguna yang login
  • IP koneksi jarak jauh
  • Proses saat ini (kolom WHAT)
  • Beban sistem (load average)

Ini memungkinkan Anda untuk memeriksa pengguna mana yang sedang melakukan tugas apa.