Manajemen User di Ubuntu 22.04 LTS

Syslab.id – Tutorial kali ini kami akan membahas tentang bagaimana cara melakukan manajemen user di sistem operasi Linux Ubuntu 22.04 LTS.

Pengenalan

Mengelola akses ke sistem operasi Linux dan resources adalah tugas penting bagi seorang system Administrator. Jika permission user diatur tidak tepat, maka bisa menjadi celah keamanan atau bahkan membuat sistem Linux tidak bisa digunakan. Itulah pentingnya manajemen user di sistem operasi Linux

Tipe User Account di Linux

Tipe User/AccountLevel AksesPenggunaan
Root UserAkses ke seluruh sistem Linux. User root dapat memulai perintah apa pun, memodifikasi pengaturan sistem, mengedit file, atau menginstal perangkat lunak tanpa batasanTerutama digunakan untuk melakukan tugas administrasi sistem.
Standar UserHak istimewa user terbatas. User standar tidak dapat melakukan tindakan yang memengaruhi pengaturan sistem inti atau user account lain.Akses dasar untuk memanfaatkan berbagai sumber daya sistem
Sudo UserUser standar yang telah diberikan permission untuk menjalankan perintah tertentu sebagai user root.Setiap perintah yang memerlukan hak akses root harus diawali dengan perintah sudo.
System AccountUser account untuk aplikasi atau layanan otomatis yang perlu melakukan tugas-tugas tertentu pada sistem Linux.System Account beroperasi dengan permission terbatas untuk meningkatkan keamanan dan kontrol atas operasi sistem.
Guest UserTemporary account dengan hak istimewa yang dibatasi dan dikontrol.User yang memerlukan akses untuk waktu terbatas dan tidak memerlukan file dan pengaturan pribadi.
User GroupsPermission diberikan kepada kumpulan user yang diatur ke dalam grup logis dengan permission yang sama.Admin dapat mengelola permission untuk seluruh group user, bukan mengelola user account secara individual.

Perintah Melakukan Manajemen User

Pada panduan ini, kami akan menunjukkan cara melakukan manajemen user di sistem operasi Linux dengan tepat.

Baca juga : Perintah Dasar Linux ~ Syslab.id

Cek User Login

Untuk mengetahui adanya user yang sedang login di sistem operasi Ubuntu Anda dapat menggunakan command who, dengan perintah ini Anda dapat melihat daftar user yang sedang login ke sistem operasi Linux

ubuntu@syslab:~$ who
ubuntu   pts/0        2025-01-27 17:29 (10.3.4.254)
ubuntu@syslab:~$ 

Anda dapat menambahkan opsi -H untuk melihat detail header pada kolom informasi diatas

ubuntu@syslab:~$ who -H
NAME     LINE         TIME             COMMENT
ubuntu   pts/0        2025-01-27 17:29 (10.3.4.254)
ubuntu@syslab:~$

List Semua User

File /etc/passwd berisi data tentang semua user di sistem operasi Linux, terdapat beberapa perintah linux yang dapat digunakan seperti cat, awk dan getent sebagai contoh kami berikut kami menggunakan perintah cat untuk melihat semua user yang ada di sistem operasi Linux

