15 Perintah Useradd yang Berguna dengan Contoh di Linux


Kita semua mengetahui perintah paling populer yang disebut 'useradd' atau 'adduser' di Linux. Ada kalanya Administrator Sistem Linux diminta untuk membuat akun pengguna di Linux dengan properti, batasan, atau komentar tertentu.

Di Linux, perintah 'useradd' adalah utilitas tingkat rendah yang digunakan untuk menambah atau membuat akun pengguna di Linux dan sistem operasi mirip Unix lainnya. Perintah 'adduser' sangat mirip dengan perintah 'useradd', karena ini hanyalah tautan simbolik ke perintah tersebut.

Di beberapa distribusi Linux, perintah ‘useradd‘ mungkin memiliki versi yang sedikit berbeda. Saya sarankan membaca dokumentasi Anda sebelum menggunakan instruksi kami untuk membuat akun pengguna baru di Linux.

Saat kita menjalankan perintah 'useradd' di terminal Linux, ia melakukan tugas-tugas utama berikut:

  • Ia mengedit /etc/passwd, /etc/shadow, /etc/group, dan /etc/gshadow file untuk akun pengguna yang baru dibuat.
  • Membuat dan mengisi direktori home untuk pengguna baru.
  • Menetapkan izin dan kepemilikan ke direktori home.

Sintaks Perintah Tambahkan Pengguna

Sintaks dasar dari perintah 'useradd' adalah:

useradd [options] username

Pada artikel ini, kami akan mendemonstrasikan 15 perintah 'useradd' yang paling umum digunakan dengan contoh praktis di Linux.

1. Cara Menambahkan Pengguna Baru di Linux

Untuk menambah atau membuat pengguna baru, Anda harus menggunakan perintah ‘useradd‘ atau ‘adduser‘ diikuti dengan ‘nama pengguna‘. 'nama pengguna' adalah nama login yang digunakan pengguna untuk login ke sistem.

Hanya satu pengguna yang dapat ditambahkan, dan nama pengguna harus unik, dan belum ada di sistem.

Misalnya, untuk menambahkan pengguna baru bernama 'tecmint' gunakan perintah berikut:

useradd tecmint

Saat kami menambahkan pengguna baru di Linux dengan perintah 'useradd', pengguna tersebut dibuat dalam keadaan terkunci. Untuk membuka kunci akun pengguna tersebut, kita perlu menyetel kata sandi untuk akun tersebut menggunakan perintah 'passwd'.

passwd tecmint

Changing password for user tecmint.
New UNIX password:
Retype new UNIX password:
passwd: all authentication tokens updated successfully.

Setelah pengguna baru dibuat, entrinya secara otomatis ditambahkan ke file '/etc/passwd'. File ini digunakan untuk menyimpan informasi pengguna, dan entri tersebut seharusnya.

tecmint:x:1000:1000:tecmint:/home/tecmint:/bin/bash

Entri di atas berisi tujuh bidang yang dipisahkan titik dua, masing-masing bidang memiliki arti tersendiri.

Mari kita lihat apa saja bidang-bidang ini:

  • Nama Pengguna – Nama login pengguna digunakan untuk masuk ke sistem. Panjangnya harus antara 1 dan 32 karakter.
  • Sandi – Kata sandi pengguna (atau karakter 'x') disimpan dalam file '/etc/shadow' dalam format terenkripsi.
  • User ID (UID) – Setiap pengguna harus memiliki User ID (UID), yang merupakan singkatan dari User Identification Number. Secara default, UID 0 dicadangkan untuk pengguna root, dan UID mulai dari 1 hingga 99 dicadangkan untuk akun lain yang telah ditentukan sebelumnya. Selain itu, UID mulai dari 100 hingga 999 dicadangkan untuk akun sistem dan grup.
  • ID Grup (GID) – ID Grup utama (GID), yang merupakan singkatan dari Nomor Identifikasi Grup, disimpan di ' /etc/group' file.
  • Info Pengguna – Bidang ini bersifat opsional dan memungkinkan Anda menentukan informasi tambahan tentang pengguna, seperti nama lengkap pengguna. Informasi ini dapat diisi dengan menggunakan perintah jari.
  • Direktori Beranda – Lokasi absolut direktori beranda pengguna.
  • Shell – Lokasi absolut shell pengguna, yaitu /bin/bash.

