Re: Incorrect password
[email protected] Tue, 01 Feb 2005 14:28:31 -0000
| Newsgroups | gmane.mail.neomail.general |
|---|---|
| Message-ID | <41FF920F.2521.F95782@localhost> |
I guess I didn't explain properly...
1) /etc/shadow is specified correctly
2) checklogin.pl can read /etc/shadow just fine
3) suidperl is installed on the system
4) I have read the FAQ's and spent several hours trying to figure the
problem out before attacking the mailing lists ;)
I can run checkconfig.pl manually (ie: as a non-root user) and it
reads and confirms the username/password, ie: if you manually type:
#./checkconfig.pl
/etc/shadow<cr>
username<cr>
password<cr>
#echo $?
0
If the username/password are incorrect it return '1' instead of '0'
So checkconfig.pl is working fine.
The trouble is that Perl gets the return value '13' no matter what
username/password is entered. I know this because I have added a
couple of extra "writelog()" lines in neomail.pl so I can see the
variables at various stages in the login() subroutine.
Regards,
Chris
-----8< snip
From FAQ Official of Neomail:
Q. I got NeoMail installed OK, but I can"t login! No
matter what I type I
get the invalid password message. Also, my Apache
error_log shows reads on
a closed filehandle, <PASSWD> and a couple uses of
undefined values as well.
What gives?
A. This means that, for some reason, NeoMail is having
trouble opening the file
you specified as your encrypted password file
during setup.pl, or in the
$passwdfile variable if you configured NeoMail
manually.
The root of this problem could be one of several
possibilities. First, and
most commonly, is that people simply forget to
specify /etc/shadow as the
password file when using shadowed passwords. This
generally happens on
manual installs only, as setup.pl does some
checking to make sure that
there are encrypted passwords in whatever file it
defaults to.
The next possibility is that while the program
knows where your passwords
are stored, it cannot open the file to read them,
because it has
insufficient permissions. Checklogin.pl should
generally run suid root,
unless you choose a manual install and used a file
that doesn"t require root
permissions to be read for your encrypted
passwords.
If this isn"t the case, another likely possibility
is that while you have
the Perl interpreter on your system, you don"t have
the additional wrapper
program included in most Perl distributions,
suidperl. This should
generally exist in the same directory as perl does,
and be setuid root.
When perl opens a setuid script, it sees the setuid
bit, and since most
operating systems don"t allow scripts to run
setuid, it calls the suidperl
executable to run the script with root permissions.
Greetings,
Miguel!
--- info@ca... escribi=F3:
> After installing Neomail on a Fedora Core 3 system
> it seems to have a
> problem checking users passwords returning the
> error:
>
> Sorry, the password you entered was incorrect!
> Please go back and try again
>
> After doing some digging, it looks like the
> checklogin.pl program is
> returning the value 13 no matter what
> username/password combination
> you enter.
>
> Run checklogin.pl manually from the command line and
> it works just
> find, ie: "echo $?" returns "0" when correct
> username/password
> entered and "1" when incorrect details entered.
>
> For some reason perl is always seeing the return
> value as 13
>
> Anyone any idea"s ?
>
> Thanks,
> Chris
-------------------------------------------------------
This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting
Tool for open source databases. Create drag-&-drop reports. Save time
by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc.
Download a FREE copy at http://www.intelliview.com/go/osdn_nl