ubuntu@syslab:~$ cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/usr/sbin/nologin
man:x:6:12:man:/var/cache/man:/usr/sbin/nologin
lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin
mail:x:8:8:mail:/var/mail:/usr/sbin/nologin
news:x:9:9:news:/var/spool/news:/usr/sbin/nologin
uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin
proxy:x:13:13:proxy:/bin:/usr/sbin/nologin
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
backup:x:34:34:backup:/var/backups:/usr/sbin/nologin
list:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologin
irc:x:39:39:ircd:/run/ircd:/usr/sbin/nologin
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/usr/sbin/nologin
nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin
systemd-network:x:100:102:systemd Network Management,,,:/run/systemd:/usr/sbin/nologin
systemd-resolve:x:101:103:systemd Resolver,,,:/run/systemd:/usr/sbin/nologin
messagebus:x:102:105::/nonexistent:/usr/sbin/nologin
systemd-timesync:x:103:106:systemd Time Synchronization,,,:/run/systemd:/usr/sbin/nologin
syslog:x:104:111::/home/syslog:/usr/sbin/nologin
_apt:x:105:65534::/nonexistent:/usr/sbin/nologin
tss:x:106:112:TPM software stack,,,:/var/lib/tpm:/bin/false
uuidd:x:107:113::/run/uuidd:/usr/sbin/nologin
tcpdump:x:108:114::/nonexistent:/usr/sbin/nologin
sshd:x:109:65534::/run/sshd:/usr/sbin/nologin
pollinate:x:110:1::/var/cache/pollinate:/bin/false
landscape:x:111:116::/var/lib/landscape:/usr/sbin/nologin
fwupd-refresh:x:112:117:fwupd-refresh user,,,:/run/systemd:/usr/sbin/nologin
ubuntu:x:1000:1000:Ubuntu:/home/ubuntu:/bin/bash
lxd:x:999:100::/var/snap/lxd/common/lxd:/bin/false
ubuntu@syslab:~$ 

Terdapat beberapa alternatif perintah selain cat untuk melihat user yang ada di sistem operasi linux seperti more command atau less command

ubuntu@syslab:~$ more /etc/passwd
ubuntu@syslab:~$ less /etc/passwd

Membuat User di Linux Ubuntu

Untuk membuat user di Linux Ubuntu Anda dapat menggunakan perintah useradd atau adduser

ubuntu@syslab:~$ sudo useradd user1
ubuntu@syslab:~$ 

Jika sudah cek apakah user sudah terbuat menggunakan cat command

ubuntu@syslab:~$ cat /etc/passwd |grep user1
user1:x:1001:1001::/home/user1:/bin/sh
ubuntu@syslab:~$ 

Dengan perintah diatas Anda sudah menambahkan user1, Anda juga dapat menambahkan user menggunakan adduser. Perintah ini secara otomatis membuat direktori home untuk user, menetapkan shell default, dan meminta user untuk memasukkan password pada saat pembuatan user, seperti berikut:

ubuntu@syslab:~$ sudo adduser user2
Adding user `user2' ...
Adding new group `user2' (1002) ...
Adding new user `user2' (1002) with group `user2' ...
Creating home directory `/home/user2' ...
Copying files from `/etc/skel' ...
New password: 
Retype new password: 
passwd: password updated successfully
Changing the user information for user2
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] 
ubuntu@syslab:~$ 

Dengan perintah diatas Anda sudah berhasil membuat user sekaligus set password ke user tersebut dan direktori default user di direktori /home/ juga sudah terbuat berikut:

ubuntu@syslab:~$ ll /home/
total 16
drwxr-xr-x  4 root   root   4096 Jan 27 18:04 ./
drwxr-xr-x 19 root   root   4096 Jan 23 11:06 ../
drwxr-x---  4 ubuntu ubuntu 4096 Jan 27 17:52 ubuntu/
drwxr-x---  2 user2  user2  4096 Jan 27 18:04 user2/
ubuntu@syslab:~$ 

Lalu jika Anda ingin melakukan reset password pada user yang sudah dibuat bisa menggunakan perintah passwd

ubuntu@syslab:~$ sudo passwd user1
New password: 
Retype new password: 
passwd: password updated successfully
ubuntu@syslab:~$ 

Modifikasi Pengaturan Default User (usermod)

Perintah usermod di Linux digunakan untuk memodifikasi berbagai atribut dari user yang sudah ada. Anda dapat menggunakan beberapa opsi dengan perintah dibawah ini untuk mengubah data tertentu:

  • -d : Mengubah direktori home user.
  • -s : Mengubah shell default user.
  • -e : Menetapkan tanggal kedaluwarsa user.
  • -c : Menambahkan komentar ke entri user.
  • -u : Mengubah UID (User ID) user.
  • -aG : Menambahkan user ke grup tambahan tanpa menghapus keanggotaan grup yang sudah ada.