2. Cara Membuat Pengguna dengan Direktori Home Berbeda

Secara default, perintah 'useradd' membuat direktori home pengguna di bawah direktori '/home' dengan nama pengguna. Misalnya, seperti yang terlihat di atas, direktori home default untuk pengguna 'tecmint' adalah '/home/tecmint'.

Namun, perilaku ini dapat diubah dengan menggunakan opsi '-d' bersama dengan lokasi direktori home baru (misalnya, ‘/data/projects‘). Misalnya, perintah berikut akan membuat pengguna 'anusha' dengan direktori home disetel ke '/data/projects'.

useradd -d /data/projects anusha
passwd anusha

Anda dapat melihat direktori home pengguna dan informasi terkait pengguna lainnya, seperti ID pengguna, ID grup, shell, dan komentar menggunakan perintah cat berikut.

cat /etc/passwd | grep anusha

anusha:x:1001:1001::/data/projects:/bin/bash

3. Cara Membuat User dengan User ID Tertentu

Di Linux, setiap pengguna memiliki UID (Nomor Identifikasi Unik) masing-masing. Secara default, saat kita membuat akun pengguna baru di Linux, ia menetapkan ID pengguna 500, 501, 502, dan seterusnya.

Namun, kami dapat membuat pengguna dengan ID pengguna khusus menggunakan opsi '-u'. Misalnya, perintah berikut akan membuat pengguna 'navin' dengan ID pengguna khusus '1002'.

useradd -u 1002 navin

Sekarang, mari kita verifikasi bahwa pengguna dibuat dengan userid yang ditentukan (1002) menggunakan perintah berikut.

cat /etc/passwd | grep navin

navin:x:1002:1002::/home/navin:/bin/bash

CATATAN: Pastikan nilai ID pengguna harus unik dari pengguna lain yang sudah dibuat di sistem.

4. Cara Membuat Pengguna dengan ID Grup Tertentu

Demikian pula, setiap pengguna memiliki GID (Pengidentifikasi Grup) masing-masing. Kita juga dapat membuat pengguna dengan ID grup tertentu menggunakan opsi '-g'.

Dalam contoh ini, kita akan menambahkan pengguna 'tarunika' dengan UID dan GID tertentu secara bersamaan dengan bantuan '- opsi u' dan '-g'.

useradd -u 1005 -g tecmint tarunika

Sekarang, periksa ID pengguna dan ID grup yang ditetapkan di file '/etc/passwd'.

cat /etc/passwd | grep tarunika

tarunika:x:1005:1000::/home/tarunika:/bin/bash

Untuk memverifikasi GID pengguna, gunakan perintah id:

id -gn tarunika

5. Cara Menambahkan Pengguna ke Beberapa Grup

Opsi '-G' digunakan untuk menambahkan pengguna ke grup tambahan. Setiap nama grup dipisahkan dengan koma, tanpa spasi.

Dalam contoh ini, kami menambahkan pengguna 'tecmint' ke beberapa grup, seperti admin, webadmin, dan pengembang.

groupadd admins
groupadd webadmin
groupadd developers
usermod -a -G admins,webadmin,developers tecmint
useradd -G admins,webadmin,developers paddy

Selanjutnya, verifikasi bahwa beberapa grup ditetapkan ke pengguna dengan perintah id.

id tecmint

uid=1000(tecmint) gid=1000(tecmint)
groups=1000(tecmint),1007(admins),1008(webadmin),1009(developers)
context=root:system_r:unconfined_t:SystemLow-SystemHigh

