Now we are getting somewhere. First, I want to make sure nothing changed.
In your previous mail, you had this line:
popbsmtpd: Expiry tests: Current time 2002/12/22 10:14:25 (1040573665),
Cutoff time 2002/12/22 09:44:25 (1040571865)
This time, you have this line:
popbsmtpd: Expiry tests: Current time 2002/12/22 22:58:00 (1040619480),
Cutoff time 2002/12/22 23:28:00 (1040621280)
First message, the cutoff time is earlier than the current time; second
message, it is later. Did you make the auth_duration negative? If so,
change it back to positive. I know the terminology is misleading, but the
cutoff time is the oldest login time that is not considered expired, so it
needs to be earlier than the current time.
Now, here is the problem:
> popbsmtpd: Login by user rhs from IP 126.96.36.199 at 2002/12/22
> 21:58:00 (001040615880)
Notice that according to syslog, the current time is 21:58:00.
> popbsmtpd: Relaying ENABLED (started) for user rhs at 188.8.131.52
> popbsmtpd: KEY "IP:184.108.40.206" DATA "001040615880" recorded
> popbsmtpd: KEY "001040615880_220.127.116.11" DATA "18.104.22.168"
> recorded popbsmtpd: No data ready.
> popbsmtpd: Expiry tests: Current time 2002/12/22 22:58:00 (1040619480),
> Cutoff time 2002/12/22 23:28:00 (1040621280)
Ooops! popbsmtpd thinks the current time is 22:58:00. Also, note that the
expiry should be earlier than the current time.
> popbsmtpd: Inspecting 001040615880_22.214.171.124 (126.96.36.199)
> cutoff=1040621280 logintime=1040615880
Here, the problem is obvious. Login was at ...15880, entries before
....21280 get expired and deleted. This entry is expired.
> popbsmtpd: Entry 001040615880_188.8.131.52 (184.108.40.206) EXPIRED
> popbsmtpd: Relaying DISABLED for 220.127.116.11
> popbsmtpd: Timestamp 001040615880_18.104.22.168 for 22.214.171.124
> deleted from login DB
> I did make sure both my /etc/localtime and
> /var/spool/postfix/etc/localtime are the same.
That's good. Here is where I am stumped; maybe you need to stop and
restart syslog so that everything has the same idea of the current time.
If you can get to the bottom of this, please let me know how you fixed it,
so I can learn from it.
But if you can't get all the times the same, that's OK. Just adjust the
auth_duration by one hour and set it to 90 (one and a half hours, and make
sure it is not negative), and you will get a 30-minute expiry. With this,
you should be good to go. (If you want longer expiries, just add 60 to
what you want to specify.)
Let me know if this works.