[ZendTo] Re: Zendto Installation login issue

Jules Jules at ZendTo.com
Sun Jul 25 12:03:52 BST 2010


See my in-line comment(s) below.

On 24/07/2010 20:24, Mark McIntosh wrote:
> Jules,
>
>
> Sorry that email was not finished and I did not mean to send it with out
> adding more info. In any case here is the issue:
>
> moved to 3.57-2
> mysql backend
> ubuntu 9.10 32 bit server
> database is set up correctly and adduseer.php writes to database
> cannot log in as user listed in database / listuser
> listuser.php shows added users correctly
> emailDomainRegexp uses the internaldomains.txt file with domains listed
> one per line
> browser is firefox
> recaptcha keys set up correctly for public and private
> (dropoff.infowall.com)
>
> I get no errors but upon attempting logon I get nothing but redirected
> to main page all attempts to login via recaptcha fail with no errors
> just reloads page.
>
>
> below is preferences.php and internaldomains.txt
>
>
> Thanks
>
>
> Mark
>
>
> <?PHP
> //
> // ZendTo
> // Copyright (C) 2006 Jeffrey Frey, frey at udel dot edu
> // Copyright (C) 2010 Julian Field, Jules at ZendTo dot com
> //
> // Based on the original PERL dropbox written by Doke Scott.
> // Developed by Julian Field.
> //
> // This program is free software; you can redistribute it and/or
> // modify it under the terms of the GNU General Public License
> // as published by the Free Software Foundation; either version 2
> // of the License, or (at your option) any later version.
> //
> // This program is distributed in the hope that it will be useful,
> // but WITHOUT ANY WARRANTY; without even the implied warranty of
> // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> // GNU General Public License for more details.
> //
> // You should have received a copy of the GNU General Public License
> // along with this program; if not, write to the Free Software
> // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
> USA.
> //
> //
>
> //
> // This file was generated by the config.php script
> //
>
> define('NSSDROPBOX_BASE_DIR','/opt/zendto/');
> define('NSSDROPBOX_LIB_DIR','/opt/zendto/lib/');
> define('NSSDROPBOX_DATA_DIR','/mnt/data/');
>
> // This defines the version number, please do not change
> define('ZTVERSION','3.57');
>
> // This is for gathering nightly stats, see docs about RRD and root's
> crontab
> define('RRD_DATA_DIR',NSSDROPBOX_DATA_DIR.'rrd/');
> define('RRD_DATA',RRD_DATA_DIR.'zendto.rrd');
> define('RRDTOOL','/usr/bin/rrdtool');
>
> // This sets which Database engine you are using, either 'SQLite' or 'MySQL'
> define('MySQL.php', 'SQLite');
>    
That's wrong. You said about you were using MySQL, in which case it 
should say
define('SqlBackend', 'MySQL');