6. Cara Menambahkan Pengguna Tanpa Direktori Home

Dalam situasi tertentu, ketika kita tidak ingin menetapkan direktori home untuk pengguna karena alasan keamanan, direktori home pengguna akan menjadi root ketika mereka masuk ke sistem yang baru saja dimulai ulang. Ketika pengguna tersebut menggunakan perintah ‘su‘, direktori login mereka akan menjadi direktori home pengguna sebelumnya.

Untuk membuat pengguna tanpa direktori home, opsi '-M' digunakan. Misalnya, perintah berikut akan membuat pengguna 'shilpi' tanpa direktori home.

useradd -M shilpi

Sekarang, mari kita verifikasi bahwa pengguna dibuat tanpa direktori home menggunakan perintah ls.

ls -l /home/shilpi

ls: cannot access /home/shilpi: No such file or directory

7. Cara Membuat User Dengan Expiry Date di Linux

Secara default, ketika kita menambahkan pengguna dengan perintah ‘useradd‘, akun pengguna tidak pernah kedaluwarsa, yang berarti tanggal kedaluwarsanya disetel ke 0 (yang berarti tidak pernah kedaluwarsa).

Namun, kita dapat menyetel tanggal kedaluwarsa menggunakan opsi '-e', yang harus dalam format YYYY-MM-DD. Ini berguna untuk membuat akun sementara untuk jangka waktu tertentu.

Dalam contoh ini, kami membuat pengguna 'aparna' dengan tanggal habis masa berlaku akun, yaitu 27 Agustus 2021, di YYYY-MM-DD memformat.

useradd -e 2021-08-27 aparna

Selanjutnya, verifikasi informasi penuaan akun dan kata sandi menggunakan perintah ‘chage‘ untuk pengguna ‘aparna‘ setelah menetapkan tanggal kedaluwarsa akun.

chage -l aparna

Last password change					: Jun 25, 2021
Password expires					: never
Password inactive					: never
Account expires						: Aug 27, 2021
Minimum number of days between password change		: 0
Maximum number of days between password change		: 99999
Number of days of warning before password expires	: 7

8. Cara Membuat Pengguna dengan Tanggal Kedaluwarsa Kata Sandi

Argumen '-f' digunakan untuk menentukan jumlah hari setelah kata sandi kedaluwarsa. Nilai 0 akan menonaktifkan akun pengguna segera setelah sandi habis masa berlakunya. Secara default, nilai masa berlaku kata sandi diatur ke -1, yang berarti masa berlakunya tidak pernah habis.

Dalam contoh ini, kami akan menetapkan tanggal habis masa berlaku kata sandi akun, yaitu 45 hari, untuk pengguna 'mansi' yang menggunakan '-e' dan opsi '-f'.

useradd -e 2014-04-27 -f 45 mansi

9. Cara Menambahkan Pengguna dengan Komentar di Linux

Opsi '-c' memungkinkan Anda menambahkan komentar khusus, seperti nama lengkap pengguna, nomor telepon, dll., ke file ‘/etc/passwd‘. Komentar dapat ditambahkan sebagai satu baris tanpa spasi.

Misalnya, perintah berikut akan menambahkan pengguna 'mansi' dan memasukkan nama lengkap pengguna tersebut, Manis Khurana, ke dalam kolom komentar.

useradd -c "Manis Khurana" mansi

Anda dapat melihat komentar yang disisipkan di file ‘/etc/passwd‘ di bagian komentar menggunakan perintah tail.

tail -1 /etc/passwd

mansi:x:1010:1013:Manis Khurana:/home/mansi:/bin/sh

10. Cara Membuat Shell Login Pengguna di Linux

Terkadang, kami menambahkan pengguna yang tidak ada hubungannya dengan shell login atau terkadang kami diminta untuk menetapkan shell yang berbeda untuk pengguna kami. Kami dapat menetapkan shell login yang berbeda untuk setiap pengguna dengan opsi '-s'.

