checkpw failed, trying legacy method
We’re still running Tiger for one of our web servers, because we don’t want to bring it down for a few hours. While troubleshooting a problem, I discovered that our error logs were filling up with:
- Authenticating using checkpw failed, trying legacy method
In and of itself this wasn’t a big deal, but it was obscuring the real errors I was looking for.
A quick search on the error text found a solution for 10.3, and a whole bunch of questions asking how to apply that solution to 10.4. It appears that by default Apple loads a special auth_module that checks the Apple password storage first, and then the file specified by the .htaccess file. The solution was to comment out Apple’s mod_auth and uncomment the stock mod_auth.
But mod_auth was nowhere to be found in httpd.conf on our 10.4 server, and I’d guess everyone else’s.
However, it’s a standard Apache module, and a quick “locate mod_auth” found a mod_auth.so in the right place, so I tried just adding it in to httpd.conf and commenting out the Apple-specific ones:
[toggle code]
- #LoadModule apple_auth_module libexec/httpd/mod_auth_apple.so
- LoadModule auth_module libexec/httpd/mod_auth.so
- #AddModule mod_auth_apple.c
- AddModule mod_auth.c
This worked, and a test of a password-protected directory showed that the error is gone.
- “Authenticating using checkpw failed” error with OSX 10.3.2 server and .htaccess
- “The httpd.conf file has mod_auth_apple turned on. It will try to validate users as UNIX users first. Comment out these lines and replace them with mod_auth lines.”
More Apache
- mod_rewrite cheat sheet
- Apache’s mod_rewrite is very useful, and very poorly documented. The documentation’s there, it just isn’t easy to read. Dave Child has written a very useful cheat sheet for mod_rewrite.
More Mac OS X Server
- Adding PDO_MYSQL to Mac OS X Leopard Server
- There’s “a feature request with engineering to include pdo_mysql” in Mac OS X Server. Fortunately, adding it is only moderately complex.
- No distutils? Install Xcode
- If Distutils is not available on Mac OS X Leopard, install the Xcode developer tools. Also, the upgrade process I followed for upgrading from Mailman 2.1.9 to 2.1.12.
- Installing OS X Server 10.5 from the command line
- I ran into some very odd trouble installing Mac OS X Server 10.5 (Leopard) on one of our G5 Xserves. So I attempted to use the command-line install to get the error message.