password fixes
This commit is contained in:
+11
-7
@@ -12,6 +12,7 @@ LOG_FILE=/var/log/dapostinstall.log
|
|||||||
HTLINK="https://ht.zenadmin.pl"
|
HTLINK="https://ht.zenadmin.pl"
|
||||||
MIN_PASSWORD_LENGTH=18
|
MIN_PASSWORD_LENGTH=18
|
||||||
MAX_PASSWORD_LENGTH=24
|
MAX_PASSWORD_LENGTH=24
|
||||||
|
ITERATION_LIMIT=100
|
||||||
exec > >(tee -ia "$LOG_FILE") 2>&1
|
exec > >(tee -ia "$LOG_FILE") 2>&1
|
||||||
cd $DAPOSTINSTALL_DIR
|
cd $DAPOSTINSTALL_DIR
|
||||||
yum -y install epel-release
|
yum -y install epel-release
|
||||||
@@ -19,7 +20,7 @@ yum -y install htop wget rsync nano mc ncdu borgbackup screen net-tools htop lib
|
|||||||
cp daupdate.sh /opt
|
cp daupdate.sh /opt
|
||||||
chmod 700 /opt/daupdate.sh
|
chmod 700 /opt/daupdate.sh
|
||||||
cd /opt/
|
cd /opt/
|
||||||
/optdaupdate.sh update
|
/opt/daupdate.sh update
|
||||||
cd $DAPOSTINSTALL_DIR
|
cd $DAPOSTINSTALL_DIR
|
||||||
clear
|
clear
|
||||||
cd $DAPOSTINSTALL_DIR
|
cd $DAPOSTINSTALL_DIR
|
||||||
@@ -143,9 +144,8 @@ EOT
|
|||||||
|
|
||||||
echo "Ustawienie kluczy logowania do DirectAdmina i kluczy SSH hitme"
|
echo "Ustawienie kluczy logowania do DirectAdmina i kluczy SSH hitme"
|
||||||
|
|
||||||
cd /opt
|
daupdate.sh klucze
|
||||||
sh daupdate.sh klucze
|
daupdate keyput
|
||||||
sh daupdate keyput
|
|
||||||
cd $DAPOSTINSTALL_DIR
|
cd $DAPOSTINSTALL_DIR
|
||||||
|
|
||||||
echo "Instalacja Modsecurity i regułek malware experts"
|
echo "Instalacja Modsecurity i regułek malware experts"
|
||||||
@@ -365,13 +365,17 @@ chmod 755 da_cli.sh
|
|||||||
|
|
||||||
echo "Generowanie hasla DirectAdmin"
|
echo "Generowanie hasla DirectAdmin"
|
||||||
|
|
||||||
|
count=0
|
||||||
|
|
||||||
DA_ADMINPASS=$(
|
DA_ADMINPASS=$(
|
||||||
while true; do
|
while true; do
|
||||||
base_part=$(tr -dc '[:alnum:]' < /dev/urandom | tr -d 'oO0l1I' | fold -w "$((RANDOM % (MAX_PASSWORD_LENGTH - MIN_PASSWORD_LENGTH) + MIN_PASSWORD_LENGTH))" | head -n1)
|
((count++))
|
||||||
special_char=$(tr -dc '[:graph:]' < /dev/urandom | tr -d '#oO0l1I' | fold -w 1 | head -n1)
|
[ "$count" -gt "$ITERATION_LIMIT" ] && { echo "Błąd: przekroczono limit iteracji generowania hasła" >&2; exit 1; }
|
||||||
|
base_part=$(tr -dc '[:alnum:]' < /dev/urandom | tr -d 'oO0l1I' | fold -w "$((RANDOM % (MAX_PASSWORD_LENGTH - MIN_PASSWORD_LENGTH + 1) + MIN_PASSWORD_LENGTH))" | head -n1)
|
||||||
|
special_char=$(tr -dc '[:graph:]' < /dev/urandom | tr -d '#|oO0l1I' | fold -w 1 | head -n1)
|
||||||
special_index=$((RANDOM % ${#base_part}))
|
special_index=$((RANDOM % ${#base_part}))
|
||||||
password="${base_part:0:special_index}${special_char}${base_part:special_index}"
|
password="${base_part:0:special_index}${special_char}${base_part:special_index}"
|
||||||
if echo "$password" | grep -qE '[[:digit:]]' && echo "$password" | grep -qE '[[:upper:]]' && echo "$password" | grep -qE '[^[:alnum:]]'; then
|
if echo "$password" | grep -qP '^(?=.*[[:digit:]])(?=.*[[:upper:]])(?=.*[^[:alnum:]]).+$'; then
|
||||||
echo "$password"
|
echo "$password"
|
||||||
break
|
break
|
||||||
fi
|
fi
|
||||||
|
|||||||
Reference in New Issue
Block a user