Di sini, di contoh ini, akan menambahkan pengguna 'tecmint' tanpa shell login yaitu shell '/sbin/nologin'.

useradd -s /sbin/nologin tecmint

Anda dapat memeriksa shell yang ditetapkan untuk pengguna di file '/etc/passwd'.

tail -1 /etc/passwd

tecmint:x:1011:1014::/home/tecmint:/sbin/nologin

11. Cara Membuat Pengguna dengan Home, Shell, dan Komentar Tertentu

Perintah berikut akan membuat pengguna 'ravi' dengan direktori home '/var/www/tecmint', shell default /bin/bash, dan informasi tambahan tentang pengguna.

useradd -m -d /var/www/ravi -s /bin/bash -c "TecMint Owner" -U ravi

Pada perintah di atas, opsi '-m' dan '-d' membuat pengguna dengan direktori home tertentu, dan '-s' opsi menyetel shell default pengguna ke /bin/bash. Opsi '-c' menambahkan informasi tambahan tentang pengguna dan argumen '-U' membuat/menambahkan grup dengan nama yang sama dengan pengguna.

12. Cara Membuat Pengguna dengan Defined Home, Shell, Comment, UID/GID

Perintahnya sangat mirip dengan perintah di atas, namun di sini kita mendefinisikan shell sebagai '/bin/zsh' dan menyetel UID dan GID khusus untuk pengguna 'tarunika'. Opsi '-u' mendefinisikan UID pengguna baru (yaitu 100), dan opsi '-g' mendefinisikan GID (yaitu. , 1000).

useradd -m -d /var/www/tarunika -s /bin/zsh -c "TecMint Technical Writer" -u 1000 -g 100 tarunika

13. Cara Membuat User dengan Home, No Shell, Comment, dan UID

Perintah berikut ini sangat mirip dengan dua perintah di atas. Satu-satunya perbedaan adalah di sini, kami menonaktifkan shell login untuk pengguna bernama 'avishek' dengan ID Pengguna khusus (yaitu, 1019).

Opsi '-s' menyetel shell default ke /bin/bash, namun dalam kasus ini, kami menyetel shell login ke '/usr/sbin/ nologin'. Itu berarti pengguna 'avishek' tidak akan bisa masuk ke sistem.

useradd -m -d /var/www/avishek -s /usr/sbin/nologin -c "TecMint Sr. Technical Writer" -u 1019 avishek

14. Cara Membuat Pengguna dengan Home, Shell, Skeleton, dan UID Tertentu

Satu-satunya perubahan pada perintah ini adalah kami menggunakan opsi '-k' untuk menyetel direktori kerangka khusus ke /etc/custom.skell alih-alih yang default, < kuat>/etc/skel. Kami juga menggunakan opsi '-s' untuk mendefinisikan shell yang berbeda, /bin/tcsh, untuk pengguna 'navin'.

useradd -m -d /var/www/navin -k /etc/custom.skell -s /bin/tcsh -c "No Active Member of TecMint" -u 1027 navin

15. Cara Membuat User tanpa Home, Shell, atau Group, dengan Komentar

Perintah berikut ini sangat berbeda dengan perintah lain yang dijelaskan di atas. Di sini, kami menggunakan opsi '-M' untuk membuat pengguna tanpa direktori home pengguna, dan opsi '-N' digunakan untuk memerintahkan sistem agar hanya membuat nama pengguna (tanpa grup). Opsi '-r' adalah untuk membuat pengguna sistem.

useradd -M -N -r -s /bin/false -c "Disabled TecMint Member" clayton

Untuk informasi dan opsi lebih lanjut tentang 'useradd', jalankan perintah 'useradd' di terminal untuk melihat opsi yang tersedia

useradd

Jika Anda ingin mengubah atribut akun pengguna seperti mengubah nama pengguna, ID pengguna (UID), direktori home, shell, dan lainnya, gunakan perintah usermod.