Es scheint, dass ich das Passwortüberprüfungs-Plugin in MySQL 5.7 versehentlich geladen habe. Dieses Plugin scheint alle Passwörter zu zwingen, bestimmte Regeln einzuhalten.
Ich möchte das ausschalten.
Ich habe versucht, die hier vorgeschlagene Variable validate_password_length ohne Erfolg zu ändern .
mysql> SET GLOBAL validate_password_length=4;
Query OK, 0 rows affected (0.00 sec)
mysql> SET PASSWORD FOR 'app' = PASSWORD('abcd');
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
Ich möchte das Plugin entweder entladen oder irgendwie neutralisieren.
SET GLOBAL validate_password_policy=LOW;
SET GLOBAL validate_password.policy=LOW;
Antworten:
Folgendes kann ich tun, um das Plugin zur Überprüfung des Passworts zu entfernen:
mysql -h localhost -u root -p
uninstall plugin validate_password;
UNINSTALL COMPONENT 'file://component_validate_password';
quelle
INSTALL PLUGIN validate_password SONAME 'validate_password.so';
grep 'password' /var/log/mysqld.log | tail -1
und dann ein sicheres Passwort einrichten/usr/bin/mysql_secure_installation
. Danach können Sie die Befehle von srayhunter oben ausführen und dann ausführenmysqladmin -u root -p'oldpassword' password newpass
, um ein beliebiges Passwort zu verwenden.cracklib_password_check
in der aktuellen MariaDB aufgerufen .UNINSTALL COMPONENT 'file://component_validate_password';
mysql> SET GLOBAL validate_password_policy = 0;
Ich verwende MySQL v 8.0.12 und der Befehl zum Deaktivieren der Kennwortüberprüfungskomponente lautet:
Um es wieder zu installieren, lautet der Befehl:
Wenn Sie nur die Richtlinie zum Plugin zur Kennwortüberprüfung ändern möchten :
quelle
Bauen Sie auf der Antwort von Sharfi auf und bearbeiten Sie die Datei /etc/my.cnf und fügen Sie nur diese eine Zeile hinzu:
Dies sollte die vom OP geforderte Validierung ausreichend neutralisieren. Nach dieser Änderung möchten Sie wahrscheinlich mysqld neu starten. Abhängig von Ihrem Betriebssystem würde es ungefähr so aussehen:
validate_password_policy nimmt entweder die Werte 0, 1 oder 2 oder die Wörter LOW, MEDIUM und STRONG an, die diesen Zahlen entsprechen. Der Standardwert ist MEDIUM (1), für das Kennwörter mindestens einen Großbuchstaben, einen Kleinbuchstaben, eine Ziffer und ein Sonderzeichen enthalten müssen und die Gesamtkennwortlänge mindestens 8 Zeichen beträgt. Wenn Sie, wie hier vorgeschlagen, auf LOW wechseln, wird nur die Länge überprüft. Wenn dies nicht durch andere Parameter geändert wurde, wird eine Länge von 8 überprüft. Wenn Sie auch diese Längenbeschränkung verkürzen möchten, können Sie auch validate_password_length hinzufügen die my.cnf Datei.
Weitere Informationen zu den Ebenen und Details finden Sie im MySQL-Dokument .
Für MySQL 8 wurde die Eigenschaft von "validate_password_policy" in "validate_password.policy" geändert. Die neuesten Informationen finden Sie im aktualisierten MySQL-Dokument .
quelle
SET GLOBAL validate_password_policy=LOW;
Um die Passwortprüfung in mariadb-10.1.24 (Fedora 24) zu deaktivieren, musste ich eine Zeile in der Datei /etc/my.cnf.d/cracklib_password_check.cnf auskommentieren :
Starten Sie dann den Mariadb-Dienst neu:
quelle
Sie können dies in der MySQL-Konfigurationsdatei konfigurieren. Datei öffnen
/etc/my.cnf
In dieser Datei werden alle Zeilen, in denen die Kennwortrichtlinie konfiguriert wird, wie folgt kommentiertKommentieren Sie den Wert der Eigenschaften aus, die Sie ändern möchten, und ändern Sie ihn.
quelle
Wenn Sie Ausnahmen machen möchten, können Sie den folgenden "Hack" anwenden. Es erfordert einen Benutzer mit
DELETE
undINSERT
Berechtigungen für diemysql.plugin
Systemtabelle.Langweiliger Sicherheitsausschluss: Überlegen Sie, warum Sie Ihr Passwort kürzer oder einfacher machen, und ersetzen Sie es möglicherweise durch ein komplexeres. Ich verstehe jedoch die Momente "Es ist 3 Uhr morgens und muss nur funktionieren". Stellen Sie nur sicher, dass Sie kein System von Hacks aufbauen, damit Sie nicht selbst gehackt werden
quelle
Weiter zur Antwort von ktbos:
Ich habe die Datei mysqld.cnf geändert und mysql konnte nicht gestartet werden. Es stellte sich heraus, dass ich die falsche Datei geändert habe!
Stellen Sie daher sicher, dass die von Ihnen geänderte Datei Segment-Tags wie [mysqld_safe] und [mysqld] enthält. Unter letzterem habe ich wie vorgeschlagen gehandelt und die Zeile hinzugefügt:
Dies funktionierte perfekt, um mein Problem zu lösen, dass im Kennwort keine Sonderzeichen erforderlich sind.
quelle
Deinstallieren:
Ein deinstalliertes Plugin wird von nicht angezeigt
show plugins;
Installieren:
Durch Konfiguration deaktiviert:
Ein Plugin kann nur bei Installation durch Konfiguration deaktiviert werden.
quelle
Ich hatte ein Problem unter Ubuntu 18.04 auf MySQL. Wenn ich einen neuen Benutzer erstellen musste, war die Richtlinie immer hoch.
Die Art und Weise, wie ich herausgefunden habe, wie ich sie deaktivieren kann, war für zukünftige Kollegen, die zur Untersuchung kommen, auf niedrig eingestellt.
Melden Sie sich als root beim MySQL-Server an
Legen Sie den neuen Validierungstyp fest
Starten Sie MySQL neu
quelle
Bei einigen Installationen können Sie diesen Befehl erst ausführen, nachdem Sie das Root-Passwort zurückgesetzt haben. Sie können das Root-Passwort erst zurücksetzen, wenn Sie diesen Befehl ausführen. Klassischer Fang-22.
Eine Lösung, die von anderen Respondern nicht erwähnt wird, besteht darin, das Plugin vorübergehend über die MySQL-Konfiguration zu deaktivieren. In jedem
my.cnf
im[mysqld]
Abschnitt hinzu:und starten Sie den Server neu. Ändern Sie das Kennwort, setzen Sie den Wert wieder auf 0 und starten Sie erneut.
quelle
Für Referenzen und die Zukunft sollte man das Dokument hier lesen: https://dev.mysql.com/doc/mysql-secure-deployment-guide/5.7/en/secure-deployment-password-validation.html
Dann sollten Sie Ihre
mysqld.cnf
Datei bearbeiten , zum Beispiel:Fügen Sie dann im [mysqld] -Teil Folgendes hinzu:
Wenn Sie Ihre Standardeinstellung bearbeiten, sieht dies grundsätzlich folgendermaßen aus:
Dann können Sie neu starten:
Wenn Sie das
plugin-load-add=validate_password.so
Teil vergessen haben , wird beim Neustart ein Fehler angezeigt.Genießen !
quelle
Gehen Sie für MySQL 8.0.7 in Ihr MySQL-Verzeichnis und verwenden Sie dann:
um die Passwortoption zu konfigurieren.
quelle
Keine Notwendigkeit, MySQL zu stoppen / zu starten
quelle