=====Linux Password Komplexität prüfen - OPW-00029: Password complexity failed for SYS user ===== Spätestens bei der Oracle 18c Installation muss nun doch endlich ein zwingend ein komplexes Password vergeben werden. OPW-00029: Password complexity failed for SYS user : Password must contain at least 8 characters. Wie das am besten bei der automatischen Anlage einer DB prüfen? Zum Beispiel in meiner Script Library für die automatisierte Installation einer DB = > https://github.com/gpipperr/OraPowerShell/tree/master/Ora_Bash_create_database Normalerweise kann das unter Linux am perfektesten "pwscore" ( siehe https://linux.die.net/man/1/pwscore ) überprüft werden, allerdings ist die Konfiguration dann global für die ganze Maschine gültig und es ist auch nicht sichergestellt ob es das überall gibt. Das passt nicht so recht für eine einfache Script Library. Daher Alternativ wenn es nicht so streng laufen soll mit REGEX abfragen: #!/bin/sh # #min 8 signs LENGTH_PW_REGEX="(^.{8,255}$)" PWD_LENGTH=false # min a number NUMBER_PW_REGEX="(.*[0-9])" PWD_NUMBER=false # min a spezial char SPEZIAL_PW_REGEX="(.*\W)" PWD_SPEZIAL=false USER_PWD_ANSWER=$1 if [[ "${USER_PWD_ANSWER}" =~ ${LENGTH_PW_REGEX} ]]; then printf "Password Length > 8 - check OK\n" PWD_LENGTH=true else printf "Use a strong Password, at least 8 char Password to short\n" fi if [[ "${USER_PWD_ANSWER}" =~ ${NUMBER_PW_REGEX} ]]; then printf "Password contains number - check OK\n" PWD_NUMBER=true else printf "Use a strong Password, at least 1 number!\n" fi if [[ "${USER_PWD_ANSWER}" =~ ${SPEZIAL_PW_REGEX} ]]; then printf "Password contains special Char - check OK\n" PWD_SPEZIAL=true else printf "Use a strong Password, at least one spezial char < ASCII 127!\n" fi if [ "${PWD_LENGTH}" = "true" ] && [ "${PWD_NUMBER}" = "true" ] && [ "${PWD_SPEZIAL}" = "true" ]; then printf "Password is ok and can be used!\n" else printf "Use a strong Password, this password not fit!\n" fi Die REGEX extra so einfach wie möglich gehalten, dann versteht man es später noch und kann das besser optimieren. ---- ====pwscore==== siehe https://www.2daygeek.com/how-to-check-password-complexity-strength-and-score-in-linux/