GNU/Linux >> Belajar Linux >  >> Linux

Cara Membuat Pengguna Menggunakan Perintah Useradd di Linux

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.


Linux
  1. Cara Membuat Banyak Akun Pengguna di Linux

  2. Cara membuat Pengguna Linux Menggunakan Ansible

  3. Cara membuat file sparse di Linux menggunakan perintah 'dd'

  1. Cara Membuat Script Perintah Linux

  2. Bagaimana mengelola pengguna dengan useradd di linux

  3. Cara membuat user di linux menggunakan python

  1. Cara Membuat File di Linux Menggunakan Terminal/Command Line

  2. Cara Menghapus / Menghapus Pengguna di Linux Menggunakan Perintah userdel

  3. Cara Membuat Snapshot Sistem File menggunakan Perintah Snapper di Linux