"define" works like define('setting name','value').
> //
> // Preferences are stored as a hashed array. Inline comments
> // indicate what everything is for.
> //
> $NSSDROPBOX_PREFS = array(
>
> // Next line needed for SQLite operation
> //'SQLiteDatabase' =>  NSSDROPBOX_DATA_DIR."zendto.sqlite",
>
> // Next 4 lines needed for MySQL operation
> 'MySQLhost' =>  'localhost',
> 'MySQLuser' =>  'zendto',
> 'MySQLpassword' =>  'xxxxxxxxx',
> 'MySQLdb' =>  'zendto',
>
> // These describe the ZendTo and where a few things live
> 'dropboxDirectory' =>  NSSDROPBOX_DATA_DIR."dropoffs",
> 'logFilePath' =>  NSSDROPBOX_DATA_DIR."zendto.log",
> 'numberOfDaysToRetain' =>  14,
> 'showRecipsOnPickup' =>  FALSE,
> // You cannot increase these 2 numbers on 32-bit platforms.
> 'maxBytesForDropoff' =>  2147483647, // 2 GBytes - 1 = 2^32-1
> 'maxBytesForFile' =>  2147483647, // 2 GBytes - 1 = 2^32-1
>
> // Get these 2 values from
> // https://admin.recaptcha.net/recaptcha/createsite/
> 'recaptchaPublicKey' =>  '6Le1aLsSAAAAAAEo8fLzIZJTpHawqafeSnEpV_ij',
> 'recaptchaPrivateKey' =>  '6Le1aLsSAAAAAGF_jOJA2oHnHRUJOssFxu93f9ha',
>
> //
> // Settings for the Local SQL-based authenticator.
> //
> // See the commands in /opt/zendto/bin and the ChangeLog to use this.
> 'authenticator' =>  'Local',
> 'authLocalAdmins' =>  array('mmcintosh','zendto','infowall'),
>
> //
> // Settings for the IMAP authenticator.
> //
> // 'authenticator' =>  'IMAP',
> //'authIMAPServer' =>  'mail.soton.ac.uk',
> //'authIMAPDomain' =>  'soton.ac.uk',
> //'authIMAPAdmins' =>  array('admin1','admin2','admin3'),
>
> //
> // Settings for the 2-forest AD authenticator.
> // Set
> // 'authLDAPServers2' =>  array(),
> // if you only have to search 1 AD forest.
> //
> // 'authenticator' =>  'AD',
> //'authLDAPAdmins' =>  array('admin1','admin2','admin3'),
> //'authLDAPBaseDN1' =>  'OU=users,DC=ecs,DC=soton,DC=ac,DC=uk',
> //'authLDAPServers1' =>  array('ad1.ecs.soton.ac.uk','ad2.ecs.soton.ac.uk'),
> //'authLDAPAccountSuffix1' =>  '@ecs.soton.ac.uk',
> //'authLDAPUseSSL1' =>  false,
> //'authLDAPBindUser1' =>  'SecretUsername',
> //'authLDAPBindPass1' =>  'SecretPassword',
> //'authLDAPOrganization1' =>  'ECS, University of Southampton',
> //'authLDAPBaseDN2' =>  'DC=soton,DC=ac,DC=uk',
> //'authLDAPServers2' =>  array('ad1.soton.ac.uk','ad2.soton.ac.uk'),
> //'authLDAPAccountSuffix2' =>  '@soton.ac.uk',
> //'authLDAPUseSSL2' =>  false,
> //'authLDAPBindUser2' =>  '',
> //'authLDAPBindPass2' =>  '',
> //'authLDAPOrganization2' =>  'University of Southampton',
>
> // the default email domain when just usernames are supplied
> 'defaultEmailDomain' =>  'infowall.com',
>
> // This should either be a regular expression or a filename.
> // It defines the domain(s) that un-authenticated users can send
> // files to. Authenticated users can send to everywhere.
> //
> // * Filename *
> // If it is a filename, it must start with a / and not end with one.
> // The file will contain a list of domain names, one per line.
> // Blank lines and comment lines starting wth '#' will be ignored.
> // If a line contains "domain.com" for example, then the list of
> // recipient email domains for un-authenticated users will contain
> // "domain.com" and "*.domain.com".
> //
> // * Regular Expression *
> // This defines the recipient email domain(s) for un-authenticated users.
> // This example matches "soton.ac.uk" and "*.soton.ac.uk".
> //
> 'emailDomainRegexp' =>  '/opt/zendto/config/internaldomains.txt',
> //'emailDomainRegexp' =>  '/^([a-zA-Z\.\-]+\.)?soton\.ac\.uk$/',
>
> // regular expression defining a valid username for the Login page.
> 'usernameRegexp' =>  '/^([a-zA-Z0-9][a-zA-Z0-9\_\.\-\@]*)$/',
>
> // regular expression defining a valid email address for anyone.
> // Must look like /^(user)\@(domain)$/
> 'validEmailRegexp' =>
> '/^([a-zA-Z0-9][a-zA-Z0-9\.\_\-\+]*)\@([a-zA-Z0-9][a-zA-Z0-9\_\-\.]+)$/',
>
> 'cookieName' =>  'zendto-session',
> // Get the value for the 'cookieSecret' from this command:
> // /opt/zendto/sbin/genCookieSecret.php
> 'cookieSecret' =>  'f71271e9c9d6d7c0e5e90ce7fe592429',
> 'cookieTTL' =>  '7200',
>
> // The virus scanner uses ClamAV. You need to get clamav, clamav-db and
> // clamd installed (all available from RPMForge). If you cannot get the
> // permissions working, even after reading the documentation on
> // www.zendto.com, then change the next line to '/usr/bin/clamscan --quiet'
> // and you will find it easier, though it will be a lot slower to scan.
> 'clamdscan' =>  '/usr/bin/clamdscan --quiet',
>
> 'maxnotelength' =>  1000, // maximum length of the note to the recipients
> );
>
> require_once(NSSDROPBOX_LIB_DIR.'MySQL.php');
>    
That's wrong too, it should just say
require_once(NSSDROPBOX_LIB_DIR.SqlBackend.'.php');
If I had meant you to change that line, I would have put a comment above 
it :-)
I will add a comment to this line in the file explicitly saying you 
should not change it.
I will also change the MySQL/SQLite setting above so that it is much 
more clear about what you should change it to if you are using MySQL 
instead of SQLite.
So hopefully others won't make the same slip.
Many thanks for pointing out the improvements needed in my 
documentation! :-)
> ?>
>
> Internal Domains text file
>
>
> infowall.com
> snakehill.net
> terralogos.com
> commodatas.com
> ihpip.com
>    
That looks fine. In that file, it does also support comment lines that 
start with a "#" as well, just in case you want to add any comments to 
that file. I'll make it support comments that start with "//" as well.

Hopefully with those 2 changes above, you'll find it works.

Best regards,
Jules.

>
> Jules wrote:
>    
>> On 23/07/2010 17:13, Mark McIntosh wrote:
>>
>>      
>>> Hello All,
>>>
>>>
>>> 3.56-2 zendto
>>> MySQL backend
>>> Ubuntu 9.10 server
>>>
>>> I have added a user via the adduser.php script (verified it is in the
>>> database) I also have tried to dropoff with email verification and this
>>> also fails recaptcha or db fail unsure. Am I missing something here any
>>> ideas on debuging this behavior??
>>>
>>>
>>>        
>> And you are using the "Local" authenticator, and you have setup the
>> database correctly?
>> Have you set your timezone correctly?
>> What web browser are you using?
>> What does the "listusers.php" script say?
>>
>> Have you managed to successfully log in as this user? If so, you won't
>> have to verify the email address.
>> Is you emailDomainRegexp set for your domain?
>> Have you set up the recaptcha according to the instructions in the
>> preferences.php and got yourself a public and private key for the
>> correct server name from recaptcha.net (now points to Google)?
>> What errors (exactly) does it produce?
>>
>> What does your preferences.php say? (Just show us the whole thing)
>>
>> Jules
>>
>>
>>      
> _______________________________________________
> ZendTo mailing list
> ZendTo at zendto.com
> http://mailman.ecs.soton.ac.uk/mailman/listinfo/zendto
>    

Jules

-- 
Julian Field MEng CITP CEng
www.ZendTo.com

Need help fixing or optimising your systems?
Contact me!
Need help getting you started solving new requirements from your boss?
Contact me!

PGP footprint: EE81 D763 3DB0 0BFD E1DC 7222 11F6 5947 1415 B654
Follow me at twitter.com/JulesFM



More information about the ZendTo mailing list