membuat random password di linux

Hi Semua,


Dalam tulisan ini saya akan membagi bagaimana membuat random password / mengganti password setiap menit dengan metode tertentu menggunakan shellscript aja tentuanya. kita akan menggunakan / mengolah data dengan memanfaatkan datetime linux. script ini cocok untuk mengamankan server-server penting yg diakses lebih dari 1 sysadmin. script ini works di keluarga ubuntu dkk dan centos dkk.  mari kita mulai :

1. pertama kita pahami dulu fungsi perintah date yang akan kita gunakan, 

date +'%M'    = menampilkan informasi menit dalam 2 digit  / 00

date +'%H'    = menampilkan informasi jam dalam 2 digit   / 00

date +'%u'    = menampilkan informasi hari dalam format number, dimana senin=1 selasa=2 dst...

date +'%e'    = menampilkan informasi tanggal dalam 2 digit

 

2. dalam tulisan ini saya juga menggunakan metode summary / penjumlahan dengan menggunakan perintah sebagai berikut;

sum=((x+y))    <-- 2 dalam kurung berfungsi untuk menjumlahkan


3. inti script , kunci utama script ini ada pada perintah chpasswd dengan ditambahkan variable-variable pada point 1, kurang lebih penjelsannya seperti berikut ini

"user:(variable bebas1)X(-)YZ(A=Y+Z)(B=A+X)"

X=$(date +'%M%H')

Y=$(date +'%u')

Z=$(date +'%e')

A=$(($VAR2+$VAR3))

B=$(($SUM1+$VAR1))

* PUSING KAN...!!!! hahahahah

4. buat file changepass.sh ,dan rubah atributnya dengan chmod+x changepass.sh lalu buka editor text favorit anda.


#!/bin/bash

VAR1=$(date +'%M%H')

VAR2=$(date +'%u')

VAR3=$(date +'%e')

SUM1=$(($VAR2+$VAR3))

SUM2=$(($SUM1+$VAR1))

USER="yudikeren"

# Mengubah password user saat ini

echo "$USER:emangbetul$VAR1-$VAR2$VAR3$SUM1$SUM2"

echo "$USER:emangbetul$VAR1-$VAR2$VAR3$SUM1$SUM2" | chpasswd


if [ $? -eq 0 ]; then

    echo "Password berhasil diubah untuk user $USER."

else

    echo "Gagal mengubah password. Pastikan script dijalankan oleh user yang bersangkutan."

fi 


Contoh:

jika kita jalan kan script tersebut pada Sen 21 Jul 2025 10:45:31  WIB maka password yg muncul pada menit tersebut adalah:

rumus     = "user:(variable bebas1)X(-)YZ(A=Y+Z)(B=A+X)"

variable  =  "saya:(keren)4510-121(A=1+21)(B=22+4510)

               = saya:keren4510-121(A=22)(B=4531)

               = saya:keren4510-121224531

*maaf ya klo rumusnya salah hahahahahha ini ngarang2 aja loh lebih jelasnya baca di script nya ya!! 

setelah selesai jalankan filenya , dan masukkan kedalam cron jika mau berganti tiap menit.

dengan memasukkan kedalam cron dan 


Troubleshoot:

Changing password for saya.

chpasswd: (user mpi) pam_chauthtok() failed, error:

Authentication token manipulation error

chpasswd: (line 1, user saya) password not changed

Gagal mengubah password. Pastikan script dijalankan oleh user yang bersangkutan.

 == ini berarti user anda tidak dapat privileges untuk ganti password atau user yg anda sedang anda ganti tidak ada, cek kembali user yg terdaftar di /etc/passwd atau gunakan user root (#).

demikian selesai sudah gampang kan !!!! . klo ada kendala tinggalkan comment aja ya . semoga server anda aman selalu.


Terakhir jangan lupa untuk buat backup / buat user cadangan  ya .

Comments

Popular posts from this blog

Configure Open Smtp google with Postfix

ISCSI