Pertemuan 2: Manajemen Pengguna dan Grup

1. Pendahuluan

Setelah memahami peran dasar administrator sistem, pada pertemuan ini kita akan masuk ke salah satu tugas paling fundamental: mengelola pengguna dan grup.

Penting: Setiap sistem operasi multi-pengguna memerlukan manajemen identitas yang baik untuk menjamin keamanan, akuntabilitas, dan organisasi akses sumber daya.

2. Konsep Dasar: User dan Group

User (Pengguna)
  • Representasi seorang pengguna di dalam sistem
  • UID (User ID) - Identifikasi unik user
  • GID (Group ID) - Group primary user
  • Home Directory - Direktori pribadi user
  • Shell Default - Environment shell user
Group (Grup)
  • Kumpulan pengguna dengan hak akses sama
  • Memudahkan pemberian hak akses kolektif
  • GID (Group ID) - Identifikasi unik group
  • User bisa menjadi anggota multiple groups
  • Primary group vs secondary groups

3. Jenis-jenis Pengguna

Jenis User Deskripsi Contoh Hak Akses
User Biasa Akun untuk pengguna sehari-hari alice, bob, charlie Terbatas pada direktori sendiri
User Sistem Akun untuk layanan/aplikasi www-data, mysql, postfix Khusus service, no login
Superuser (Root) Administrator sistem root Hak akses penuh ke seluruh sistem

4. Manajemen User dan Grup di Linux

File Konfigurasi Penting:
/etc/passwd
Menyimpan informasi user
root:x:0:0:root:/root:/bin/bash
alice:x:1000:1000:Alice:/home/alice:/bin/bash
/etc/shadow
Menyimpan password terenkripsi
root:$6$...:18545:0:99999:7:::
alice:$6$...:18546:0:99999:7:::
/etc/group
Menyimpan informasi grup
root:x:0:
sudo:x:27:alice
developers:x:1001:alice,bob
Perintah Dasar Manajemen User:
useradd - Menambah user baru
useradd -m -s /bin/bash -c "Alice User" alice
usermod - Memodifikasi user
usermod -aG sudo alice
userdel - Menghapus user
userdel -r alice
passwd - Mengatur password
passwd alice
Perintah Manajemen Grup:
groupadd - Membuat grup baru
groupadd developers
usermod - Menambah user ke grup
usermod -aG developers alice

5. Manajemen User dan Grup di Windows

Graphical Interface:
  • Computer Management → Local Users and Groups
  • Active Directory Users and Computers (domain environment)
PowerShell Commands:
New-LocalUser - Membuat user lokal
New-LocalUser -Name "bob" -Description "IT Department"
Remove-LocalUser - Menghapus user
Remove-LocalUser -Name "bob"
New-LocalGroup - Membuat grup
New-LocalGroup -Name "Developers"
Add-LocalGroupMember - Menambah user ke grup
Add-LocalGroupMember -Group "Administrators" -Member "bob"

6. Hak Akses dan Keamanan

Principle of Least Privilege

Setiap user hanya diberikan hak akses yang diperlukan untuk menjalankan tugasnya.

  • Minimal necessary permissions
  • Reduce attack surface
  • Prevent accidental damage
Sudo di Linux

Memungkinkan user biasa menjalankan perintah sebagai root dengan hak terbatas.

# /etc/sudoers
alice ALL=(ALL) /usr/bin/apt, /usr/bin/systemctl
Kebijakan Keamanan Pengguna:
Password Policy
Minimal length, complexity, expiration
Account Lockout
Lock after failed attempts
Audit & Logging
Monitor user activities

7. Studi Kasus: Perusahaan Kecil

Scenario:

Sebuah perusahaan kecil membutuhkan struktur user dan grup untuk 3 departemen:

Manajer
User: ridwan
Akses: Full system access
Tugas: Supervisi seluruh sistem
Staff IT
User: sinta
Akses: Limited admin rights
Tugas: Maintenance sistem
Karyawan
User: doni
Akses: Basic user rights
Tugas: Operasional harian
Solusi Linux:
# Create groups
groupadd manajer
groupadd staff_ti
groupadd karyawan

# Create users dengan home directory
useradd -m -c "Ridwan Manager" -s /bin/bash -G manajer ridwan
useradd -m -c "Sinta IT Staff" -s /bin/bash -G staff_ti sinta
useradd -m -c "Doni Karyawan" -s /bin/bash -G karyawan doni

# Set passwords
passwd ridwan
passwd sinta
passwd doni

# Berikan sudo access untuk staff_ti
usermod -aG sudo sinta
Solusi Windows PowerShell:
# Create groups
New-LocalGroup -Name "manajer" -Description "Group untuk manajer"
New-LocalGroup -Name "staff_ti" -Description "Group untuk staff IT"
New-LocalGroup -Name "karyawan" -Description "Group untuk karyawan"

# Create users
New-LocalUser -Name "ridwan" -Description "Ridwan Manager"
New-LocalUser -Name "sinta" -Description "Sinta IT Staff"
New-LocalUser -Name "doni" -Description "Doni Karyawan"

# Add to groups
Add-LocalGroupMember -Group "manajer" -Member "ridwan"
Add-LocalGroupMember -Group "staff_ti" -Member "sinta"
Add-LocalGroupMember -Group "karyawan" -Member "doni"
Add-LocalGroupMember -Group "Administrators" -Member "sinta"

8. Praktikum Mandiri

Latihan Hands-on
Exercise 1: Basic User Management
  1. Buat user baru bernama "testuser" dengan home directory
  2. Set password untuk user tersebut
  3. Buat group "developers"
  4. Tambahkan testuser ke group developers
  5. Verifikasi dengan perintah id testuser
Exercise 2: Advanced Configuration
  1. Buat user "serviceuser" tanpa login shell (/usr/sbin/nologin)
  2. Set account expiration date 30 hari dari sekarang
  3. Buat password policy: minimal 8 karakter, expire dalam 90 hari
  4. Configure sudo access untuk group developers
Exercise 3: Troubleshooting

Scenario: User "alice" tidak bisa login ke sistem. Identifikasi kemungkinan masalah:

  • Cek status akun: passwd -S alice
  • Verifikasi shell: cat /etc/passwd | grep alice
  • Check home directory permissions
  • Review auth logs: tail -f /var/log/auth.log

Ringkasan Pembelajaran

Pada pertemuan ini kita telah mempelajari manajemen user dan grup yang merupakan fondasi dari keamanan dan organisasi sistem.

Key Takeaways:
  • Pemahaman konsep user dan group
  • Command-line management di Linux
  • PowerShell management di Windows
  • Security best practices
Next Topic Preview:

Pertemuan berikutnya: Manajemen File dan Direktori termasuk hak akses file menggunakan chmod, chown, dan setfacl.