Re: [vchkpw] Using tcpserver/mysql
On Friday, September 6, 2002, at 07:10 AM, David Phillips wrote: > Paul Fries writes: >> Yeah I have been really pulling my hair out over that one. =) With as >> many Pop-3 connections/sec that our servers handle I thought that I >> would make things a little smoother if Vpopmail didn't write the cdb. >> I am afraid that the hash would become corrupt and cause relay >> problems for my users. > > Assuming that vpopmail has proper locking for the tcprules(1) source > file > and uses unique temporary files everytime it runs tcprules, then this > isn't > a problem. tcprules atomically updates the cdb file. In theory, you are correct David. In practice, that file gets truncated regularly on a high volume mail server. Discovering that, and subsequent problems because of it caused me to write the mysql patch in the first place. Matt
Re: [vchkpw] Using tcpserver/mysql
Paul Fries writes: > Yeah I have been really pulling my hair out over that one. =) With as > many Pop-3 connections/sec that our servers handle I thought that I > would make things a little smoother if Vpopmail didn't write the cdb. > I am afraid that the hash would become corrupt and cause relay > problems for my users. Assuming that vpopmail has proper locking for the tcprules(1) source file and uses unique temporary files everytime it runs tcprules, then this isn't a problem. tcprules atomically updates the cdb file. -- David Phillips <[EMAIL PROTECTED]> http://david.acz.org/
RE: [vchkpw] Using tcpserver/mysql
Thanks Matt. =) Yeah I have been really pulling my hair out over that one. =) With as many Pop-3 connections/sec that our servers handle I thought that I would make things a little smoother if Vpopmail didn't write the cdb. I am afraid that the hash would become corrupt and cause relay problems for my users. Instead, I am just having vpopmail write to a cdb elsewhere on the file system that nothing else reads. Then I have tcpserver read a different cdb file that I have created. It's messy, but it works. =) Paul J. Fries CWIE, LLC - Internet Services -Original Message- From: Matt Simerson [mailto:[EMAIL PROTECTED]] Sent: Thursday, September 05, 2002 11:24 AM To: Paul Fries Cc: [EMAIL PROTECTED] Subject: Re: [vchkpw] Using tcpserver/mysql Paul, You are exactly correct. Even when using my patch, vpopmail continues to update the tcp.smtp.cdb file. There's one reason for that. The first is that my suggestion for adding a --dont-update-tcprulesfile=true was never implemented. Granted, it would only benefit a few users (really big ones like me) and it really doesn't make that much difference. So, in short you are right. You can do as I do and manually disable the routines in the vpopmail code that writes out the file, or you can just ignore it. If you're really clever, you can code in a --don't-update-tcprulesfile function but to save some time, you might want to search through the archives of this list as I've already been down that road. Matt On Tuesday, September 3, 2002, at 12:08 PM, Paul Fries wrote: > Greetings, > > I am trying to accomplish using vpopmail with the tcpserver/mysql > patch. > > Based on the documentation found on step 13 of > http://www.inter7.com/vpopmail/INSTALL: > > -- > For sites using the mysql module and --enable-roaming-users=y it is > highly suggested to use Matt Simersons tcpserver-mysql patch. This > removes the need for vpopmail to compile a tcp.smtp.cdb file for each > pop authentication. > -- > > I have implemented the patch, and verified that tcpserver is reading my > /var/qmail/control/sql file properly (if I chmod 000 this file, > tcpserver complains about it on startup). Also with > --enable-roaming-users=y in vpopmail, vchkpw properly writes the > authenticated IP addresses/timestamp to the vpopmail.relay table in > MySQL. > > My problem is this: > > Even though it is properly writing the IPs to the vpopmail.relay table, > it is also writing them into the tcp.smtp.cdb hash file. I would like > it > to ONLY write to MySQL and not to the .cdb. I have tried > --enable-roaming-users=n, but this causes vchkpw to stop writing the IP > addresses to either location. > > It is almost like there should be a --dont-update-tcprulesfile=true > variable upon configuration. Am I missing something here? Has someone > else configured vpopmail in this manner and gotten around this problem? > > Thanks! > > Regards, > Paul Fries > [EMAIL PROTECTED] >
Re: [vchkpw] Using tcpserver/mysql
Paul, You are exactly correct. Even when using my patch, vpopmail continues to update the tcp.smtp.cdb file. There's one reason for that. The first is that my suggestion for adding a --dont-update-tcprulesfile=true was never implemented. Granted, it would only benefit a few users (really big ones like me) and it really doesn't make that much difference. So, in short you are right. You can do as I do and manually disable the routines in the vpopmail code that writes out the file, or you can just ignore it. If you're really clever, you can code in a --don't-update-tcprulesfile function but to save some time, you might want to search through the archives of this list as I've already been down that road. Matt On Tuesday, September 3, 2002, at 12:08 PM, Paul Fries wrote: > Greetings, > > I am trying to accomplish using vpopmail with the tcpserver/mysql > patch. > > Based on the documentation found on step 13 of > http://www.inter7.com/vpopmail/INSTALL: > > -- > For sites using the mysql module and --enable-roaming-users=y it is > highly suggested to use Matt Simersons tcpserver-mysql patch. This > removes the need for vpopmail to compile a tcp.smtp.cdb file for each > pop authentication. > -- > > I have implemented the patch, and verified that tcpserver is reading my > /var/qmail/control/sql file properly (if I chmod 000 this file, > tcpserver complains about it on startup). Also with > --enable-roaming-users=y in vpopmail, vchkpw properly writes the > authenticated IP addresses/timestamp to the vpopmail.relay table in > MySQL. > > My problem is this: > > Even though it is properly writing the IPs to the vpopmail.relay table, > it is also writing them into the tcp.smtp.cdb hash file. I would like > it > to ONLY write to MySQL and not to the .cdb. I have tried > --enable-roaming-users=n, but this causes vchkpw to stop writing the IP > addresses to either location. > > It is almost like there should be a --dont-update-tcprulesfile=true > variable upon configuration. Am I missing something here? Has someone > else configured vpopmail in this manner and gotten around this problem? > > Thanks! > > Regards, > Paul Fries > [EMAIL PROTECTED] >
RE: [vchkpw] Using tcpserver/mysql
That would keep tcpserver from reading the hash. However, vchkpw will still go about happily updating this file on every popauth even though nothing is reading it. Seems like a waste of CPU cycles to me. Also, I WANT tcpserver to read this file so that I can use it for blocking mail from abusive hosts, etc. I just do not want vchkpw to update it on every popauth. Paul J. Fries CWIE, LLC - Internet Services -Original Message- From: slashboy [mailto:[EMAIL PROTECTED]] Sent: Tuesday, September 03, 2002 10:47 AM To: 'Paul Fries' Subject: RE: [vchkpw] Using tcpserver/mysql Ooops I repeating what you said Maybe try running the tcpserver without "-x /xxx/tcp.smtp.cdb" option -Original Message- From: Paul Fries [mailto:[EMAIL PROTECTED]] Sent: Wednesday, September 04, 2002 12:08 AM To: [EMAIL PROTECTED] Subject: [vchkpw] Using tcpserver/mysql Greetings, I am trying to accomplish using vpopmail with the tcpserver/mysql patch. Based on the documentation found on step 13 of http://www.inter7.com/vpopmail/INSTALL: -- For sites using the mysql module and --enable-roaming-users=y it is highly suggested to use Matt Simersons tcpserver-mysql patch. This removes the need for vpopmail to compile a tcp.smtp.cdb file for each pop authentication. -- I have implemented the patch, and verified that tcpserver is reading my /var/qmail/control/sql file properly (if I chmod 000 this file, tcpserver complains about it on startup). Also with --enable-roaming-users=y in vpopmail, vchkpw properly writes the authenticated IP addresses/timestamp to the vpopmail.relay table in MySQL. My problem is this: Even though it is properly writing the IPs to the vpopmail.relay table, it is also writing them into the tcp.smtp.cdb hash file. I would like it to ONLY write to MySQL and not to the .cdb. I have tried --enable-roaming-users=n, but this causes vchkpw to stop writing the IP addresses to either location. It is almost like there should be a --dont-update-tcprulesfile=true variable upon configuration. Am I missing something here? Has someone else configured vpopmail in this manner and gotten around this problem? Thanks! Regards, Paul Fries [EMAIL PROTECTED]
RE: [vchkpw] Using tcpserver/mysql
Yep. Have that, and tcpserver is reading it properly. Paul J. Fries CWIE, LLC - Internet Services -Original Message- From: slashboy [mailto:[EMAIL PROTECTED]] Sent: Tuesday, September 03, 2002 11:05 AM To: [EMAIL PROTECTED] Subject: RE: [vchkpw] Using tcpserver/mysql Hmm... One more thing I notice also, you will need a file /qmaildir/control/sql Content server sql.server port 3306 database vpopmail table relay user sqluser pass sqlpass time 1800 *Assuming mySQL using port 3306 :P correct me if I'm wrong -Original Message- From: Paul Fries [mailto:[EMAIL PROTECTED]] Sent: Wednesday, September 04, 2002 1:57 AM To: 'slashboy'; [EMAIL PROTECTED] Subject: RE: [vchkpw] Using tcpserver/mysql ;) Yep Doing that with the -S. That causes it to read the database. It is vchkpw that is updating the hash file. Paul J. Fries CWIE, LLC - Internet Services -Original Message- From: slashboy [mailto:[EMAIL PROTECTED]] Sent: Tuesday, September 03, 2002 10:52 AM To: [EMAIL PROTECTED] Subject: RE: [vchkpw] Using tcpserver/mysql ChangeLog: v1.6 - SMTP relay table is entirely contained in a MySQL table. Previously the tcp.smtp.cdb file was still generated based upon the contents of a MySQL table. We have modified the tcpserver application to check a MySQL table (instead of a flat file) for each SMTP session to determine if a user's IP can relay or not. If the database connection fails, we allow the SMTP session anyway but don't allow relaying. "Invoke tcpserver with the -S flag to utilize the new feature." :) -Original Message- From: Paul Fries [mailto:[EMAIL PROTECTED]] Sent: Wednesday, September 04, 2002 12:08 AM To: [EMAIL PROTECTED] Subject: [vchkpw] Using tcpserver/mysql Greetings, I am trying to accomplish using vpopmail with the tcpserver/mysql patch. Based on the documentation found on step 13 of http://www.inter7.com/vpopmail/INSTALL: -- For sites using the mysql module and --enable-roaming-users=y it is highly suggested to use Matt Simersons tcpserver-mysql patch. This removes the need for vpopmail to compile a tcp.smtp.cdb file for each pop authentication. -- I have implemented the patch, and verified that tcpserver is reading my /var/qmail/control/sql file properly (if I chmod 000 this file, tcpserver complains about it on startup). Also with --enable-roaming-users=y in vpopmail, vchkpw properly writes the authenticated IP addresses/timestamp to the vpopmail.relay table in MySQL. My problem is this: Even though it is properly writing the IPs to the vpopmail.relay table, it is also writing them into the tcp.smtp.cdb hash file. I would like it to ONLY write to MySQL and not to the .cdb. I have tried --enable-roaming-users=n, but this causes vchkpw to stop writing the IP addresses to either location. It is almost like there should be a --dont-update-tcprulesfile=true variable upon configuration. Am I missing something here? Has someone else configured vpopmail in this manner and gotten around this problem? Thanks! Regards, Paul Fries [EMAIL PROTECTED]
RE: [vchkpw] Using tcpserver/mysql
Hmm... One more thing I notice also, you will need a file /qmaildir/control/sql Content server sql.server port 3306 database vpopmail table relay user sqluser pass sqlpass time 1800 *Assuming mySQL using port 3306 :P correct me if I'm wrong -Original Message- From: Paul Fries [mailto:[EMAIL PROTECTED]] Sent: Wednesday, September 04, 2002 1:57 AM To: 'slashboy'; [EMAIL PROTECTED] Subject: RE: [vchkpw] Using tcpserver/mysql ;) Yep Doing that with the -S. That causes it to read the database. It is vchkpw that is updating the hash file. Paul J. Fries CWIE, LLC - Internet Services -Original Message- From: slashboy [mailto:[EMAIL PROTECTED]] Sent: Tuesday, September 03, 2002 10:52 AM To: [EMAIL PROTECTED] Subject: RE: [vchkpw] Using tcpserver/mysql ChangeLog: v1.6 - SMTP relay table is entirely contained in a MySQL table. Previously the tcp.smtp.cdb file was still generated based upon the contents of a MySQL table. We have modified the tcpserver application to check a MySQL table (instead of a flat file) for each SMTP session to determine if a user's IP can relay or not. If the database connection fails, we allow the SMTP session anyway but don't allow relaying. "Invoke tcpserver with the -S flag to utilize the new feature." :) -Original Message- From: Paul Fries [mailto:[EMAIL PROTECTED]] Sent: Wednesday, September 04, 2002 12:08 AM To: [EMAIL PROTECTED] Subject: [vchkpw] Using tcpserver/mysql Greetings, I am trying to accomplish using vpopmail with the tcpserver/mysql patch. Based on the documentation found on step 13 of http://www.inter7.com/vpopmail/INSTALL: -- For sites using the mysql module and --enable-roaming-users=y it is highly suggested to use Matt Simersons tcpserver-mysql patch. This removes the need for vpopmail to compile a tcp.smtp.cdb file for each pop authentication. -- I have implemented the patch, and verified that tcpserver is reading my /var/qmail/control/sql file properly (if I chmod 000 this file, tcpserver complains about it on startup). Also with --enable-roaming-users=y in vpopmail, vchkpw properly writes the authenticated IP addresses/timestamp to the vpopmail.relay table in MySQL. My problem is this: Even though it is properly writing the IPs to the vpopmail.relay table, it is also writing them into the tcp.smtp.cdb hash file. I would like it to ONLY write to MySQL and not to the .cdb. I have tried --enable-roaming-users=n, but this causes vchkpw to stop writing the IP addresses to either location. It is almost like there should be a --dont-update-tcprulesfile=true variable upon configuration. Am I missing something here? Has someone else configured vpopmail in this manner and gotten around this problem? Thanks! Regards, Paul Fries [EMAIL PROTECTED]
RE: [vchkpw] Using tcpserver/mysql
;) Yep Doing that with the -S. That causes it to read the database. It is vchkpw that is updating the hash file. Paul J. Fries CWIE, LLC - Internet Services -Original Message- From: slashboy [mailto:[EMAIL PROTECTED]] Sent: Tuesday, September 03, 2002 10:52 AM To: [EMAIL PROTECTED] Subject: RE: [vchkpw] Using tcpserver/mysql ChangeLog: v1.6 - SMTP relay table is entirely contained in a MySQL table. Previously the tcp.smtp.cdb file was still generated based upon the contents of a MySQL table. We have modified the tcpserver application to check a MySQL table (instead of a flat file) for each SMTP session to determine if a user's IP can relay or not. If the database connection fails, we allow the SMTP session anyway but don't allow relaying. "Invoke tcpserver with the -S flag to utilize the new feature." :) -Original Message- From: Paul Fries [mailto:[EMAIL PROTECTED]] Sent: Wednesday, September 04, 2002 12:08 AM To: [EMAIL PROTECTED] Subject: [vchkpw] Using tcpserver/mysql Greetings, I am trying to accomplish using vpopmail with the tcpserver/mysql patch. Based on the documentation found on step 13 of http://www.inter7.com/vpopmail/INSTALL: -- For sites using the mysql module and --enable-roaming-users=y it is highly suggested to use Matt Simersons tcpserver-mysql patch. This removes the need for vpopmail to compile a tcp.smtp.cdb file for each pop authentication. -- I have implemented the patch, and verified that tcpserver is reading my /var/qmail/control/sql file properly (if I chmod 000 this file, tcpserver complains about it on startup). Also with --enable-roaming-users=y in vpopmail, vchkpw properly writes the authenticated IP addresses/timestamp to the vpopmail.relay table in MySQL. My problem is this: Even though it is properly writing the IPs to the vpopmail.relay table, it is also writing them into the tcp.smtp.cdb hash file. I would like it to ONLY write to MySQL and not to the .cdb. I have tried --enable-roaming-users=n, but this causes vchkpw to stop writing the IP addresses to either location. It is almost like there should be a --dont-update-tcprulesfile=true variable upon configuration. Am I missing something here? Has someone else configured vpopmail in this manner and gotten around this problem? Thanks! Regards, Paul Fries [EMAIL PROTECTED]
RE: [vchkpw] Using tcpserver/mysql
ChangeLog: v1.6 - SMTP relay table is entirely contained in a MySQL table. Previously the tcp.smtp.cdb file was still generated based upon the contents of a MySQL table. We have modified the tcpserver application to check a MySQL table (instead of a flat file) for each SMTP session to determine if a user's IP can relay or not. If the database connection fails, we allow the SMTP session anyway but don't allow relaying. "Invoke tcpserver with the -S flag to utilize the new feature." :) -Original Message- From: Paul Fries [mailto:[EMAIL PROTECTED]] Sent: Wednesday, September 04, 2002 12:08 AM To: [EMAIL PROTECTED] Subject: [vchkpw] Using tcpserver/mysql Greetings, I am trying to accomplish using vpopmail with the tcpserver/mysql patch. Based on the documentation found on step 13 of http://www.inter7.com/vpopmail/INSTALL: -- For sites using the mysql module and --enable-roaming-users=y it is highly suggested to use Matt Simersons tcpserver-mysql patch. This removes the need for vpopmail to compile a tcp.smtp.cdb file for each pop authentication. -- I have implemented the patch, and verified that tcpserver is reading my /var/qmail/control/sql file properly (if I chmod 000 this file, tcpserver complains about it on startup). Also with --enable-roaming-users=y in vpopmail, vchkpw properly writes the authenticated IP addresses/timestamp to the vpopmail.relay table in MySQL. My problem is this: Even though it is properly writing the IPs to the vpopmail.relay table, it is also writing them into the tcp.smtp.cdb hash file. I would like it to ONLY write to MySQL and not to the .cdb. I have tried --enable-roaming-users=n, but this causes vchkpw to stop writing the IP addresses to either location. It is almost like there should be a --dont-update-tcprulesfile=true variable upon configuration. Am I missing something here? Has someone else configured vpopmail in this manner and gotten around this problem? Thanks! Regards, Paul Fries [EMAIL PROTECTED]
RE: [vchkpw] Using tcpserver/mysql
Extracted from INSTALL --- 13. For sites using the mysql module and --enable-roaming-users=y it is highly suggested to use Matt Simersons tcpserver-mysql patch. This removes the need for vpopmail to compile a tcp.smtp.cdb file for each pop authentication. Instead, tcpserver looks directly into the vpopmail mysql table of IP's You will need the tcpserver-mysql patch in order to remove the need to have the cdb file written. Best regards, Wee Teck -Original Message- From: Paul Fries [mailto:[EMAIL PROTECTED]] Sent: Wednesday, September 04, 2002 12:08 AM To: [EMAIL PROTECTED] Subject: [vchkpw] Using tcpserver/mysql Greetings, I am trying to accomplish using vpopmail with the tcpserver/mysql patch. Based on the documentation found on step 13 of http://www.inter7.com/vpopmail/INSTALL: -- For sites using the mysql module and --enable-roaming-users=y it is highly suggested to use Matt Simersons tcpserver-mysql patch. This removes the need for vpopmail to compile a tcp.smtp.cdb file for each pop authentication. -- I have implemented the patch, and verified that tcpserver is reading my /var/qmail/control/sql file properly (if I chmod 000 this file, tcpserver complains about it on startup). Also with --enable-roaming-users=y in vpopmail, vchkpw properly writes the authenticated IP addresses/timestamp to the vpopmail.relay table in MySQL. My problem is this: Even though it is properly writing the IPs to the vpopmail.relay table, it is also writing them into the tcp.smtp.cdb hash file. I would like it to ONLY write to MySQL and not to the .cdb. I have tried --enable-roaming-users=n, but this causes vchkpw to stop writing the IP addresses to either location. It is almost like there should be a --dont-update-tcprulesfile=true variable upon configuration. Am I missing something here? Has someone else configured vpopmail in this manner and gotten around this problem? Thanks! Regards, Paul Fries [EMAIL PROTECTED]
[vchkpw] Using tcpserver/mysql
Greetings, I am trying to accomplish using vpopmail with the tcpserver/mysql patch. Based on the documentation found on step 13 of http://www.inter7.com/vpopmail/INSTALL: -- For sites using the mysql module and --enable-roaming-users=y it is highly suggested to use Matt Simersons tcpserver-mysql patch. This removes the need for vpopmail to compile a tcp.smtp.cdb file for each pop authentication. -- I have implemented the patch, and verified that tcpserver is reading my /var/qmail/control/sql file properly (if I chmod 000 this file, tcpserver complains about it on startup). Also with --enable-roaming-users=y in vpopmail, vchkpw properly writes the authenticated IP addresses/timestamp to the vpopmail.relay table in MySQL. My problem is this: Even though it is properly writing the IPs to the vpopmail.relay table, it is also writing them into the tcp.smtp.cdb hash file. I would like it to ONLY write to MySQL and not to the .cdb. I have tried --enable-roaming-users=n, but this causes vchkpw to stop writing the IP addresses to either location. It is almost like there should be a --dont-update-tcprulesfile=true variable upon configuration. Am I missing something here? Has someone else configured vpopmail in this manner and gotten around this problem? Thanks! Regards, Paul Fries [EMAIL PROTECTED]