Pada perintah berikut, opsi -d digunakan untuk mengubah lokasi direktori home user:

ubuntu@syslab:~$ sudo usermod -d /var/user1 user1
ubuntu@syslab:~$ cat /etc/passwd |grep user1
user1:x:1001:1001::/var/user1:/bin/sh
ubuntu@syslab:~$ 

Dari contoh perintah diatas direktori home untuk user user1 diubah dari /home/user1 menjadi /var/user1

Menghapus Pengguna (userdel)

Perintah userdel digunakan untuk menghapus user dari file /etc/passwd. Sebagai contoh, untuk menghapus user user2, gunakan perintah berikut:

ubuntu@syslab:~$ sudo userdel user2
ubuntu@syslab:~$

Ubah user2 dengan nama user yang ingin Anda hapus. Perintah userdel tidak secara otomatis menghapus direktori home pengguna atau file terkait lainnya. Anda dapat menggunakan opsi -r untuk menghapus direktori home dan mail spool:

ubuntu@syslab:~$ userdel -r user2
ubuntu@syslab:~$ 

Perintah Melakukan Manajemen User dan Group

Grup user di Linux mempermudah pengelolaan izin dan aturan akses untuk sekumpulan user. Mengubah izin atau hak akses suatu grup akan menerapkan perubahan ke semua user dalam grup.

Membuat Grup

Gunakan perintah dibawah ini untuk membuat grup user baru di Linux

ubuntu@syslab:~$ sudo groupadd usertest
ubuntu@syslab:~$ 

Ubah usertest dengan nama grup yang ingin Anda buat. Gunakan perintah getent untuk memastikan grup baru sudah ada di dalam file direktori /etc/group Linux

ubuntu@syslab:~$ getent group usertest
usertest:x:1002:
ubuntu@syslab:~$ 

Perintah diatas digunakan untuk menampilkan detail group yang sudah Anda buat usertest, termasuk nama dan ID-nya.

Cara Menambahkan atau Menghapus User dari Grup (usermod)

Pada saat Anda menambahkan user ke dalam sebuah grup, maka secara otomatis mendapatkan izin yang terkait dengan grup tersebut. Di sistem operasi Linux Ubuntu, Anda dapat menggunakan perintah adduser untuk menambahkan pengguna ke grup yang sudah ada

ubuntu@syslab:~$ sudo adduser user1 usertest
Adding user `user1' to group `usertest' ...
Adding user user1 to group usertest
Done.
ubuntu@syslab:~$ 

Dengan perintah diatas maka user1 sudah di tambahkan ke grup usertest.

Perintah usermod dapat digunakan dengan menambahkan opsi -a (append) dan -G (groups) untuk menambahkan user ke grup yang sudah ada tanpa menghapusnya dari grup saat ini (existing group)

ubuntu@syslab:~$ sudo usermod -aG usertest user1
ubuntu@syslab:~$ sudo usermod -aG usertest user2
ubuntu@syslab:~$ 

Anda dapat memastikan apakah user1 dan user2 sudah ada di grup usertest menggunakan perintah groups [user]

ubuntu@syslab:~$ groups user1 user2
user1 : user1 usertest
user2 : user2 usertest
ubuntu@syslab:~$ 

Anda juga dapat menghapus user yang ada di spesifik grup misalkan kami akan menghapus user2 yang ada di grup usertest, gunakan perintah berikut

ubuntu@syslab:~$ sudo deluser user2 usertest
Removing user `user2' from group `usertest' ...
Done.
ubuntu@syslab:~$ 

Menampilkan Semua Grup yang Diikuti oleh User (id)

Gunakan perintah id untuk menampilkan daftar grup yang diikuti oleh user:

ubuntu@syslab:~$ id user1
uid=1001(user1) gid=1001(user1) groups=1001(user1),1002(usertest)
ubuntu@syslab:~$ 

