---
title: "Cara Membuat User Baru dan Memberi Akses sudo di Linux"
description: "Langkah membuat user baru, memberi akses sudo di Ubuntu, Debian, dan AlmaLinux, memasang SSH key, lalu menutup login root dengan aman."
url: "https://nivelva.com/insight/cara-membuat-user-baru-memberi-akses-sudo-linux"
category: "Server \u0026 Infrastruktur"
tags: ["linux","sudo","user","ssh","keamanan server"]
author: "Theresia Candiawan"
published: "2026-11-07T04:52:00+07:00"
updated: "2026-11-07T04:52:00+07:00"
language: "id"
publisher: "Nivelva (https://nivelva.com)"
---

# Cara Membuat User Baru dan Memberi Akses sudo di Linux

> **Jawaban singkat:** Buat user dengan adduser (Ubuntu/Debian) atau useradd dan passwd (AlmaLinux), lalu masukkan ke grup sudo atau wheel. Uji dengan sudo whoami, pasang SSH key untuk user itu, baru matikan login root lewat SSH.

Masih login ke server memakai akun root setiap hari? Banyak VPS baru memang hanya memberi akses root, dan itu wajar di menit pertama. Tetapi untuk pemakaian sehari-hari, lebih aman bekerja dengan user biasa yang punya akses `sudo`.

