2016-07-18 3 views
0

Ich arbeite an der Konfiguration der AD-Authentifizierung auf MySQL (installiert auf RHEL 6.6) mit Pluggable Authentication Modules (PAM).MySQL 5.7 (RHEL6.6) PAM Authentifizierung mit AD

Meine AD-Benutzer können sich bisher mit AD-Anmeldeinformationen auf der RHEL-Box anmelden. Aber wenn ich versuche, mich mit dem PAM-Plugin bei MySQL anzumelden, erhalte ich den Fehler Zugriff verweigert. Die PAM-Konfiguration für MySQL ist wie folgt:

/etc/pam.d/mysql: 
auth required pam_winbind.so 
account required pam_winbind.so 

Wenn ich die MySQL Fehlerprotokolle überprüfen, I-System-Fehler in der Methode authenticate_pam() geworfen zu sehen. Im Folgenden sind mysqld Protokolle:

entering auth_pam_server 
entering auth_pam_next_token 
auth_pam_next_token:reading at [mysql, MySQLUsers=mysql_ad], sep=[,] 
auth_pam_next_token:state=PRESPACE, ptr=[mysql, MySQLUsers=mysql_ad], out=[] 
auth_pam_next_token:state=IDENT, ptr=[mysql, MySQLUsers=mysql_ad], out=[] 
auth_pam_next_token:state=AFTERSPACE, ptr=[, MySQLUsers=mysql_ad], out=[mysql] 
auth_pam_next_token:state=DELIMITER, ptr=[, MySQLUsers=mysql_ad], out=[mysql] 
auth_pam_next_token:state=DONE, ptr=[, MySQLUsers=mysql_ad], out=[mysql] 
leaving auth_pam_next_token on /export/home/pb2/build/sb_0-19016729-1464156482.79/rpm/BUILD/mysqlcom-pro-5.7.13/mysqlcom-pro-5.7.13/plugin/pam-authentication-plugin/src/parser.c:195 
auth_pam_server:password ******** received 
auth_pam_server:pam_start rc=0 
auth_pam_server:pam_set_item(PAM_RUSER,administrator) rc=0 
auth_pam_server:pam_set_item(PAM_RHOST,localhost) rc=0 
entering auth_pam_server_conv 
auth_pam_server_conv:PAM_PROMPT_ECHO_OFF [Password: ] received 
leaving auth_pam_server_conv on /export/home/pb2/build/sb_0-19016729-1464156482.79/rpm/BUILD/mysqlcom-pro-5.7.13/mysqlcom-pro-5.7.13/plugin/pam-authentication-plugin/src/authentication_pam.c:269 
**auth_pam_server:pam_authenticate rc=4 
auth_pam_server: rc=4 
PAM error: System error** 
leaving auth_pam_server on /export/home/pb2/build/sb_0-19016729-1464156482.79/rpm/BUILD/mysqlcom-pro-5.7.13/mysqlcom-pro-5.7.13/plugin/pam-authentication-plugin/src/authentication_pam.c:441 
2016-07-18T12:48:22.360536Z 122 [Note] Access denied for user 'administrator'@'localhost' (using password: YES) 

Gemäß der oben PAM-Konfiguration, wird PAM winbind mit den Anmeldeinformationen des Benutzers in AD nachzuschlagen und authentifizieren, die für die Authentifizierung von AD-Benutzern in die Linux-Box der gleiche Prozess ist. Und wenn ich die winbind-Protokolle sehen, sehe ich folgendes:

[2016/07/18 08:27:24.236701, 5] winbindd/winbindd_pam.c:1868(winbindd_dual_pam_auth) 
    Plain-text authentication for user CORPAD\administrator returned NT_STATUS_OK (PAM: 0) 

Das sagt mir, dass die Authentifizierung von winbind funktioniert prima, aber wenn winbind kehrt zu PAM Steuerung zurück, etwas versagt und Systemfehler ausgelöst.

Antwort

0

Nun, ich habe es herausgefunden.

Zuerst habe ich die Debug-Protokolle auf PAM nach diesem Post - https://serverfault.com/questions/249671/switch-on-pam-debugging-to-syslog aktiviert.

Als ich das tat, fand ich, dass jedes Mal, wenn ich ich war immer die folgende Fehlermeldung zu authentifizieren versucht: PAM audit_open() fehlgeschlagen: Zugriff verweigert

Die Hauptursache für diese SELinux war, durchzusetzen. Also habe ich SELinux deaktiviert und das System neu gestartet, wodurch dieses Problem behoben wurde. Ich bin jetzt in der Lage, mich mit meinen AD-Anmeldeinformationen bei Linux anzumelden und dann den mysql-Befehl zu verwenden und mich auch für mysql zu authentifizieren!

Verwandte Themen