Opsi -n dan -G pada perintah id digunakan untuk menampilkan nama grup saja, bukan ID numeriknya.

ubuntu@syslab:~$ id -nG user1
user1 usertest
ubuntu@syslab:~$

List Semua Grup dan User

Data tentang user dan grup disimpan dalam file /etc/group. Gunakan perintah berikut untuk mengambil semua grup user, ID grup

ubuntu@syslab:~$ getent group
root:x:0:
daemon:x:1:
bin:x:2:
sys:x:3:
adm:x:4:syslog,ubuntu
tty:x:5:
disk:x:6:
lp:x:7:
mail:x:8:
news:x:9:
uucp:x:10:
man:x:12:
proxy:x:13:
kmem:x:15:
dialout:x:20:ubuntu
fax:x:21:
voice:x:22:
cdrom:x:24:ubuntu
floppy:x:25:ubuntu
tape:x:26:
sudo:x:27:ubuntu
audio:x:29:ubuntu
dip:x:30:ubuntu
www-data:x:33:
backup:x:34:
operator:x:37:
list:x:38:
irc:x:39:
src:x:40:
gnats:x:41:
shadow:x:42:
utmp:x:43:
video:x:44:ubuntu
sasl:x:45:
plugdev:x:46:ubuntu
staff:x:50:
games:x:60:
users:x:100:
nogroup:x:65534:
systemd-journal:x:101:
systemd-network:x:102:
systemd-resolve:x:103:
crontab:x:104:
messagebus:x:105:
systemd-timesync:x:106:
input:x:107:
sgx:x:108:
kvm:x:109:
render:x:110:
syslog:x:111:
tss:x:112:
uuidd:x:113:
tcpdump:x:114:
_ssh:x:115:
landscape:x:116:
fwupd-refresh:x:117:
admin:x:118:
netdev:x:119:ubuntu
lxd:x:120:ubuntu
ubuntu:x:1000:
user1:x:1001:
usertest:x:1002:user1
user2:x:1003:
ubuntu@syslab:~$ 

Anda dapat memparsing list tersebut untuk mengekstrak user grup menggunakan perintah awk

ubuntu@syslab:~$ getent group | awk -F: '$4 != "" {print $1 ": " $4}'
adm: syslog,ubuntu
dialout: ubuntu
cdrom: ubuntu
floppy: ubuntu
sudo: ubuntu
audio: ubuntu
dip: ubuntu
video: ubuntu
plugdev: ubuntu
netdev: ubuntu
lxd: ubuntu
usertest: user1
ubuntu@syslab:~$ 

Dengan mengikuti langkah-langkah dalam panduan ini, Anda dapat mengelola manajemen user di sistem operasi Linux dengan efektif

Sampai disini Anda sudah berhasil melakukan manajemen user dan grup di Linux Ubuntu Server.

Selamat mencoba 🔥

Tagged with:
LSA

Penulis dan pengelola konten di Syslab ID. Dengan latar belakang di bidang sistem administrasi dan IT infrastruktur, Admin Syslab bertujuan untuk menyediakan materi yang mudah dipahami dan bermanfaat bagi pemula yang ingin memulai karir di dunia IT, khususnya dalam sistem operasi, virtualisasi, dan automasi

You might also like
Nginx Reverse Proxy di Ubuntu 22.04 LTS

Nginx Reverse Proxy di Ubuntu 22.04 LTS

Instalasi PHP di Ubuntu Server 22.04 LTS

Instalasi PHP di Ubuntu Server 22.04 LTS

Cara Menjalankan Apache dan Nginx Secara Bersamaan di Ubuntu 22.04 LTS

Cara Menjalankan Apache dan Nginx Secara Bersamaan di Ubuntu 22.04 LTS

Nginx Web Server di Ubuntu 22.04 LTS

Nginx Web Server di Ubuntu 22.04 LTS

Apache Web Server di Ubuntu 22.04 LTS

Apache Web Server di Ubuntu 22.04 LTS

Mengenal Apa itu Web Server

Mengenal Apa itu Web Server