Caranya singkat: buat user baru, masukkan ke grup admin (`sudo` di Ubuntu dan Debian, `wheel` di AlmaLinux), uji, pasang SSH key, lalu tutup login root. Dengan begitu setiap perintah berbahaya harus diawali `sudo` dan tercatat di log, dan penyerang tidak bisa langsung menebak nama akun root. Alasan lengkap kenapa akses root perlu dijaga ada di [apa itu akses root di VPS](https://nivelva.com/insight/apa-itu-akses-root-penting-vps).

## Langkah membuat user dan memberi akses sudo

Contoh di bawah memakai nama user `budi`. Ganti dengan nama yang kamu pakai, sebaiknya huruf kecil tanpa spasi.

### Langkah 1: Login sebagai root dan buat user

Di **Ubuntu dan Debian**, pakai `adduser`. Perintah ini interaktif: membuat folder `/home/budi`, meminta password, lalu menanyakan data opsional seperti nama lengkap (boleh dikosongkan dengan Enter).

```
adduser budi
```

Di **AlmaLinux 9**, `adduser` hanya tautan ke `useradd`, yang tidak menanyakan password. Jadi jalankan dua perintah:

```
useradd -m budi
passwd budi
```

Opsi `-m` memastikan folder home dibuat. Pakai password yang panjang, karena password ini dipakai setiap kali menjalankan `sudo`.

### Langkah 2: Pastikan paket sudo terpasang

Ubuntu dan AlmaLinux sudah membawa `sudo`. Debian versi minimal kadang belum, terutama bila saat instalasi kamu mengisi password root. Cek dan pasang bila perlu:

```
which sudo || apt install sudo
```

### Langkah 3: Masukkan user ke grup admin

```
# Ubuntu dan Debian
usermod -aG sudo budi

# AlmaLinux, Rocky, dan keluarga Red Hat
usermod -aG wheel budi
```

Perhatikan opsi `-aG`. Huruf `a` berarti "tambahkan". Kalau lupa dan hanya menulis `-G`, user akan dikeluarkan dari grup tambahan lain yang sudah dimilikinya. Grup `sudo` dan `wheel` sudah diberi izin penuh di file `/etc/sudoers` bawaan distro, jadi kamu tidak perlu mengedit file itu.

### Langkah 4: Uji aksesnya

Jangan tutup sesi root dulu. Pindah ke user baru dan coba:

```
su - budi
groups
sudo whoami
```

`groups` harus menampilkan `sudo` atau `wheel`. Setelah memasukkan password budi, `sudo whoami` harus menjawab `root`. Kalau muncul pesan "budi is not in the sudoers file", ulangi langkah 3. Perubahan grup baru berlaku pada sesi login baru, jadi keluar dulu dengan `exit` lalu `su - budi` lagi bila perlu.

### Langkah 5: Pasang SSH key untuk user baru

Login dengan SSH key jauh lebih aman daripada password, seperti dibahas di [SSH key vs password](https://nivelva.com/insight/ssh-key-vs-password). Dari komputermu sendiri (bukan di server), jalankan:

```
ssh-copy-id budi@IP_SERVER
```

Kalau kamu sudah login root dengan key dan ingin memakai key yang sama, salin dari root di server:

```
mkdir -p /home/budi/.ssh
cp /root/.ssh/authorized_keys /home/budi/.ssh/
chown -R budi:budi /home/budi/.ssh
chmod 700 /home/budi/.ssh
chmod 600 /home/budi/.ssh/authorized_keys
```

Permission yang terlalu longgar di folder `.ssh` membuat SSH menolak key tersebut, jadi perintah `chmod` di atas penting. Uji dari jendela terminal baru: `ssh budi@IP_SERVER` harus masuk tanpa meminta password server.

### Langkah 6: Matikan login root lewat SSH

Setelah yakin user baru bisa login dan menjalankan `sudo`, buka config SSH:

```
sudo nano /etc/ssh/sshd_config
```

Ubah atau tambahkan baris `PermitRootLogin no`. Beberapa distro juga membaca file tambahan di `/etc/ssh/sshd_config.d/`, jadi pastikan tidak ada file di sana yang menimpa pengaturan ini. Lalu cek dan muat ulang:

```
sudo sshd -t
sudo systemctl restart ssh    # Ubuntu dan Debian
sudo systemctl restart sshd   # AlmaLinux
```

`sshd -t` tidak mengeluarkan apa pun bila config benar. Tetap biarkan satu sesi lama terbuka sampai kamu berhasil login ulang dari jendela baru. Langkah pengamanan lanjutan ada di [cara mengamankan VPS Linux baru](https://nivelva.com/insight/cara-mengamankan-vps-baru).

## Bagaimana memberi akses sudo yang lebih terbatas?

Tidak semua orang perlu akses penuh. Misalnya staf yang hanya perlu me-restart Nginx. Buat file khusus dengan `visudo`, yang memeriksa sintaks sebelum menyimpan:

```
sudo visudo -f /etc/sudoers.d/staf-web
```

Isi dengan satu baris:

```
andi ALL=(root) /usr/bin/systemctl restart nginx, /usr/bin/systemctl reload nginx
```

User `andi` kini hanya bisa menjalankan dua perintah itu dengan `sudo`. Selalu pakai `visudo`, karena kesalahan ketik di file sudoers bisa membuat `sudo` tidak bisa dipakai sama sekali. Hindari juga `NOPASSWD:ALL` untuk akun manusia, sebab siapa pun yang berhasil masuk ke akun itu langsung menjadi root tanpa hambatan.

## Ringkasan perintah per distro

| Tugas | Ubuntu dan Debian | AlmaLinux 9 |
|:--|:--|:--|
| Membuat user | `adduser budi` | `useradd -m budi` lalu `passwd budi` |
| Grup admin | `sudo` | `wheel` |
| Memberi akses sudo | `usermod -aG sudo budi` | `usermod -aG wheel budi` |
| Mencabut akses sudo | `gpasswd -d budi sudo` | `gpasswd -d budi wheel` |
| Menghapus user dan home | `deluser --remove-home budi` | `userdel -r budi` |
| Restart SSH | `systemctl restart ssh` | `systemctl restart sshd` |
| Log pemakaian sudo | `/var/log/auth.log` | `/var/log/secure` |

## Pertanyaan yang sering diajukan

### Apakah boleh punya lebih dari satu user dengan akses sudo?

Boleh, dan dianjurkan bila ada beberapa admin. Setiap orang sebaiknya punya akun sendiri supaya log menunjukkan siapa menjalankan perintah apa.

### Bagaimana kalau saya terkunci setelah mematikan login root?

Gunakan konsol VNC atau konsol darurat di panel penyedia VPS. Dari sana kamu bisa login langsung tanpa SSH dan memperbaiki sshd_config.

### Kenapa sudo meminta password setiap beberapa menit?

Itu perilaku bawaan. Setelah password dimasukkan, sudo mengingatnya sebentar (bawaannya 15 menit per terminal), lalu meminta lagi. Ini sengaja supaya terminal yang ditinggal tidak bisa disalahgunakan lama.

### Apa bedanya su dan sudo?

su berpindah menjadi user lain dan memakai password user tujuan, misalnya password root. sudo menjalankan satu perintah sebagai root dengan password milikmu sendiri dan setiap pemakaiannya tercatat.

## Checklist singkat

- User baru dibuat dengan password kuat.
- User masuk grup `sudo` atau `wheel`, dan `sudo whoami` menjawab `root`.
- SSH key terpasang dengan permission 700 dan 600.
- Login dengan user baru dari jendela terminal baru berhasil.
- `PermitRootLogin no` aktif, `sshd -t` bersih, SSH sudah di-restart.
- Akses terbatas dibuat lewat `visudo -f /etc/sudoers.d/...`.

## Sumber

- <https://manpages.ubuntu.com/manpages/noble/man8/adduser.8.html>
- <https://www.sudo.ws/docs/man/sudoers.man/>

---

Diterbitkan oleh Nivelva Insight (https://nivelva.com/insight/). Artikel ini: https://nivelva.com/insight/cara-membuat-user-baru-memberi-akses-sudo-linux
Kontak Nivelva: WhatsApp https://wa.me/6285111245007, email hello@nivelva.com
