Q: I got "Internal server error" when running Open WebMail? I got "can not do setuid" error? I got "Software error: Can't locate etc/openwebmail.conf in @INC" error? A: There are many possible answers... 1. Please check you have installed a complete set of perl 5.005 or above. And You uncompress the openwebmail-1.xx.tgz with proper parameter. It should be "tar -zxvBpf openwebmail-1.xx.tgz" 2. Your openwebmail scripts may have wrong owner or mode. The permission of openwebmail.pl, openwebmail-main.pl, openwebmail-read.pl, openwebmail-viewatt.pl, openwebmail-send.pl, openwebmail-spell.pl, openwebmail-prefs.pl, openwebmail-folder.pl and checkmail.pl should be mode=4555 owner=root group=mail 3. Your perl may be compiled with suid ability disabled. a. check if you have a executable of suidperl, then 'chmod 4555 suidperl' and change #!/usr/bin/perl to the path of this suidperl b. Or recompile your perl with suid enabled Here are the steps: 1. grab the perl source tar ball 2. sh Configure -de (de means default perl config) 3. edit config.sh and set this : d_dosuid='define' d_suidsafe='undef' 4. then make, make install (make suidperl if needed) (thanks to Nemo Kaiser, nemoo@users.sourceforge.net) c. Or use uty/suidwrap.pl to generate C wrappers for all suid scripts. Here are the steps: 1. cd cgi-bin/openwebmail 2. perl uty/wrapsuid.pl /fullpath/cgi-bin/openwebmail All suid scripts will be renamed to .scriptname.pl and the C wrapper will be generated and named as script.pl (thanks to Chris Heegard, heegard@NativeI.com) 4. The MIME::Base64 or CGI module on your system may be too old a. install MIME-Base64-2.12.tar.gz b. install CGI.pm-2.74.tar.gz 5. Please install the libnet-1.0901.tar.gz, this is required since version 1.60. ps: In most cases, you can run the './openwebmail.pl' in text terminal to get more information about the error. Q: I got "Can't check filesystem of script "./openwebmail.pl" for nosuid"? A: Your openwebmail may be installed on a filesystem mounted nosuid. Please remove the nosuid parameter from /etc/fstab or install openwebmail to other filesystem. ps: 'man mount' for more information about nosuid Q: The login menu showed okay, but I always got login failure? A: Check auth_module option in openwebmail.conf: If it is 'auth_unix.pl', check if $unix_passwdfile and $unix_passwdmkdb in auth_unix.pl are correct If it is 'auth_pam.pl', make sure you have followed the instructions of 'PAM SUPPORT' in readme.txt. If you still got login failure, you can debug the pam module by: 1. modify auth_pam.pl uncomment all the lines of log_time(...) 2. login to openwebmail 3. check the /tmp/openwebmail.debug for more information. Q: Some of my users login okay, but others don't, why? A: It is possible that you are upgrading from version prior to 1.41 to the newer version. The virtual user support is totally reimplemented. It uses virtusertable instead of genericstable for user mapping now. Please refer to http://www.sendmail.org/virtual-hosting.html to know how to translate entries in genericstable to virtusertable. Q: The login is okay, but I can't change by my password with openwebmail? A: There are 2 possible answers for this: 1. Your passwdfile is not local accessible. If you use auth_unix.pl for authentication and your $unix_passwdfile is not a local accessible file (ex: examples in auth_unix.pl that are terminated with |), the changepassword feature won't be available. In these cases, you have to use auth_pam.pl to get the changepassword to work. 2. Your system doesn't support saved set-user-ID, so openwebmail won't get enough privilege to change the passwdfile. Try to set savedsuid_support to 'no' in openwebmail.conf to solve this problem. 3. The authentication module you used didn't support password changing, ex: auth_pop3.pl Q: I got "Couldn't open XXX-session-0.370606494136155!" error after login? A: You openwebmail-1.xx.tgz was uncompressed with improper parameter. It should be "tar -zxvBpf openwebmail-1.xx.tgz" Q: I got "Software error: Can't locate MIME/Base64.pm in @INC"? A: Please download MIME-Base64-2.12.tar.gz and install cd /tmp tar -zxvf MIME-Base64-2.12.tar.gz cd MIME-Base64-2.12 perl Makefile.PL make make install Q: I got "can't open /var/log/openwebmail.log" error? A: Please check the openwebmail.log permission, it should be owner=root, group=mail, mode=660 Q: Most functions works fine, but I got "Internal server error" when sending messages? A: Please install the libnet-1.0901.tar.gz, this is required since version 1.60. Q: The 'From' field of my message contained only 'username@'? A: You may has wrong setting for option domainname in openwebmail.conf 1. For version older than 1.41 , please be sure to use '' for a text string of hostname or use `` for the program (ex: /bin/hostname) 2. For version 1.50 or above, please list all domainnames separated with comma. or use auto for this setting, openwebmail will call '/bin/hostname' to get the fqdn of your host. Q: How can I use LDAP to authenticate user in openwebmail? A: You have 2 ways to do this: 1. use the auth_ldap.pl written by Ivan Cerrato, pengus@libero.it 2. use auth_pam module and let pam to talk with ldap server. Below is an article posted at sourceforge by "ispman@user.sourceforge.net (http://sourceforge.net/forum/message.php?msg_id=1462314) ---------------- begin ---------------- I hope this is useful to someone: I was able to get openwebmail to authenticate using ldap/pam on a system with Redhat 7.1, pam_ldap135, and OpenLDAP 2.0.18. In openwebmail.conf ~ auth_module auth_pam.pl In auth_pam.pl ~ my $pam_servicename="openwebmail"; my $pam_passwdfile="/etc/passwd"; vi /etc/pam.d/openwebmail: #%PAM-1.0 auth required /lib/security/pam_unix.so auth sufficient /lib/security/pam_ldap.so account required /lib/security/pam_unix.so account sufficient /lib/security/pam_ldap.so That's it. LDAP users will authenticate with the pam_ldap module and system users with pam_unix. ---------------- end ---------------- Q: How can I use multiple virtual domains with openwebmail? A: First, you have to decide whetherto use real virtual hosting or just user alias. 1. The User Alias User alias is much simpler, your system is actually a one domain machine. You only have to define the user alias in virtusertable. For example, you have 1 real domain server.com and 2 virtual domain virtual_1.com, virtual_2.com for your server. You already have tom and john on this server. And now you want 2 more tom and john for each virtual domain. Define the following entries in your virtusertable will make it. tom@virtual_1.com tom1 tom@virtual_2.com tom2 john@virtual_1.com john1 john@virtual_2.com john2 And how these users are used? If the user logins as tom and the webmail url is http://virtual_1.com/.... then alias tom@virtual_1.com will be matched, real user tom1 will be used. If the user logins as tom and the webmail url is http://virtual_2.com/.... then alias tom@virtual_2.com will be matched, real user tom2 will be used. If the user logins as tom and the webmail url is http://server.com/.... then real user tom will be authenticated. If the user logins as tom@virtual_1.com, then no matter what the url is, the alias tom@virtual_1.com will be matched, user tom1 will be used. In the user alias mapping, users of different virtualdomains are actually mapped to the real domain and then passed to same authentication module. 2. Real Virtual Hosting The real virtual hosting means your system is configured to a multiple domain machine in either smtpd, pop3d, webmail and authentication module. You will need to use the per domain config file in openwebmail for each of your virtual domain. These config files will be loaded based on 1. the domainname part in loginname, or 2. the hostname in the url of the webmail For example: If the user login as tom and the webmail url is http://virtual_1.com/..., config file for virtual_1.com will be loaded If the user login as tom and the webmail url is http://virtual_2.com/..., config file for virtual_2.com will be loaded If the user logins as tom@virtual_1.com, then no matter what the url is, config file for virtual_1.com will be loaded Each domain can have its own set of options in its config file, including domainname, authentication module, quota limit, mailspooldir ... A more detailed example is described in the Kevin Ellis's webpage: "How to setup virtual users on Open WebMail using Postfix & vm-pop3d" http://www.bluelavalamp.net/owmvirtual/ Q: The default email address for my user is always wrong, how can I set it? A: To have openwemail find the correct email for the user, you'd give it some hint. For example, if the webmail url is http://mail.server_1.com/cgi-bin/....., and you want the email for tom to be tom@virtual_1.com. You can achieve this in either the following 3 ways: 1. add an entry to virtusertable tom@virtual_1.com tom 2. create per user config file etc/users.conf/tom and set option domainnames to virtual_1.com 3. create per domain config file etc/sites.cof/mail1.server_1.com and set option domainnames to virtual_1.com While 1,2 are only for the user tom, the method 3 has effect for all users who logins with the url http://mail.server_1.com/cgi-bin/.... Q: How can I disallow the user to set their from email address? A: set option allow_setfromemail to 'no' in either openwebmal.conf or per user config. Q: Some of my messages were moved to trash folder automatically? A: Your messages were either filtered by 'global filter rule' or 'faked smtp message filter'. Global filter will filter messages with know virus attachments. The global filter rules are defined in the file global_filterbook (global_filterbook is defined as %ow_etcdir%/global_filterbook in openwebmail.conf.) The 'faked smtp message filter' will filter messages that have a faked smtp source, those messages are often from spammers. 'faked smtp filter' is default enabled and can be changed in openwebmail.conf. The user can also disable it in the user preference. Q: What are "messages with faked smtp"? A: In short, they are messages coming from mail servers that fake their name from other machines. Where is a message coming from? A message sent from machine A to machine B may have 2 cases: a. A ---> M1 ---> M2 ---> B (M1, M2 are mail servers) In this case, openwebmail use M1 as the from server. Since most of the time, A is windows machine using outlook. b A -------------------> B In this case, openwebmail use A as the from server. How do we know if a from server fakes his name? Each host may have 3 names in the mail header: $byas - name used by this server when saying hello to incoming connection $relay - name used by this server when relaying mail through other host $connectfrom - ip and name detected by other hosts resolved from DNS system when receiving connection from this server A from host is faking his name if a. $byas doesn't equal to $relay, and b. $connectfrom doesn't equal to $relay, and c. $connectfrom has different domain than the desition server B, and d. $connectfrom is not private IP Q: I still want the filtered messages, how can I disable faked smtp filter completely? A: 1. Set default_filter_fakedsmtp to 'no' in openwebmail.conf This will unset the default fakedsmtp filter for all newly created user 2. Uncheck the faked smtp filter option in user preference This will disable the fakedsmtp filter for a specific user Q: I could not add attachments? Open WebMail was hanged when I pressed the 'add' button to add attachments? A: 1. Your CGI or MIME-Base64 module may be too old, Please download CGI.pm-2.74.tar.gz and MIME-Base64-2.12.tar.gz in http://turtle.ee.ncku.edu.tw/openwebmail/download/packages/ and install them to your system. 2. Your proxy may limit the size of a POST request. Try to add attachments with no proxy setting in your browser. If you are the administrator of the squid proxy server, please set the request_body_max_size option to a larger value. Q: Attachments disappeared when I forwarded a message? A: Check permission of the following directories cgi-bin/openwebmail/etc - owner=root, group=mail, mode=755 cgi-bin/openwebmail/etc/sessions - owner=root, group=mail, mode=770 cgi-bin/openwebmail/etc/users - owner=root, group=mail, mode=770 Q: The permission of cgi-bin/openwebmail/etc is correct but attachments still disappeared in message forwarding? A: Hmmm, please upgrade to the latest version. Some old version(1.03,1.04) has little problem in attachment handling. Q: When I checked 'edit folder menu', I found some folders were empty but took disk space? A: The disk space occupied by a folder shown in 'edit folder menu' includes the size of a folder and its index. Though folder is empty, the folder index still has some data structure to maintain. Q: When I clicked 'spell check' button, I got "Internal Server error" in new window? A: Please be sure that you have installed ispell-3.1.20.tar.gz Q: Ispell has been correctly installed, but spellcheck still doesn't work? A: The spellcheck in old version of openwebmail doesn't work on RedHat 7.x, please upgrade your openwebmail to the latest version. Q: Why is openwebmail-spell.pl a suid root program? A: Because it needs to read the preference file, ~/mail/.openwebmailrc, of different users to get their language and dictionary setting. Q: I got 'Couldn't get read lock on ....' error? 'Couldn't get write lock on ....' error? A: This may hapeen if the folder openwebmail want to access is locked by other process. Most of the time, it is due to the concurrent accesses to the folder by other mail client through the pop3/imap daemons. This is okay, just back to previous page and try again. If you always got this error and be sure it is not caused by pop3/imap, you may try to debug the filelock in the following steps: 1. install the 'lsof' utility on your system (lsof is available at http://freshmeat.net/projects/lsof/) 2. cd your_web/cgi-bin/openwebmail patch < uty/filelock.pl.diff 3. step 2 will turn the filelock.pl to a version special for debugging, the debug output will be written to /tmp/openwebmail.debug 4. login into openwebmail and do some operation that will cause lock error, then check /tmp/openwebmail.debug for further information 5. Finally, don't forgt to do 'patch < uty/filelock.pl.diff' again to reverse filelock.pl back to normal version. Q: I have problems in reading some mail.... A: please check http://turtle.ee.ncku.edu.tw/openwebmail/download/doc/changes.txt to see if any update fixes your problem and download the openwebmail-current.tgz Q: I got 'Sorry, there was a problem sending your message' error? A: Please check if smtpserver option in openwebmail.conf points to valid SMTP server, its default is '127.0.0.1'. If you set it to name of some other SMTP server, please be sure the SMTP server allows mails relayed from your host. Q: The autoreply function doesn't work? A: An incoming message won't be replied by vacation.pl if 1. the destinated username has entries defined in /etc/alias which causes the mail routed to another account without calling vacation.pl 2. the destinated username doesn't not appear as an recipient in To: or Cc: 3. this message is sent by the destinated username himself If your message is not in the above 3 cases, please be sure that vacationinit and vacationpipe in openwebmail.conf have pointed to the path where the vacation program is. If the path is correct, you can do debug with the -d option 1. add the '-d' parameter to the vacationpipe in openwebmail.conf like below vacationpipe /usr/local/www/cgi-bin/openwebmail/vacation.pl -d -t60s 2. choose a user, enable his autoreply in openwebmail user preference 3. check the ~user/.forward file, the '-d' option should appear after vacation.pl 4. send a message to this user to test the autoreply 5. check the /tmp/vacation.debug for possible error information Q: When I enable autoreply feature, others get "Returned mail: see transcript for details" instead of my autoreply message? A: Your sendmail may be configured with Sendmail Restricted SHell or smrsh. vacation.pl file needs to be added to smrsh. If you are using RedHat 7.1, you may link vacation.pl to /etc/smrsh/ cd /etc/smrsh ln -s /var/www/cgi-bin/openwebmail/vacation.pl /etc/smrsh/vacation.pl (thanks to Emir Litric, elitric@yahoo.com) Q: My SENT folder shows -1 or other negative message size rather then regular message size? A: This problem occurs if you installed Open WebMail on the same partition where quota is enabled. Open WebMail uses temp files in cgi-bin/openwebmail/etc/sessions folders. Solution is to move sessions folder to another partition with no Quota. Please read RedHat-README.txt for detailed explanation on setting up this, since this problem mostly occurs on RedHat Linux 6.2 and bellow. (thanks to Emir Litric, elitric@yahoo.com) Q: My openwebmail was okay, but I got "Your request didn't contain the proper session ID cookie -- access denied!" in these days? A: Openwebmail puts user uploaded attachments in cgi-bin/openwebmail/etc/sessions/ temporarily. User will get error if there is no space left on the partition where cgi-bin/openwebmail/etc/sessions/ lives or user has exceeded his disk quota. Please move cgi-bin/openwebmail/etc/sessions to a larger partition with diskquota disabled, then create a symbolic link to that new directory cd /new_place mkdir sessions chmod 770 sessions chown 0 sessions chgrp mail sessions cd yourweb_cgi-bin/openwebmail/etc/ rm -Rf sessions ln -s /new_place/sessions . Q: The Open WebMail is very slow on my machine? A: It depends on how you define the "slow". The response time of Open WebMail in normal operation would be: 6 second on a p133 machine. 3 second on a p200mmx machine. 1 second on a celeron300 machine. ps: Some operations would take more time than normal operation, for example: indexing on a large folder, adding large attachment to a message. It is recommended that you install Open WebMail on a medium-sized machine. (ex: Celeron 300 with 128MB ram). Actually it runs quite well on a pentium 200mmx machine if you have enough ram installed. There is an analysis of memory usage of Open WebMail available at http://turtle.ee.ncku.edu.tw/openwebmail/download/doc/memory.usage Q: How can I upgrade from old version of Open Webmail? A: Each version of openwebmail is made to be backward compatible with old ones, no user setting or mail message will be lost after upgrade. The upgrade steps: 1. make a copy of your old openwebmail.conf 2. install new openwebmail in the same location as old version 3. update the new openwebmail.conf with the setting in old one. Q: How can I report problem? A: If your Open WebMail doesn't work, please post your problem on openwebmail forum http://sourceforge.net/forum/forum.php?forum_id=108433 with the following information OS Perl Version your openwebmail.conf the ls -l of the perl executable used in your openwebmail.pl the ls -l of your cgi-bin/openwebmail and cgi-bin/openwebmail/etc the ls -la of the ~user/mail/ the error message in your browser If your Open WebMail works but it shows strange output for some messages, please forward the message as an attachment to us (openwebmail@turtle.ee.ncku.edu.tw) ps: clicking the 'forward as attachment' icon in message reading menu Q: Can I call openwebmail from my programs with username/password specified? A: You can call the openwebmail with url http://server/openwebmail.pl?loginname=USER&password=PASS But this is a little dangerous since the loginname and password will be displayed on the URL line of the user's browser. Q: Can I call openwebmail and enter the composemessage menu directly? A: You can call the openwebmail with url http://server/openwebmail.pl?loginname=USER&password=PASS&to=EMAIL&subject=SUBJECT Q: How can I setup IE to trigger Open WebMail compose window when I click a "mailto:someone@somehost" link? A: In Windows Explorer, if you go to Tools -> Folder Options, click on the File Types tab. In the window that appears, scroll down the list to the entry for "URL:MailTo Protocol". Highlight URL:MailTo and click edit. Choose to edit the action for open. By default it probably has a command to open Outlook Express (or your default email client). Change the Application to read: "C:\program files\internet explorer\iexplore.exe" http://your_server/cgi-bin/openwebmail.pl?loginname=NAME&password=PASS" This will make Windows open Internet Explorer and go directly to the .pl page and login with the specified user and pass. (Thanks to Mike Andrews, mike@lcso.org) Q: How can I set an alias or link to the openwebmail script so users can user openwebmail with a shorter url? A: Please create a file, index.html, like below. Either a or b is okay. Than put this index.html to the location mapped by the url you want. a. ----------------------------------------
---------------------------------------- b. --------------------------------------- ---------------------------------------- Q: Can I install openwebmail without root priviledge? A: Yes, try the auth_pop3.pl. Some information is available in it. Q: Can I setup mail account for user without creating the unix acount? A: Yes, you need postfix + vm-pop3d + openwebmail. Kevin Ellis(kevin@bluelavalamp.net) has made a webpage for this, it is available at http://www.bluelavalamp.net/owmvirtual/ Q: Can Open WebMail be used with mod_perl? A: No, lots of code needs to be changed to make Open WebMail a good behavior program under mod_perl. Currently, it can not be used with mod_perl. Q: Does Open WebMail support maildir and vpop3mail user by Qmail? A: No, It doesn't. Q: Will Open WebMail support maildir and vpop3mail used by Qmail? A: Maybe, but it won't be implemented in the near future since we don't use qmail on our mail server. It is said that qmail has a 'mbox' compatible mode, you may use that mode with openwebmail. Q: Can I use Open WebMail in a commercial web site? A: Yes. Open WebMail is GPLed software (please see copyright.txt for detail of GPL). You can distribute/use/modify/sell it freely ONLY IF a. The GPL Copyright page must be kept untouched. b. Any improvement of Open WebMail or any product based on Open WebMail must be released to the public for free in source form if it is not for internal use. c. Products based on Open Webmail must be also distributed under GPL. 03/08/2002 openwebmail@turtle.ee.ncku.edu.tw