Di Linux dan sistem operasi mirip Unix, perintah paling umum untuk membuat pengguna adalah 'useradd' atau 'adduser'. Sebagai administrator sistem, sering kali diperlukan untuk menambahkan pengguna, menghapus pengguna, membuat grup, dan menetapkan pengguna.
Tidak ada perbedaan antara dua perintah yang disebutkan di atas dalam hal fitur. Perintah adduser lebih ramah dan beberapa administrator Debian/Ubuntu suka menggunakannya. Useradd adalah biner yang dikompilasi dengan sistem Linux dan berfungsi sebagai backend untuk adduser.
Dalam tutorial ini, kita mempelajari cara membuat pengguna di Linux dari terminal menggunakan perintah useradd.
Perintah dan Sintaks Tambahkan Pengguna
Baris berikut menunjukkan sintaks untuk perintah useradd:
useradd [OPTIONS] username
Seorang pengguna dapat ditambahkan hanya dengan memberikan nama pengguna diikuti dengan perintah. Anda harus menjalankan useradd
perintah dengan hak istimewa pengguna root atau sudo.
Mari pelajari lebih lanjut tentang useradd
perintah dan opsinya.
1) Cara Membuat pengguna baru di Linux
Seperti disebutkan di atas, untuk membuat pengguna baru kami menggunakan perintah useradd.
Perintah berikut membuat pengguna baru bernama 'tagihan' dan perintah kedua menetapkan kata sandi baru kepada pengguna ('tagihan'.
$ sudo useradd bill
$ sudo passwd bill
Ini membuat pengguna dengan direktori Home sebagai /home/bill
dan menyalin file dari direktori '/etc/skel' ke direktori home pengguna.
$ ls -al /home/bill/
total 20
drwx------. 2 bill bill 4096 Mar 9 06:49 .
drwxr-xr-x. 4 root root 4096 Mar 9 06:49 ..
-rw-r--r--. 1 bill bill 18 Nov 8 16:21 .bash_logout
-rw-r--r--. 1 bill bill 141 Nov 8 16:21 .bash_profile
-rw-r--r--. 1 bill bill 312 Nov 8 16:21 .bashrc
Perintah ini menambahkan entri ke file /etc/passwd, /etc/shadow, /etc/group dan /etc/gshadow.
Catatan:Di Ubuntu dan distribusi terkait Debian, useradd tidak akan membuat direktori home default kecuali Anda harus menentukan dengan opsi. Sebagai gantinya, Debian merekomendasikan menggunakan perintah adduser.
2) Buat pengguna dengan direktori home tertentu
Untuk membuat pengguna dengan direktori home tertentu sebagai nilai untuk login pengguna, gunakan -d
pilihan. Pastikan untuk membuat direktori home dasar menggunakan perintah mkdir sebelum menjalankan perintah.
Mari kita buat direktori home dasar yang disebut 'devops':
$ sudo mkdir /devops
Sekarang perintah berikut membuat 'tagihan' pengguna dan menetapkan direktori home-nya sebagai '/devops/billhome'.
$ sudo useradd -d /devops/billhome bill
Output
$ sudo useradd -d /devops/billhome bill
$ ls -al /devops/billhome
total 12
drwxr-xr-x 2 bill bill 100 Dec 31 05:13 .
drwxr-xr-x 17 root root 3680 Dec 31 05:13 ..
-rw-r--r-- 1 bill bill 220 Apr 4 2018 .bash_logout
-rw-r--r-- 1 bill bill 3771 Apr 4 2018 .bashrc
-rw-r--r-- 1 bill bill 807 Apr 4 2018 .profile
Anda dapat menggunakan kombinasi -m (membuat direktori home jika tidak ada) dan -d (menetapkan jalur yang diberikan sebagai nama direktori login pengguna) untuk membuat pengguna.
$ sudo useradd -m -d /home/bobhome bob
3) Membuat Pengguna dengan ID Pengguna Tertentu
Secara default saat Anda membuat pengguna, ini menetapkan UID yang tersedia berikutnya yang ditentukan dalam file login.defs. Tetapi menggunakan -u
pilihan Anda dapat membuat pengguna dengan UID tertentu.
Dalam contoh berikut, tagihan pengguna dibuat dengan UID tertentu (3210).
$ useradd -u 3210 bill
$ grep bill /etc/passwd bill:x:3210:3210::/home/bill:/bin/bash
UID dapat dilihat di file '/etc/passwd' seperti yang ditunjukkan pada output di atas.
4) Buat Pengguna dengan Shell Login Spesifik
Terkadang kita perlu membuat pengguna dengan shell login tertentu (seperti ksh, tcsh, zsh, dll) atau tanpa login shell ('/sbin/nologin').
Kami dapat menentukan shell login yang terkait dengan akun pengguna dengan -s
pilihan seperti yang ditunjukkan di bawah ini:
$ useradd -s /bin/tcsh bill
Anda dapat memverifikasi shell login dengan mengambil nama pengguna dari file /etc/passwd:
$ grep bill /etc/passwd bill:x:504:505::/home/bill:/bin/tcsh
5) Buat Direktori Beranda Basis Spesifik
Secara default direktori home pengguna terletak di direktori '/home' (variabel di /etc/default/useradd ). Dengan menggunakan -b
pilihan Anda dapat memiliki direktori home dasar yang berbeda untuk pengguna baru.
Perintah berikut menetapkan direktori '/mnt' sebagai direktori dasar dan membuat direktori home dari 'bill' pengguna sebagai '/mnt/bill'.
$ useradd -b /mnt bill
$ grep bill /etc/passwd bill:x:504:505::/mnt/bill:/bin/bash
6) Buat pengguna dengan tanggal kedaluwarsa
Saat membuat pengguna baru, Anda dapat menetapkan tanggal kedaluwarsa untuk akun pengguna menggunakan -e
pilihan.
Contoh berikut mengatur tanggal kedaluwarsa (format tanggal adalah YYYY-MM-DD ) untuk 'tagihan' pengguna.
$ sudo useradd -e 2013-06-23 bill
Ini dapat diverifikasi dengan memeriksa di bidang terakhir file '/etc/shadow'. Bidang terakhir (15879) menunjukkan tanggal kedaluwarsa dalam hal jumlah hari sejak 1 Januari 1970 akun dinonaktifkan.
$ sudo grep bill /etc/shadow bill:!!:15813:0:99999:7::15879:
Cara yang lebih mudah untuk memverifikasi tanggal kadaluwarsa pengguna menggunakan perintah chage seperti yang ditunjukkan di bawah ini:
$ sudo chage -l bill
Last password change : Feb 10, 2013
Password expires : never
Password inactive : never
Account expires : Jun 23, 2013
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
-f
opsi memberikan jumlah hari setelah kata sandi kedaluwarsa hingga akun dinonaktifkan secara permanen. Nilai 0
menonaktifkan akun segera setelah kata sandi kedaluwarsa.
$ sudo useradd -f 20 bill
Seperti yang ditunjukkan pada file bayangan, jumlah hari diatur ke 20 (di kolom kedua terakhir).
$ sudo grep bill /etc/shadow bill:!!:15813:0:99999:7:20::
7) Membuat pengguna dan menambahkan ke beberapa grup
Setiap pengguna di Linux harus tetap berada dalam satu grup utama dan nol atau lebih grup sekunder (grup tambahan).
Grup utama pengguna yang menjadi miliknya dapat disetel dengan opsi -g. Grup yang disediakan dengan opsi ini harus sudah ada.
$ sudo useradd -g xero bill
$ sudo id bill uid=504(bill) gid=505(xero) groups=505(xero) context=root:system_r:unconfined_t:SystemLow-SystemHigh
Grup dapat diperiksa dengan perintah id. -G
opsi digunakan untuk menambahkan pengguna ke grup tambahan.
$ sudo useradd -G g1,g2,g3 bill
$ sudo id bill uid=504(bill) gid=509(bill) groups=509(bill),506(g1),507(g2),508(g3) context=root:system_r:unconfined_t:SystemLow-SystemHigh
Mari kita periksa cara membuat pengguna dan menetapkan ke beberapa grup. Perintah akan membuat pengguna baru bernama 'tagihan' dengan grup utama 'tim' dan grup sekunder 'admin' dan 'apache'.
$ sudo useradd -g teams -G admin,apache bill
8) Buat Duplikat User ID
-o
opsi memungkinkan untuk membuat akun pengguna dengan ID pengguna duplikat (non-unik). Anda harus memberikan nomor UID dengan -u
pilihan.
Periksa contoh berikut:
$ sudo useradd -o -u 503 bill
Di sini kita dapat melihat bahwa ada dua akun dengan 503 ID.
$ sudo grep 503 /etc/passwd
jenny:x:503:503::/home/jenny:/bin/bash
bill:x:503:505::/home/bill:/bin/bash
9) Buat Pengguna sebagai Akun Sistem
Biasanya, UID hingga 500 atau 1000 dicadangkan untuk akun sistem dan tidak dialokasikan untuk pengguna normal. Dengan -r
pilihan, akun dengan ID dalam kisaran pengguna sistem diberikan kepada pengguna yang dibuat.
$ sudo useradd -r bill
$ sudo grep bill /etc/passwd bill:x:101:102::/home/bill:/bin/bash
Di sini, direktori home untuk pengguna tidak dibuat. Itu harus dibuat secara manual atau dilengkapi dengan -m
pilihan.
10) Buat Pengguna tanpa direktori Beranda
Jika Anda tidak ingin membuat direktori home sendiri, -M
pilihan dapat diberikan.
$ sudo useradd -M bill
$ sudo grep bill /etc/passwd
bill:x:504:505::/home/bill:/bin/bash
$ ls /home/bill
ls: /home/bill: No such file or directory
Pada output dari perintah ls, terlihat bahwa direktori home untuk pengguna tagihan tidak ada.
11) Buat Pengguna dengan Kata Sandi
Kata sandi pengguna dinonaktifkan secara default. Anda dapat mengatur kata sandi secara manual menggunakan perintah passwd. Tetapi jika Anda ingin memberikan kata sandi pada saat pembuatan pengguna, Anda dapat menggunakan -p
pilihan.
Tetapi kata sandi yang diberikan di sini harus dienkripsi, seperti yang dikembalikan oleh crypt(3).
$ sudo useradd -p '$1$ZsQB81$RCCVDuI5VR6q905nUPz4a/' bill
12) Mengubah opsi default
Ketika pengguna ditambahkan pada sistem, beberapa nilai diambil sebagai default, misalnya shell, direktori dasar, dll. Direktori dasar adalah direktori tempat direktori home pengguna berada. Pada sebagian besar sistem Linux, direktori home pengguna berada di direktori /home.
Misalnya, direktori home pengguna tom akan menjadi '/home/tom' secara default. Jadi /home akan menjadi direktori dasarnya. Opsi default ini ditentukan dalam file '/etc/defaults/useradd'. Default ini dapat dilihat dengan -D
opsi untuk menambahkan perintah pengguna:
$ sudo useradd -D GROUP=100 HOME=/home INACTIVE=-1 EXPIRE= SHELL=/bin/sh SKEL=/etc/skel CREATE_MAIL_SPOOL=no
Perintah di atas dapat dijalankan oleh pengguna biasa (pengguna non root) juga. -D
option digunakan tidak hanya untuk melihat default, tetapi juga untuk mengubah default.
13) Buat Pengguna dengan komentar khusus
Kami dapat memberikan nama lengkap atau deskripsi singkat tentang pengguna (komentar) saat membuat pengguna. Anda harus menggunakan -c
opsi untuk menambahkan komentar khusus.
Mari saya tunjukkan sebuah contoh:
$ sudo useradd -c "Bill Drape" bill
Komentar ini dapat dilihat pada entri pengguna di file '/etc/passwd'.
$ sudo grep bill /etc/passwd bill:x:504:505:Bill Drape:/home/bill:/bin/bash
Kesimpulan
Dalam tutorial ini, kita belajar cara membuat pengguna di Linux dan berbagai opsi perintah useradd. Saya harap Anda menikmati membaca dan silakan tinggalkan saran Anda di bagian komentar di bawah.