source: www/openwebmail/doc/faq.txt @ 2

Last change on this file since 2 was 1, checked in by george, 6 years ago

Prvotní import všeho

File size: 74.9 KB
Line 
1Open WebMail Frequently Asked Questions
2
30.  SPECIAL NOTE FOR SPEEDYCGI
41.  INSTALLATION & STARTUP PROBLEMS
52.  LOGIN PROBLEMS
63.  RUNTIME ERRORS
74.  CONFIGURATION OPTIONS
85.  CHANGE PASSWORD
96.  READ MESSAGE
107.  COMPOSE MESSAGE
118.  MAIL FILTERING
129.  VIRUSCHECK/SPAMCHECK
1310. SEND MESSAGE
1411. AUTOREPLY
1512. SPELLCHECK
1613. ADDRESSBOOK
1714. CALENDAR
1815. SSL RELATED
1916. MISC PROBLEMS
2017. SPEED TUNING
2118. SOME CONCEPT
2219. HOW CAN I...
23
24
25========================================================================
26SPECIAL NOTE FOR SPEEDYCGI
27========================================================================
28
29We highly recommend using SpeedyCGI with Open WebMail.
30Open WebMail gets almost 5x to 10x speedup when running with SpeedyCGI.
31
32Please refer to section "PERSISTENT RUNNING through SpeedyCGI" in
33readme.txt for how to install SpeedyCGI on your system.
34
35If you are using SpeedyCGI with Open WebMail
36and you have modified any file other than etc/openwebmail.conf...
37
38Don't forget to do 'touch openwebmail*.pl'
39so SpeedyCGI knows to reload the scripts to see your modification.
40
41========================================================================
42INSTALLATION & STARTUP PROBLEMS
43========================================================================
44
45Q: I got "SCRIPT_DIR not set in /etc/openwebmail_path.conf !" error?
46A: On systems not passing perl script name as $0, openwebmail relies
47   on /etc/openwebmail_path.conf to know the directory it locates.
48
49   Please put 'the path of your openwebmail cgi directory' in the first
50   line of file /etc/openwebmail_path.conf.
51
52   For example, if the script is located at
53
54   /usr/local/apache/share/cgi-bin/openwebmail/openwebmail.pl,
55
56   then the content of /etc/openwebmail_path.conf should be:
57
58   /usr/local/apache/share/cgi-bin/openwebmail
59
60Q: I got the script content instead of the openwebmail login screen?
61   I got "You don't have permission to access openwebmail.pl on this
62   server" error?
63A: Your apache is not properly configured to execute CGI program.
64   Please edit the httpd.conf for your apache and modify it as follow:
65
66   <Directory /var/www/cgi-bin>
67      AllowOverride All
68      Options ExecCGI
69      Order allow,deny
70      Allow from all
71   </Directory>
72
73   You will notice "Order allow,deny" and "Allow from all" lines are
74   missing in default.
75
76   Then reload httpd.
77
78   (thanks to Thomas Chung, tchung.AT.openwebmail.org)
79
80ps: If you are using Mandrake:
81    httpd config file is located at /etc/httpd/conf/commonhttpd.conf
82    httpd reload command is "service httpd reload"
83
84    If you are using FreeBSD:
85    httpd config file is located at /usr/local/etc/apache/httpd.conf
86    httpd reload command is "/usr/local/sbin/apachectl restart"
87
88Q: I got "Internal server error" when running Open WebMail?
89   I got "can not do setuid" error?
90   I got "Software error: Can't locate etc/openwebmail.conf in @INC" error?
91A: There are many possible answers...
92
93   1. Please check if you have installed a complete set of perl 5.005 or above.
94      and You have uncompressed the openwebmail-1.xx.tar.gz with proper parameter.
95      It should be "tar -zxvBpf openwebmail-1.xx.tar.gz"
96
97   2. Your openwebmail scripts may have wrong owner or mode.
98      The permission of all openwebmail*.pl should be
99
100      mode=4555
101      owner=root
102      group=mail
103
104   3. The suid support of your perl may be not correctly enabled.
105
106      a. su to a regular user, then run openwebmail.pl form command line.
107      b. if it shows 'Can't do setuid', su to root,
108         have suidperl owner=root, node=4555, then try step a again
109      c. if it shows the following WARNING, su to root,
110         have suidperl owner=root, mode=555, then try step a again
111
112         YOU HAVEN'T DISABLED SET-ID SCRIPTS IN THE KERNEL YET!
113         FIX YOUR KERNEL, OR PUT A C WRAPPER AROUND THIS SCRIPT!
114
115      d. if it shows a long html text content, which means the suid
116         support of your suidperl is enabled.
117      e. if step b or c doesn't help, please goto step 4
118
119   ps: If you are using Suse Linux 9.0 Professional, please note that the
120       permissions of suidperl is changed at each time SuSEconfig is run.
121       To avoid having to change these permissions manually each time,
122       please modify /etc/permissions.easy (or what permissions file used ever)
123       to set the proper permissions.
124       (thanks to dialsc.AT.t-online.de, Schaefer, Dirk Alexander)
125
126   4. if executing openwebmail.pl with regular user always complains
127      'Can't do suid' or 'YOU HAVEN'T DISABLE SET-ID SCRIPTS IN THE KERNEL..'
128      then your perl executable was compiled without SUID support
129
130      Here are the steps to recompile your perl with suid enabled:
131
132      a. grab the perl source tar ball
133      b. sh Configure -de (de means default perl config)
134      c. edit config.sh and set this :
135         d_dosuid='define'
136         d_suidsafe='undef'
137
138      ps: If you run './Configure' to configure the perl interactively,
139          then don't forget to answer 'yes' for question
140          "Do you want to do setuid/setgid emulation? "
141          Or you won't be able to execute openwebmail
142
143      d. then make, make install (make suidperl if needed)
144      e. if you have compiled suidperl, then chmod 4555 suidperl
145         if you don't have suidperl, change #!/usr/bin/suidperl to
146         the path of your perl
147         (thanks to Nemo Kaiser, nemoo.AT.users.sourceforge.net)
148
149      ps: If you are using FreeBSD and your perl is compiled from port,
150          then please note that the SUID support is disabled by default
151          since the port for perl 5.8.1
152
153          You need to do 'make -DENABLE_SUIDPERL' in making port
154
155      ps: If you don't want to recompile perl, you choose to may use
156          misc/tools/suidwrap.pl to generate C wrappers for all suid scripts.
157
158          However, this is not recommended at all, as you will not be able
159          to use SpeedyCGI with the openwebmail system.
160
161          Here are the steps:
162          1. cd cgi-bin/openwebmail
163          2. perl misc/tool/wrapsuid/wrapsuid.pl /fullpath/cgi-bin/openwebmail
164          3. change #!/usr/bin/suidperl to the path of your perl
165
166          All suid scripts will be renamed to .scriptname.pl and
167          the C wrapper will be generated and named as script.pl
168          (thanks to Chris Heegard, heegard.AT.NativeI.com)
169
170          The spellcheck may not work on Solaris when using C wrappers.
171          (thanks to Isam Ishaq, isam.AT.planet.edu)
172
173   5. If you are using SpeedyCGI, and openwebmail always shows Internal error,
174      then your SpeedyCGI may be compiled without SUID support.
175      a. please be sure the speedycgi executable is owned by root with
176         permission 4555
177      b. please be sure you are using SpeedyCGI 2.22 or above
178      c. please be sure your perl is compiled with SUID support enabled
179         before compiling SpeedyCGI
180      d. please refer to section "PERSISTENT RUNNING through SpeedyCGI"
181         in readme.txt for how to compile SpeedyCGI.
182
183   6. If you are using SpeedyCGI, openwebmail seems be okay at the beginning,
184      but it shows "Internal Server Error" sometimes ...
185
186      Please check the apache log to see if there is error messages like
187
188      "unable to open tmp file ..."
189
190      If yes, you system may not have the savedsuid support,
191      please set have_savedsuid_support to 'no' in etc/suid.conf
192
193   7. Some perl modules may be too old or not exist on your system
194      a. install MIME-Base64-3.01.tar.gz or above
195      b. install CGI.pm-3.05.tar.gz or above
196      c. install the libnet-1.19.tar.gz or above
197
198ps: In most cases, you can run the './openwebmail.pl' in text terminal
199    to get more information about the error.
200
201Q: I got "Can't check filesystem of script ./openwebmail.pl for nosuid"?
202A: Your openwebmail may be installed on a filesystem mounted nosuid.
203   Please remove the nosuid parameter from /etc/fstab or install openwebmail
204   to other filesystem.
205
206ps: 'man mount' for more information about nosuid
207
208Q: I got "Please execute  '.../cgi-bin/openwebmail-tool.pl --init' on
209   server first!"?
210A: This is to init the mapping tables used by openwebmail, you need to
211
212   telnet to your server
213   su root
214   cd the_cgi_bin_dir_for_openwebmail
215   ./openwebmail-tool.pl --init
216
217Q: I got "Please execute script openwebmail-tool.pl with full path!"
218   in executing 'openwebmail-tool.pl --init' with full path?
219A: This may happens on platforms that run suid scripts through /dev/fd/.
220   Please run the script from where it is located.
221
222   cd the_dir_of_your_openwebmail_cgi
223   ./openwebmail-tool.pl --init
224
225Q: I got "Please change /openwebmail_scripts_dir/etc/dbm.conf from xxx to yyy"
226   in executing 'openwebmail-tool.pl --init' ?
227A: You may has wrong settings in your etc/dbm.conf.
228   Please modify the etc/dbm.conf as openwebmail suggested
229   and don't forget to redo 'openwebmail-tool.pl --init' again.
230
231Q: --init complains the dbm options after I upgrade OS?
232   --init complains the dbm options after I upgrade perl?
233   --init complains the dbm options when I copy openwebmail.conf to another
234   machine?
235A: The perl system may use different dbm format depending on what packages
236   have been installed in your server. These dbm format may be not compatible.
237   To know what dbm packages are used by your perl, please execute:
238
239   perl misc/test/dbmtest.pl
240
241   And you will see output like below:
242
243   ------------------------------------------------------------------
244   You perl uses the following packages for dbm::
245
246   AnyDBM_File.pm          /usr/libdata/perl/5.00503/AnyDBM_File.pm
247   NDBM_File.pm            /usr/libdata/perl/5.00503/mach/NDBM_File.pm
248
249
250   The dbm options in dbm.conf should be set as follows:
251
252   dbm_ext                 .db
253   dbmopen_ext             none
254   dbmopen_haslock         no
255   ----------------------------------------------------------------------
256
257   AnyDBM_File.pm is a "pure virtual base class", it has nothing of its own.
258   It's just there to inherit from one of the various DBM packages in the
259   following order: NDBM_File, DB_File, GDBM_File, SDBM_File, ODBM_File
260   (you may type 'perldoc AnyDBM_File' to see comparison of these packages)
261
262   In the above example, the system uses NBDM package for dbm.
263   when you upgrade OS, perl or migrate openwebmail to other machine,
264   you should run dbmtest.pl on both system to ensure that they use same
265   underlying dbm package.
266
267Q: ok, my two machines use different DBM systems, what can I do next?
268A: you can enforce the new one to use the same dbm package as the old one by
269   putting the 'use XXX_File.pm' after the 'use strict;' in all openwebmail*pl.
270   then try to run 'openwebmail-tool.pl --test' to see if the XXX_File.pm is
271   really used.
272
273   where XXX_File.pm is the value you get by running dbmtest.pl on old machine.
274
275Q: When I installed Open WebMail on Fedora 3, --init generated no output?
276A: Please turn the selinux feature off by
277   setting "SELINUX=disabled" in /etc/selinux/config,
278   then try to execute openwebmail-tool.pl --init again.
279
280========================================================================
281LOGIN PROBLEMS
282========================================================================
283
284Q: The login menu showed okay, but I always got login failure?
285A: Check auth_module option in openwebmail.conf:
286
287   If it is 'auth_unix.pl',
288   check if passwdfile_encrypted and passwdmkdb in auth_unix.conf are correct
289
290   If it is 'auth_pam.pl',
291   make sure you have followed the instructions of 'PAM SUPPORT' in readme.txt.
292
293   If you still got login failure, you can debug the pam module by:
294   1. modify auth_pam.pl
295      uncomment all the lines of main::log_time(...)
296   2. login to openwebmail
297   3. check the /tmp/openwebmail.debug for more information.
298
299ps: If you are running openwebmail under SpeedyCGI, don't forget to do a
300    'touch openwebmail*pl' after you complete the modification to
301    auth module or auth conf file.
302
303Q: It took a long time in the first login?
304A: Openwebmail has to initialize some mapping tables for future use,
305   it creates these tables in the first successful login, this guarantees
306   that openwebmail creates files only if it is correctly installed.
307
308ps: This automatic table initialization has been removed since openwebmail-1.80.
309    The sysadm have to initialize the db by himself explicitly with the command
310
311    './openwebmail-tool.pl --init'
312
313Q: It took a long time in every login?
314Q: Openwebmail hangs at every login after I saved the preference in the first
315   time?
316A: You probably have wrong settings in the dbm.conf,
317   please execute 'perl misc/test/dbmtest.pl' to find correct settings.
318
319Q: Some of my users login okay, but others don't, why?
320A: It is possible that you are upgrading from version prior to 1.41
321   to the newer version. The virtual user support is totally reimplemented.
322   It uses virtusertable instead of genericstable for user mapping now.
323   Please refer to
324   http://www.sendmail.org/virtual-hosting.html to know how to translate
325   entries in genericstable to virtusertable.
326
327Q: Some of my user with invalid shell couldn't login since upgrade to 1.80?
328A: A new variable check_shell option has been added to the auth_unix.conf
329   If it is set to yes, which means only users with valid shell can login.
330   If it is set to no, then openwebmail won't do valid shell checking.
331
332Q: A string 'Sessions : 5, 10, 20' appeared at the bottom of the copyright
333   page after successful login, what does this string mean?
334A: It means the number of users that were active in the last 1, 5 and 15
335   minutes, which gives a rough estimation of the webmail usage state.
336
337Q: How does autologin work? Will my password be stored somewhere?
338A: Whenever you have successfully logined openwebmail,
339   openwebmail will store your loginanme/logindomain as cookies in your browser.
340   If you didn't logout the session, then openwebmail will bring you into
341   main screen at your next login if the session is still not timeouted.
342
343   Openwebmail does this by checking if you have a valid session file on server,
344   so your password is not required or stored in either server or client side.
345
346Q: Is it safe to use autologin feature?
347A: It depends. You can enable it on your private computer if the computer is secure.
348   And if you are using a public computer, please don't enable autologin,
349   or be sure to do a logout before leaving that public computer.
350
351Q: I have enabled autologin on some public computer and forget to logout,
352   what can I do to prevent others to autologin my account?
353A: 1. go to that computer and do logout explicitly :)
354   2. If 1 is not possible, then you may login openwebmail, switch to webdisk,
355      turn on the checkbox of ShowHidden at the up-right corner,
356      then chdir to subdir .openwebmail, and remove the autologin.check.db
357   ps: this will remove all old remembered autologin sessions.
358   3. If you don't do anything, the old session will be finally timeouted anyway.
359
360Q: Can I limit the use of autologin feature?
361A: Yes, option allowed_autologinip can be used to control which subnets are
362   allowed to use the autologin, or even disable it at all.
363   Please refer to openwbemail.conf.help for more detail.
364
365
366========================================================================
367RUNTIME ERRORS
368========================================================================
369
370Q: I got "Couldn't open XXX-session-0.370606494136155!" error after login?
371A: You openwebmail-1.xx.tar.gz was uncompressed with improper parameter.
372   It should be "tar -zxvBpf openwebmail-1.xx.tar.gz"
373   Or you can refer to the file permission list in the end of readme.txt
374ps: you may check the permission cgi-bin/openwebmail/etc/sessions first,
375    it should be owner=root, group=mail, mode=771
376
377Q: I got "Software error: Can't locate MIME/Base64.pm in @INC"?
378A: Please install the MIME-Base64-3.01.tar.gz.
379
380Q: I got "Too many arguments for MIME::QuotedPrint::encode_qp"?
381A: Your MIME module is too old, please install the MIME-Base64-3.01.tar.gz.
382
383Q: I got "Software error: Can't locate Text/Iconv.pm in @INC"?
384A: Please install the Text-Iconv-1.2.tar.gz, this is required since
385   openwebmail-1.80
386
387Q: First login was okay and openwebmail told me to setup preference,
388   then I got "Internal Server Error" ?
389A: You may forget to install Text-Iconv-1.2.tar.gz,
390   or you may compile Text-Iconv with wrong parameter in Makefile.PL.
391   Please check readme.txt with keyword Text-Iconv to see
392   if any special modification is required for your platform
393
394Q: First login was okay and I can setup preference without problem,
395   then I got "Couldn't get write lock on INBOX!" immediately ?
396A: You may have wrong setting for option mailspooldir in openwebmail.conf
397
398Q: I got "Use of uninitialized value in subroutine entry at /xxx/DB_File.pm
399   line yyy" error ?
400A: The line you got error should be inside the sub routine tie_hash_or_array.
401   Please find the following comment line in DB_File.pm:
402
403   # make recno in Berkeley DB version 2 work like recno in version 1
404
405   And add the following line just before the above line:
406
407   $arg[3] = 0666 unless defined $arg[3] ;
408
409   (thanks to Paul Marquess, Paul.Marquess.AT.btinternet.com
410          and mainely_linux.AT.users.sourceforge.net)
411
412Q: I got "can't open /var/log/openwebmail.log" error?
413A: Please check the openwebmail.log permission, it should be
414   owner=root, group=mail, mode=660
415
416ps: If you get this error periodicly and your are using Mandrake Linux,
417    You may have to move the logfile somewhere else.
418    The Mandrake's (8.2 and 9.0) security system periodically scans the
419    /var/log directory and changes ownerships/permissions.
420    (thanks to Karl Schricker, karl_schricker.AT.gmx.net)
421
422Q: I got "Software error: ndbm store returned -1, errno XX, ..."?
423A: The meaning of errno XX could be found in errno.h
424
425   If your OS is FreeBSD, please check /usr/include/sys/errno.h
426   If your OS is Linux,   please check /usr/include/asm/errno.h
427   If your OS is Solaris, please check /usr/include/sys/errno.h
428
429   Most of the time, the error is due to exceeded user quota.
430   Please remove unwanted files or increase the quota for user.
431
432ps: Since openwebmail 20031128, you may set the option
433    use_syshomedir_for_dotdir to no to have openwebmail put index db
434    in ow_usersdir instead of user homedir, thus creating db won't be
435    limited by user quota.
436
437Q: My SENT folder shows -1 or other negative message size rather then
438   regular message size?
439A: This problem occurs if you installed Open WebMail on the same partition
440   where quota is enabled. Open WebMail uses temp files in
441   cgi-bin/openwebmail/etc/sessions folders.
442   Solution is to move sessions folder to another partition with no Quota.
443
444   Please read RedHat-README.txt for detailed explanation on setting up
445   this, since this problem mostly occurs on RedHat Linux 6.2 and bellow.
446   (thanks to Emir Litric, elitric.AT.yahoo.com)
447
448Q: I got "db warning - msg xxx index missing in INBOX" in log?
449   What does this mean?
450A: It may have two possible meanings.
451
452   1. Your message is moved to other folder by the openwebmail filter module
453
454      While openwebmail always maintains the index consistent with the folder
455      content, openwebmail only calls the mailfilter in the following two
456      condition:
457      a. before browsing the message list of a folder
458      b. before reading a message of the INBOX
459
460      If a message(aaa) matching the filter rule comes to INBOX folder, this
461      message will become the neighbor of one of the existing messages(bbb)
462      in the index db. If the user is reading message bbb, then aaa will
463      become the target linked by the right or left arrows in the bottom of
464      the readmessage webpage. Now if user clicks the arrow for next page,
465      you will get the db index missing error since the message(aaa) is
466      moved to other folder by the filter before being accessed..
467
468   2. Your message is removed by other pop3/imap client.
469      Do you use outlook and openwebmail at the same time?
470
471Q: I got "db warning - msg yyy index inconsistence in INBOX" in the log?
472   Does it mean my message were lost?
473A: No, you message were not lost, it just means the index db was not
474   reflecting the newest state of your mail folder, openwebmail did the
475   reindex automatically after logging this message.
476
477Q: I got "Your request didn't contain the proper session ID cookie --
478   access denied!" error?
479A: Please enable the cookie function of your browser.
480   Or you can set the option session_checkcookie to 'no' to disable
481   the check of cookie in openwebmail, but this may put the user
482   session in danger that it could be hijacked by others.
483
484Q: I got "Your request didn't come from the same ip of this session --
485   access denied!" error?
486A: The client may access the webmail server through a gateway which may
487   dynamicly change it IP address, please set the option
488   session_checksameip to 'no' to disable the IP check.
489
490Q: My openwebmail was okay, but I got "Your request didn't contain the
491   proper session ID cookie -- access denied!" in these days?
492A: Openwebmail puts user uploaded attachments in
493   cgi-bin/openwebmail/etc/sessions/ temporarily.
494   User will get error if there is no space left on the partition where
495   cgi-bin/openwebmail/etc/sessions/ lives or user has exceeded his disk quota.
496
497   Please move cgi-bin/openwebmail/etc/sessions to a larger partition with
498   diskquota disabled, then create a symbolic link to that new directory
499
500   cd /new_place
501
502   mkdir sessions
503   chmod 771 sessions
504   chown 0 sessions
505   chgrp mail sessions
506
507   cd yourweb_cgi-bin/openwebmail/etc/
508   rm -Rf sessions
509   ln -s /new_place/sessions .
510
511Q: I got 'Couldn't get read lock on ....' error?
512         'Couldn't get write lock on ....' error?
513A: If the error message appears immediately after you submit the CGI request,
514   then it may be due to the user doesn't has enough privilege to lock the
515   file or the directory for the file even doesn't exist.
516
517   If the error message appears after the cgi request submission for more
518   than 30 seconds, then the folder openwebmail want to access may be locked
519   by other process.
520
521   Most of the time, it is due to the concurrent accesses to the folder by
522   other mail client through the pop3/imap daemons.
523   This is okay, just back to previous page and try again later.
524
525   To know where the error happened exactly, you may try to set option
526   error_with_debuginfo to yes in openwebmail.conf. This would give you
527   more detailed information in case openwebmailerror() happens.
528
529   If you are running openwebmail in persistent mode,
530   there could be openwebmail processes locking the folder file for indexing.
531   To release the lock, you may kill the openwebmail speedy_backend process.
532
533   Since openwebmail 20041129, you may use 'openwebmail-tool.pl -u username'
534   to find the processes holding the filelocks, and kill the processes after
535   confirmation.
536   If the locks couldn't be released after killing the related processes,
537   you may solve the problem in a quick and dirty way...
538
539   rename the file, copy it to original name, then remove the renamed one.
540   This would have the file a new inode and thus release all old locks.
541
542ps: The 'openwebmail-tool.pl -u requires the lsof package.
543    it is available at http://freshmeat.net/projects/lsof/
544
545ps: Killing the openwebmail process may leave an incomplete index db
546    on disk. It is okay, the folder index db will be fixed or rebuild
547    in the next access.
548
549========================================================================
550CONFIGURATION OPTIONS
551========================================================================
552
553Q: The 'From' field of my message contained only 'username@'?
554A: You may has wrong setting for option domainnames in openwebmail.conf
555   please list all domainnames separated with comma, or
556   use auto for this setting, openwebmail will use the hostname in the url
557   or call '/bin/hostname' to get the FQDN (fully qualified domain name)
558   of your host.
559
560Q: The domainname detected by openwebmail is not what I want,
561   how can I specified the outgoing mail domain for all my users?
562A: Please set the domainnames option in openwebmail.conf from 'auto' to
563   the domainname you want. Multiple domainnames can be specified only
564   if separated by comma
565
566Q: How can I use LDAP to authenticate user in openwebmail?
567A: You have 2 ways to do this:
568   1. use the auth_ldap.pl written by Ivan Cerrato, pengus.AT.libero.it
569   2. use auth_pam module and let pam to talk with ldap server.
570
571   Below is an article posted at sourceforge by ispman.AT.user.sourceforge.net
572   (http://sourceforge.net/forum/message.php?msg_id=1462314)
573
574   ---------------- begin ----------------
575   I hope this is useful to someone:
576
577   I was able to get openwebmail to authenticate using ldap/pam on a system
578   with Redhat 7.1, pam_ldap135, and OpenLDAP 2.0.18.
579
580   In openwebmail.conf ~
581
582   auth_module             auth_pam.pl
583
584   In auth_pam.conf ~
585
586   servicename                  openwebmail
587   passwdfile_plaintext         /etc/passwd
588
589   vi /etc/pam.d/openwebmail:
590
591   #%PAM-1.0
592   auth       required     /lib/security/pam_unix.so
593   auth       sufficient   /lib/security/pam_ldap.so
594   account    required     /lib/security/pam_unix.so
595   account    sufficient   /lib/security/pam_ldap.so
596
597   That's it.  LDAP users will authenticate with the pam_ldap module and
598   system users with pam_unix.
599   ---------------- end ----------------
600
601Q: How can I use multiple virtual domains with openwebmail?
602A: First, you have to decide whether to use real virtual hosting or
603   just user alias.
604
605   1. The User Alias
606
607   User alias is much simpler, your system is actually a one domain machine.
608   You only have to define the user alias in virtusertable.
609
610   For example, you have 1    real domain server.com and
611                         2 virtual domain virtual_1.com, virtual_2.com
612   for your server.
613
614   You already have tom and john on this server.
615   And now you want 2 more tom and john for each virtual domain.
616
617   Define the following entries in your virtusertable will make it.
618
619   tom@virtual_1.com    tom1
620   tom@virtual_2.com    tom2
621   john@virtual_1.com   john1
622   john@virtual_2.com   john2
623
624   And how these users are used?
625
626   If the user logins as tom and the webmail url is http://virtual_1.com/....
627   then alias tom@virtual_1.com will be matched, real user tom1 will be used.
628   If the user logins as tom and the webmail url is http://virtual_2.com/....
629   then alias tom@virtual_2.com will be matched, real user tom2 will be used.
630
631   If the user logins as tom and the webmail url is http://server.com/....
632   then real user tom will be authenticated.
633
634   If the user logins as tom@virtual_1.com, then no matter what the url is,
635   the alias tom@virtual_1.com will be matched, user tom1 will be used.
636
637   In the user alias mapping, users of different virtualdomains are actually
638   mapped to the real domain and then passed to same authentication module.
639
640
641   2. Real Virtual Hosting
642
643   The real virtual hosting means your system is configured to a multiple
644   domain machine in either smtpd, pop3d, webmail and authentication module.
645
646   You will need to use the per domain config file in openwebmail for each
647   of your virtual domain. These config files will be loaded based on
648
649   1. the domainname part in loginname, or
650   2. the hostname in the url of the webmail
651
652   ps: You may need to use the domainname_equiv option to ensure no matter
653       which domainname is used by user or in URL, they will be mapped to
654       a consistent one.
655
656   For example:
657
658   If the user login as tom and the webmail url is http://virtual_1.com/...,
659   config file for virtual_1.com will be loaded
660   If the user login as tom and the webmail url is http://virtual_2.com/...,
661   config file for virtual_2.com will be loaded
662   If the user logins as tom@virtual_1.com, then no matter what the url is,
663   config file for virtual_1.com will be loaded
664
665   Each domain can have its own set of options in its config file,
666   including domainname, authentication module, quota limit, mailspooldir ...
667
668   A more detailed example is described in the Kevin Ellis's webpage:
669   "How to setup virtual users on Open WebMail using Postfix & vm-pop3d"
670   http://www.bluelavalamp.net/owmvirtual/
671
672Q: Could I have configuration file on per user basis?
673A: Yes, let us use tom@virtual_1.com as example.
674
675   If option auth_withdomain is set to yes,
676   the user conf is cgi-bin/openwebmail/etc/users.conf/virtual_1.com/tom
677
678   If option auth_withdomain is set to no,
679   the user conf is cgi-bin/openwebmail/etc/users.conf/tom
680
681Q: The default mail domain for my user is always wrong, how can I set it?
682A: To have openwebmail find the correct mail domain for the user,
683   you'd give it some hint.
684
685   For example, if the webmail url is
686
687   http://mail.server_1.com/cgi-bin/.....,
688
689   and you want the email for tom to be tom@virtual_1.com.
690
691   You can achieve this in either the following 2 ways:
692
693   1. create per user config file etc/users.conf/tom
694      and set option domainnames to virtual_1.com
695   2. create per domain config file etc/sites.cof/mail1.server_1.com
696      and set option domainnames to virtual_1.com
697
698   While 1 is only for the user tom, the method 2 has effect for all users
699   who logins with the url http://mail.server_1.com/cgi-bin/....
700
701Q: I want to change not only the domainname part but also the username part
702   of the default email address?
703A: You can use the virtusertable or the per user config file
704
705   1. virtusertable:
706      One or more email address can be defined in virtusertable for same user,
707      all those email addresses will be used as the default email address for
708      that user
709   2. per user config file:
710      You can set the default_fromemails option in the per user config file.
711      Multiple default email addresses can be specified only if you separate
712      them with comma.
713
714   ps: While virtusertable is convenient in setting default email addresses
715       for many users, per user config file let sysadm control many properties
716       for a specific user.
717
718Q: How can I disallow the user to set their from email address or realname?
719A: set option enable_loadfrombook to 'no'
720   in either openwebmail.conf or per user config.
721
722Q: How can I allow user to change their realname
723   but disallow the user to set their from email address?
724A: set option enable_loadfrombook to 'yes' and
725   set option frombook_for_realname_only to 'yes'
726   in either openwebmail.conf or per user config.
727
728Q: Can I install openwebmail without iconv() support?
729A: Yes, you may copy the misc/patches/iconv.pl.fake over the shares/iconv.pl,
730   which doesn't use iconv() at all but still support charset conversion for
731   Chinese and Japanese.
732
733Q: Can I setup mail account for user without creating the unix account?
734A: Yes, you need postfix + vm-pop3d + openwebmail.
735   Kevin Ellis(kevin.AT.bluelavalamp.net) has made a webpage for this,
736   it is available at http://www.bluelavalamp.net/owmvirtual/
737
738Q: I have set openwebmail for virtual user with vm-pop3d, but I got
739   "Sorry, root login is disabled for security's sake" at login?
740A: Please check the descriptions in auth_vdomain.pl/auth_pop3.pl and
741   find which case you are using. If you are using case b, don't forget
742   to set the $local_uid to the uid used by your vm-pop3d for all virtual
743   users.
744ps: We suggest you use the auth_vdomain.pl for system running vm-pop3d+postfix
745    Please refer to descriptions in auth_vdomain.pl for more detail.
746
747========================================================================
748CHANGE PASSWORD
749========================================================================
750
751Q: The login is okay, but I can't change by my password with openwebmail?
752A: There are 2 possible answers for this:
753
754   1. Your passwdfile is not local accessible.
755
756      If you use auth_unix.pl for authentication
757      and your passwdfile_encrypted file is not a local accessible
758      (ex: examples in auth_unix.pl that are terminated with |),
759      the changepassword feature won't be available.
760
761      If your system uses NIS, then you may try auth_nis.pl instead,
762      or you have to use auth_pam.pl to get the changepassword to work.
763
764   2. Your system doesn't support saved set-user-ID, so openwebmail won't get
765      enough privilege to change the passwd file.
766      Try to set option has_savedsuid_support to 'no' in etc/suid.conf
767      to solve this problem.
768
769   3. The authentication module which you used doesn't support password
770      changing, ex: auth_pop3.pl
771
772Q: I use openwebmail with NIS/YP system, the user can login but can not
773   change their password?
774A: The NIS/YP password can not be changed with auth_unix.pl,
775   you need to use the auth_nis.pl or auth_pam.pl as the authentication module.
776
777========================================================================
778READ MESSAGE
779========================================================================
780
781Q: Everything seems be fine at the beginning, but if I tried to open a
782   message after a period of time, the content of other message was showed
783   instead of the one I clicked?
784A: This is due to a bug of tell() in perl 5.8. And RedHat 8.0 bundles Perl
785   5.8 by default. Please upgrade your openwebmail to 1.81 or higher.
786   And you should try to find a bug fix for your perl since other applications
787   written by perl may operate improperly due to this bug
788
789Q: Some mails were not displayed right....
790A: please check
791   http://openwebmail.org/openwebmail/download/doc/changes.txt
792   to see if any update fixes your problem and download the
793   openwebmail-current.tar.gz
794
795Q: I got some messages that have attachment with filename "Unknown.tnef"
796   and contenttype "application/ms-tnef",
797   how can I extract files from this attachment?
798A: Solution 1:
799
800   You need to install tnef viewer in the user computer,
801   the viewer is available at http://www.ericphelps.com/tnef/
802
803   Solution 2:
804
805   You have to install the tnef extractor on the openwebmail server,
806   it is available at http://sourceforge.net/projects/tnef/.
807
808   To extract the files inside a tnef attachment, the user can save the
809   attachment into openwebmail webdisk, than extract files through webdisk
810   interface.
811
812ps: Open WebMail has supported tnef extraction since 2.32 20040719,
813    you may see the files encapsulated in tnef attachment directly
814    without extract them in webdisk by yourself
815
816========================================================================
817COMPOSE MESSAGE
818========================================================================
819
820Q: I could not add attachments?
821   Open WebMail was hanged when I pressed the 'add' button to add attachments?
822A: 1. Your CGI or MIME-Base64 module may be too old,
823      Please download CGI.pm-3.05.tar.gz and MIME-Base64-3.01.tar.gz in
824      http://openwebmail.org/openwebmail/download/packages/
825      and install them to your system.
826   2. Your proxy may limit the size of a POST request.
827      Try to add attachments with no proxy setting in your browser.
828      If you are the administrator of the squid proxy server,
829      please set the request_body_max_size option to a larger value.
830
831Q: Attachments disappeared when I forwarded a message?
832A: Check permission of the following directories
833   cgi-bin/openwebmail/etc          - owner=root, group=mail, mode=755
834   cgi-bin/openwebmail/etc/sessions - owner=root, group=mail, mode=771
835   cgi-bin/openwebmail/etc/users    - owner=root, group=mail, mode=771
836
837Q: The permission of cgi-bin/openwebmail/etc is correct but attachments
838   still disappeared in message forwarding?
839A: Hmmm, please upgrade to the latest version.
840   Some very old version(1.03,1.04) has little problem in attachment handling.
841
842Q: I can not choose to compose HTML messages?
843A: The HTML editor requires
844   1. IE5.5+ on windows platform, or
845   2. Mozilla 1.3b+ on all platforms
846
847Q: Is it possible to use openwebmail with browser other than IE5.5+
848   and Mozilla 1.3b+, e.g.: Opera or old Netscape?
849A: If you are using windows platform, then you may install neadroid
850   Neptune plug-in, which will add support for IE DHTML to your browser.
851   The URL is http://www.meadroid.com/neptune/download/index.htm
852
853   Some discussion of this plug-in is available at
854   http://www.interactivetools.com/forum/gforum.cgi?post=14116;sb=post_latest_reply;so=ASC;forum_view=forum_view_collapsed
855
856Q: The InserImage, InsertTable popup window don't show with correct charset?
857A: This mostly happens with apache web server 2.0 or later.
858   Please edit your Apache Configuration file, replace
859
860   AddDefaultCharset ISO-8859-1
861
862   with
863
864   AddDefaultCharset off
865
866Q: The InserImage, InsertTable popup window still show with correct charset
867   after I set AddDefaultCharset to off?
868A: This is due to the web page cache of your browser.
869   Please clean the cache of your browser and try again.
870
871========================================================================
872MAIL FILTERING
873========================================================================
874
875Q: Some of my messages were moved to trash/virus/spam folder automatically?
876A: Your messages were either filtered by 'global filter',
877   'per user filter' or 'smart filters'.
878
879   Global filter are rules defined in the file global_filterbook
880   (global_filterbook is defined as %ow_etcdir%/global_filterbook in
881    openwebmail.conf). By default, we will put rules that filters
882   know spammer or virus attachments in the global filter file.
883
884   Per user filter are filter rules defined by users themselves.
885
886   Smart filters includes repeatness filter, bad format from filter,
887   faked smtp filter, faked from filter and faked exe contenttype filter.
888
889   The 'repeatness filter' will filter messages with same from and subject for
890   more than certain times, those messages are often from spammers or virus.
891
892   The 'bad format from filter' will filter messages that have bad-format from
893   email address. A from email address is in bad format if
894   1. it is started with digits
895   2. it contains both digits and dot
896   3. it contains characters other than alphabets, digits, dot, dash,
897      underline.
898
899   The 'faked smtp filter' will filter messages that have a faked smtp
900   source, those messages are often from spammers.
901
902   The 'faked from filter' will filter messages whose From: field is different
903   than the email address in the SMTP envelope address, those messages are
904   often generated from virus.
905
906   The 'faked exe contenttype filter' will filter messages that have
907   executable attachment with faked contenttype, eg: audio, midi...
908   These messages are often generated by viruses, the browser will download
909   the attachment because its contenttype is audio and then execute the
910   downloaded file because it file extension is exe/com/bat/scr/pif/lnk.
911
912   The three faked xxx filters are default disabled and the default can be
913   changed in openwebmail.conf. The user can also enable/disable it in
914   the user preference.
915
916Q: What are "messages with faked smtp"?
917A: In short, they are messages coming from mail servers that fake their
918   name from other machines.
919
920   Where is a message coming from?
921
922   A message sent from machine A to machine B may have 2 cases:
923   a. A ---> M1 ---> M2 ---> B (M1, M2 are mail servers)
924      In this case, openwebmail use M1 as the from server.
925      Since most of the time, A is windows machine using outlook.
926   b  A -------------------> B
927      In this case, openwebmail use A as the from server.
928
929   How do we know if a from server fakes his name?
930
931   Each host may have 3 names in the mail header:
932   $byas - name used by this server when saying hello to incoming connection
933   $relay - name used by this server when relaying mail through other host
934   $connectfrom - ip and name detected by other hosts resolved from DNS system
935                  when receiving connection from this server
936
937   A from host is faking his name if
938   a. $byas doesn't equal to $relay, and
939   b. $connectfrom doesn't equal to $relay, and
940   c. $connectfrom has different domain than the destitution server B, and
941   d. $connectfrom is not private IP
942
943Q: I still want the filtered messages, how can I disable faked smtp filter
944   and faked exe contenttype filter completely?
945A: 1. Set default_filter_fakedsmtp and default_filter_fakedexecontenttype
946      to 'no' in openwebmail.conf. This will turn off the two filter for
947      all newly created user
948   2. Uncheck the faked smtp filter and faked exe contenttype filter option
949      in user preference. This will disable the two filters for a specific
950      user
951   3. you may set 'enable_smartfilter' to 'no' in openwebmail.conf
952
953Q: How can I disable the global filters?
954   How can I disable the per user filters?
955   How can I disable the smart filters?
956A: You may set options like enable_globalfilter, enable_userfilter,
957   enable_smartfilter to 'no' in openwebmail.conf.help
958
959Q: How can I know which filter rule move my messages?
960   How to debug the mailfilter message movement?
961A: An option debug_mailfilter is available since openwebmail20050201,
962   please set it to yes in openwebmail.conf, and you will see message
963   movement detail in logfile
964
965Q: Some of my messages disappeared?
966A: Your messages may be removed by the delmail_ifquota feature.
967
968Q: How does the delmail_ifquotahit option work?
969   Which message will be removed first?
970A: It will clean trash and draft first,
971   then remove oldest messages in other folders.
972   The removal will stop if the quota size is download to the 90% of user
973   quota limit.
974ps: The messages in INBOX and user defined folders will be removed only if
975    these folders occupy the majority of the mailfolder space.
976
977   Please refer to routine cutfolders in ow-shared.pl for detail
978
979Q: There were strange characters in the mail filter menu and those rules
980   could not be deleted?
981A: This is due to the dbmopen() of your perl didn't add the ".db" extension
982   automatically, so the ~/.filter.book and its index were written to the same
983   file. This problem can be fixed by properly setting dbm options.
984
985   perl cgi-bin/openwebmail/misc/test/dbmtest.pl [enter]
986
987   and you will get output like this:
988
989   dbm_ext              .db
990   dbmopen_ext          none
991   dbmopen_haslock      no
992
993   Then put the three lines into your etc/dbm.conf.
994
995========================================================================
996SPAMCHECK/VIRUSCHECK
997========================================================================
998
999Q: Why do I need spamcheck/viruscheck in openwebmail?
1000   Isn't it better to do these checks in MTA or mail deliver?
1001A: You may need spamcheck/viruscheck in openwebmail for two reasons:
1002   1. filter mechanism in MTA or mail deliver won't check messages that
1003      are fetched from remote pop3 servers
1004   2. Spam filters in MTA won't do personalized filtering.
1005
1006ps: While Spam filters in local deliver can do personalized filtering,
1007    it won't check outgoing messages.
1008    So we suggest install the Spam and Virus filter in MTA level,
1009    (so both incoming and outgoing will be checked for spam and virus)
1010    then enable the spamcheck for all messages in openwebmail
1011    (so user can train the spam filter according to his own preference)
1012    and enable viruscheck for pop3 messages in openwebmail
1013    (so user won't get infected messages from remote pop3 servers)
1014
1015Q: What is the difference between pop3 and all when setting option
1016   viruscheck_source and spamcheck_source?
1017A: If check source is set to pop3, pop3 messages are checked after fetching
1018   and the result is append as X-OWM-... in message header.
1019
1020   If check source is set to all, pop3 messages are checked after fetching,
1021   and the result is append as X-OWM-... in message header.
1022
1023   For messages without the X-OWM-... headers, which means they are not
1024   fetched from pop3 servers, and they will be checked when user want
1025   to browse the message list of the INBOX folder.
1026
1027Q: What is the order of the processing of viruscheck, spamcheck, global filter,
1028   perl user filter and smart filter?
1029A: viruscheck -> filter rules (including global and user filter rules) -> spamcheck -> smart filters
1030
1031Q: The spamcheck is very slow, even there are only few messages in INBOX?
1032A: Please be sure you have start the spamd with --local option
1033
1034Q: The spamcheck is still slow even with --local option?
1035A: Your server may be not fast enough to do the viruschecking or spamchecking
1036   for all messages, please change the viruscheck_source_allowed and
1037   spamcheck_source_allowed to pop3, and try to add viruscheck/spamcheck
1038   to your mail system in MTA level or mail deliver.
1039
1040Q: My spamcheck/viruscheck/learnspam doesn't work?
1041   I see spamcheck/viruscheck/learnspam error in openwebmail.log?
1042A: Please be sure your system has installed the spamassassin and clamav,
1043   then test spamc, sa-lean, clamdscan with the argument defined in pipecmd
1044   in openwebmail.conf.
1045ps:You should do the test in both root and non-root account.
1046
1047Q: I have disabled spamcheck/viruscheck feature,
1048   but the Virus and Spam folder exist in my folder list?
1049A: you have to set option has_virusfolder_by_default and
1050   has_spamfolder_by_default to 'no'
1051
1052Q: I have set option has_virusfolder_by_default and has_spamfolder_by_default
1053   to 'no', the Virus and Spam folders still exist.
1054A: When the two options are set to 'no', it only means openwebmail doesn't
1055   treat them as default folders. (In other words, openwebmail won't creat
1056   them automatically if they doesn't exist)
1057   However, openwebmail will still list them if they already exist in
1058   ~user/mail/ after you change the options to 'no', so you may have to remove
1059   the ~user/mail/spam-mail and ~user/mail/virus-mail manually.
1060
1061========================================================================
1062SEND MESSAGE
1063========================================================================
1064
1065Q: Most functions work fine, but I could not send message.
1066   I got "Can't locate Net/SMTP.pm in @INC ..." error?
1067   I got "Internal server error"?
1068A: Please install the libnet-1.19.tar.gz, this is required since
1069   openwebmail 1.60.
1070
1071Q: I am sure the sendmail was running up on my mail server, but I got
1072   "Couldn't open SMTP server 127.0.0.1" error when sending messages?
1073A: Your sendmail may be configured to listen on the server_ip:25 only,
1074   it didn't listen on 127.0.0.1:25
1075   You can either
1076
1077   a. override the option smtpserver in openwebmail.conf and
1078      set it to your server_ip
1079
1080   b. modify the sendmail.cf and find the following line
1081
1082   O DaemonPortOptions=Port=smtp,Addr=x.x.x.x, Name=MTA
1083   (where x.x.x.x is the server_ip)
1084
1085   Please change the x.x.x.x to 0.0.0.0 to make sendmail
1086   listen on all IPs binding on the server network interfaces.
1087
1088Q: I still got the "Couldn't open SMTP server 127.0.0.1" error?
1089A: Please check the permission of your /etc/protocols and /etc/services,
1090   it should be 0644. (-rw-r--r--)
1091
1092Q: I got 'Sorry, there was a problem sending your message' error?
1093A: a. Please check if smtpserver option in openwebmail.conf points to valid
1094      SMTP server, its default is '127.0.0.1'. If you set it to name of some
1095      other SMTP server, please be sure the SMTP server allows mails relayed
1096      from your host.
1097   b. When SMTP server is set to 127.0.0.1, please be sure the hosts.allow
1098      has the following entry
1099
1100      sendmail : localhost 127.0.0.1 : allow
1101
1102Q: Does openwebmail support SASL authentication on SMTP?
1103A: Yes, but only the PLAIN type authentication is supported.
1104   The username/password will be encoded with base64, so it is not very secure.
1105   To enable the SASL authentication:
1106   1. set option smtpauth to yes in openwebmail.conf
1107   2. set the smtpauth_username, smtpauth_password in smtpauth.conf
1108
1109========================================================================
1110AUTOREPLY
1111========================================================================
1112
1113Q: The autoreply function doesn't work?
1114A: An incoming message won't be replied by vacation.pl if
1115   1. the destinated username has entries defined in /etc/alias which causes
1116      the mail routed to another account without calling vacation.pl
1117   2. the destinated username doesn't not appear as an recipient in To: or Cc:
1118   3. this message is sent by the destinated username himself
1119
1120   If your message is not in the above 3 cases, please be sure that
1121   vacationinit and vacationpipe in openwebmail.conf have pointed to the
1122   path where the vacation program is.
1123
1124   If the path is correct, you can do debug with the -d option
1125
1126   1. add the '-d' parameter to the vacationpipe in openwebmail.conf
1127      like below
1128
1129      vacationpipe  /usr/local/www/cgi-bin/openwebmail/vacation.pl -d -t60s
1130
1131   2. choose a user, enable his autoreply in openwebmail user preference
1132   3. check the ~user/.forward file, the '-d' option should appear after
1133      vacation.pl
1134   4. send a message to this user to test the autoreply
1135   5. check the /tmp/vacation.debug for possible error information
1136
1137Q: When I enable autoreply feature, others get "Returned mail: see
1138   transcript for details" instead of my autoreply message?
1139A: Your sendmail may be configured with Sendmail Restricted SHell or smrsh.
1140   vacation.pl file needs to be added to smrsh.
1141
1142   If you are using RedHat 7.1, you may link vacation.pl to /etc/smrsh/
1143
1144   cd /etc/smrsh
1145   ln -s /var/www/cgi-bin/openwebmail/vacation.pl /etc/smrsh/vacation.pl
1146   (thanks to Emir Litric, elitric.AT.yahoo.com)
1147
1148========================================================================
1149SPELLCHECK
1150========================================================================
1151
1152Q: When I clicked 'spell check' button, I got "Internal Server error" in new
1153   window?
1154A: 1. Please upgrade your openwebmail to 2003/11/16 or later.
1155   2. If you are using C wrappers for suid scripts on Solaris,
1156      please recompile you perl with suid enabled instead of using
1157      the C wrappers.
1158      (thanks to Isam Ishaq, isam.AT.planet.edu)
1159   3. Please check the apache error log for more information
1160
1161Q: I can use aspell for spelling check, but personal dictionary doesn't work?
1162A: 1. Please upgrade your openwebmail to 2003/11/16 or later.
1163   2. If you are using aspell, please be sure your homedir is group readable.
1164      Yes, this is strange, but it seems aspell need this.
1165      (thanks Scott A. Mazur, scott.AT.littlefish.ca)
1166   3. If you don't want to change the directory permission.
1167      Please set option has_savedsuid_support to 'no' in etc/suid.conf
1168   4. If you don't want to set option either, you may try to use ispell
1169      instead of aspell
1170
1171Q: Why is openwebmail-spell.pl a suid root program?
1172A: Because it needs to read the preference file, ~/.openwebmai/openwebmailrc
1173   of different users to get their language and dictionary setting.
1174
1175========================================================================
1176ADDRESSBOOK
1177========================================================================
1178Q: I got "Too many arguments for MIME::QuotedPrint::encode_qp"?
1179A: Your MIME module is too old, please install the MIME-Base64-3.01.tar.gz.
1180
1181Q: The content of my global addressbook is gone after I upgrade my openwebmail?
1182A: No, it is still there.
1183
1184   The filename, location and format of openwebmail addressbook has been changes
1185   since 2.41-20041030. While user personal addressbooks will be converted
1186   automatically at user login, the global addressbook will be converted only if
1187   it is specified by sysadm explicitly.
1188
1189   To convert the global addressbook:
1190
1191   cd your_cgi-bin/openwebmail
1192   openwebmail-tool.pl -c
1193
1194Q: Can I have multiple personal addressbooks?
1195A: Yes, each user can create as many addressbooks as he want through the
1196   addressbooks web management menu
1197
1198Q: Can I have multiple global addressbooks?
1199A: Yes, but this could not be done in web interface,
1200   you have to goto directory specified by option ow_addressbooksdir
1201   (eg: cgi-bin/openwebmail/etc/addressbooks)
1202   then use 'touch new_addressbooks_filename' to create empty global addressbook.
1203   Be sure the permission is right so other users can read it.
1204
1205Q: Can I edit the global addressbooks?
1206   Which user can edit global addressbooks?
1207A: Yes, if the option abook_globaleditable is set to yes
1208   and the user has enough privilege to write the global addressbook file,
1209   then he can add, delete or modify the contacts within that gobal addressbook.
1210
1211========================================================================
1212CALENDAR
1213========================================================================
1214
1215Q: Everything works fine, but I got timeout when clicking the calendar button?
1216A: Please check your apache error log if it has lines like below:
1217
1218   [...] openwebmail-cal.pl: Use of uninitialized value in subroutine entry
1219   at /usr/lib/perl5/5.8.0/i386-linux-thread-multi/DB_File.pm line xxx.
1220
1221   If yes, please search the RUNTIME ERROR section with keyword DB_File.pm
1222
1223Q: The email notification for calendar event doesn't work?
1224A: You need to use openwebmail-tool.pl in crontab to check the calendar
1225   events for sending the notification emails. For example:
1226
1227   0 */2 * * * /usr/local/www/cgi-bin/openwebmail/openwebmail-tool.pl -a -n -q
1228
1229   The above line will use openwebmail-tool.pl to check the calendar
1230   events for all users every two hours. Please note we use this
1231   frequency because the default value of option calendar_email_notifyinterval
1232   is 120 (minute). You have to set the crontab according to your
1233   calendar_email_notifyinterval.
1234
1235========================================================================
1236SSL RELATED
1237========================================================================
1238
1239Q: Can I use openwebmail with SSL?
1240A: yes. just https:// instead of http:// for the URL of webmail
1241
1242Q: I got "site not found" or "could not connect to the server" error?
1243A: Yes, openwebmail can work with SSL.
1244   The error is due to IE doesn't do keepalives correctly when using SSL.
1245
1246   Please add the following line to your Apache configuration for SSL
1247   (or VirtualHost container)
1248
1249   SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
1250   (thanks to Happy Camper, hcamper.AT.users.sourceforge.net)
1251
1252Q: Can I use openwebmail with SSL on multiple virtual domains on one server?
1253A: Since apache only allow SSL for one virtual domain, you can have only one
1254   https url. To use virtual domain other than the one specified in https,
1255   you have to specify the virtual domain in URL when link to login webpage
1256
1257   https://sample.com/openwebmail/openwebmail.pl?logindomain=vdomain1.com
1258   (thanks to scott.AT.littlefish.ca for his code)
1259
1260========================================================================
1261MISC PROBLEMS
1262========================================================================
1263
1264Q: The help tutorial doesn't show with correct charset?
1265A: This mostly happens with apache web server 2.0 or later.
1266   Please edit your Apache Configuration file, replace
1267
1268   AddDefaultCharset ISO-8859-1
1269
1270   with
1271
1272   AddDefaultCharset off
1273
1274Q: The DayLight Saving option in user preference doesn't work,
1275   messages in folders still have wrong date in folderlist view?
1276A: This is due to those messages were parsed at the time that DST option
1277   was set to wrong value, the problem could be solved by
1278
1279   1. set DST to auto
1280   2. goto folder management
1281   3. choose 'recreate index' for your folders.
1282
1283ps: This could be quite time-consuming if you have large folder,
1284    you may do it with openwebmail-tools.pl in background.
1285
1286Q: Is the 'filename search' in webdisk case sensitive or case insensitive?
1287A: If the 'find' command in your unix supports -iname, the search will be
1288   case insensitive. Or it will be case sensitive.
1289
1290Q: Why the 'content search' in webdisk searches files in current directory
1291   only?
1292A: The file content search is done with the unix command 'grep'.
1293   If the 'grep' in your unix supports -r, the search will search current
1294   directory and all its sub directories recursively. Or it will search files
1295   in current directory only.
1296
1297Q: The ssh terminal in openwebmail supports SSH1 only?
1298A: Yes. The ssh terminal support in openwebmail is actually done with the
1299   MindTerm package from www.appgate.com. The bundled MindTerm is 1.21,
1300   which is the latest GPLed release but quite old.
1301
1302   You may install MindTerm version 2.3.1 from www.appgate.com, which
1303   supports both SSH1 and SSH2. Please refer to
1304   data/openwebmail/applet/mindterm2/INSTALL.MINDTERM2 for more detail.
1305
1306========================================================================
1307SPEED TUNING
1308========================================================================
1309
1310Q: Will it speedup the login if the GNU copyright page is removed?
1311A: The GNU copyright page should be displayed for less than 1 second.
1312   if you see it for a very long time after you login, then openwebmail
1313   is busy in processing your INBOX folder (eg: mail indexing, filtering,
1314   trash cleaning..)
1315
1316Q: My openwebmail is slow, how can I make it faster?
1317A: You may try to use Open WebMail with the SpeedyCGI package, you will
1318   get about 5x-10x speedup. Please refer to the readme.txt with keyword
1319   SpeedyCGI for more detail.
1320
1321Q: How SpeedyCGI speeds up Open WebMail?
1322A: SpeedyCGI makes Open WebMail resident in memory at the first request,
1323   then the following requests will be served immediately without the
1324   overhead of starting perl CGI.
1325
1326   This resident copy will terminate if it is idle for a certain time,
1327   the default is 3600 seconds (1 hour)
1328   You can set this with -t option in the Open WebMail scripts.
1329
1330   eg: #!/usr/bin/speedy -T -- -t7200
1331
1332Q: Will the resident Open Webmail become larger and larger and finally
1333   a memory hog?
1334A: No. We have tried our best to remove any memory leak from Open WebMail.
1335   And a resident CGI will be restarted after it has served certain
1336   number of requests. The default maxrun number is 500.
1337   You can set this with -r option in the Open WebMail scripts.
1338
1339   eg: #!/usr/bin/speedy -T -- -t7200 -r250
1340
1341Q: Some files of name like 'speedy.10.0.50.S' appear in my system /tmp?
1342A: They are the temporary files used by speedy and its backend program.
1343   Please don't remove them. If you hope to put them in other location,
1344   You can set the prefix of temporary files with -T option
1345
1346   eg: #!/usr/bin/speedy -T -- -t7200 -r250 -T/var/tmp/.speedy
1347
1348Q: Open WebMail is fast when it is resident in memory, but the firsttime
1349   startup delay is still long, is it possible to hide that delay from user?
1350A: You can use the script preload.pl to preload openwebmail scripts,
1351   so the webmail user won't see the startup delay.
1352
13531. through web interface
1354   http://your_server/cgi-bin/openwebmail/preload.pl
1355   Please refer to preload.pl for default password and how to change it.
1356
13572. through command line or you can put the following line in crontab
1358   to preload the most frequently used scripts into memory
1359
1360   0 * * * *    /usr/local/www/cgi-bin/openwebmail/preload.pl -q openwebmail.pl openwebmail-main.pl openwebmail-read.pl
1361
1362   If your machine has a lot of memory, you may choose to preload all
1363   openwebmail scripts
1364
1365   0 * * * *    /usr/local/www/cgi-bin/openwebmail/preload.pl -q --all
1366
1367Q: I got "connect error" when using preload.pl?
1368A: The preload.pl tries to connect the webmail server on localhost.
1369   Please check if your webserver is binding on localhost or
1370   change the variable $httphost in preload.pl
1371
1372Q: How do I know if my Open WebMail is running under SpeedyCGI?
1373A: 1. Goto the user preference and click the 'about' button,
1374      if you see word 'Persistence' appear in the line of webmail,
1375      then your openwebmail is running under SpeedyCGI
1376   2. Check the top of webmail page window border,
1377      if you see a '+' appear after  the 'Open WebMail' string,
1378      then the page is generated under SpeedyCGI.
1379
1380Q: I saw a HTTP compression checkbox in login screen, what is it used for?
1381A: When it is checked, web pages generated by Open WebMail will be
1382   transmitted in gzip compressed format, this greatly reduces the time
1383   required for page download.
1384
1385   This is very useful for users with slow connection. An rough experiment
1386   showed that the compressed format is about only 10% in size compared with
1387   the original web page.
1388
1389Q: I could not check the HTTP compression checkbox, it is always disabled?
1390A: The HTTP compression feature won't be available if any one of the three
1391   components (web server, web proxy, web browser) doesn't support HTTP
1392   compression.
1393
1394   To enable the HTTP compression support:
1395
1396   1. Please install the Compress-Zlib-1.33.tar.gz on openwebmail server
1397   2. Please enable "HTTP 1.1 support for direct connection" in your browser
1398   3. If your connect to openwebmail server through proxy server,
1399      please enable "HTTP 1.1 support over proxy" in your browser.
1400   4. If the proxy server doesn't support HTTP 1.1,
1401      please list your openwebmail server in exclusion table of proxy setting
1402      in your browser.
1403
1404Q: How do I know if my Open WebMail is running with HTTP compression enabled?
1405A: 1. Goto the user preference and click the 'about' button,
1406      if you see word 'HTTP Compression' appear in the line of webmail,
1407      then your openwebmail is running with HTTP compression enabled
1408   2. Check the top of webmail page window border,
1409      if you see a 'z' appear after  the 'Open WebMail' string,
1410      then the page is generated with HTTP compression enabled.
1411
1412Q: Openwebmail uses lot of static images.
1413   How can I avoid them being loaded frequently?
1414   How can I extend the cache expire time for the static images?
1415A: Most web servers will set expire time in http header for static objects
1416   based on their file date and the time the files are accessed.
1417
1418   If you would like to set the expire time explicitly:
1419
1420   Please add the following line to the end of your Apache configuration
1421
1422   <Directory "/usr/local/www/data/openwebmail">
1423      ExpiresActive On
1424      ExpiresByType image/gif A86400
1425      ExpiresByType image/png A86400
1426      ExpiresByType image/jpg A86400
1427      ExpiresByType application/x-javascript A86400
1428   </Directory>
1429
1430   The above lines set an expire time to one day for jpg, gif, png and
1431   javascript files under openwebmail from the time they are accessed.
1432
1433   ps: Don't forget to change the above /usr/local/www/data/openwebmail
1434       to where your openwebmail data locates.
1435
1436Q: Any other way to get more speedup?
1437A: You may try the thttpd at http://www.acme.com/software/thttpd/,
1438   here are some words from their web site :)
1439
1440   "thttpd is a simple, small, portable, fast, and secure HTTP server"
1441
1442   "It also has a very small run-time size, since it does not fork and
1443    is very careful about memory allocation. "
1444
1445   "In typical use it's about as fast as the best full-featured servers
1446    (Apache, NCSA, Netscape). Under extreme load it's much faster."
1447
1448   Please refer to doc/thttpd.txt for some installation tips.
1449
1450
1451========================================================================
1452SOME CONCEPT
1453========================================================================
1454
1455Q: What will happen at webmail server if I click the stop key in browser?
1456A: When the stop key is pressed, the browser will close its connection to
1457   the httpd on webmail server. While httpd detects this immediately,
1458   what will httpd do to the CGI process is implementation dependent.
1459   Basically, httpd will close the pipes to CGI process and terminate the
1460   CGI process.
1461
1462   Below is our observation on apache 1.3.26 on FreeBSD.
1463
1464   The apache httpd won't terminate nor close the connection to the CGI
1465   process until the CGI process sends output to its stdout. This gives
1466   the chance to CGI process to finish its job in a more graceful way.
1467
1468   When httpd receives some data from CGI process stdout (which actually
1469   pipes to stdin of httpd), the httpd will send a 'TERM' signal to CGI
1470   process, close the pipes to CGI process, then kill the CGI process.
1471
1472   The situation is a little bit different if the CGI program is running
1473   with SpeedyCGI. From the point of view of httpd, the speedycgi frontend
1474   is the CGI process, so the frontend will be terminated as the above
1475   when it tries to pass the data coming from the speedy_backend to httpd.
1476   The data is result generated by real CGI process forked by speedy_backend.
1477
1478   When the speedy_backend detects the termination of the speedy frontend,
1479   it will close the pipes to the real CGI process, but won't send TERM
1480   signal to it nor kill it.
1481
1482   In both case (without or with speedycgi), the CGI process will get a
1483   signal PIPE if it tries to output data to stdout after the related
1484   pipe has been closed.
1485
1486   Now, what openwebmail do with this?
1487   Since version 2.00, all stdout output code has been move to the end of the
1488   request processing in openwebmail, this ensures the data being processed
1489   will be always in a complete state and not terminated because of PIPE error.
1490
1491Q: How is the domain of a login user determined?
1492A: It is determined in the following order
1493   (the earlier one has higher precedence)
1494   1. from the login name
1495      eg: the user logined with username@virtualdomain
1496   2. from the parameter 'logindomain' specified in login page url
1497      eg: the login page was linked with
1498          http://server/cgi-bin/openwebmail/openwebmail.pl?logindomain=virtualdomain
1499   3. from the servername specified in the login page url
1500      eg: the login page was linked with
1501          http://virtualdomain/cgi-bin/openwebmail/openwebmail.pl
1502
1503Q: How does the delfile_ifquotahit option work?
1504   Which file will be removed first?
1505A: It will remove the oldest files or directories under the webdiskrootdir
1506   (webdiskrootdir is default to / of user homedir, but you can change it).
1507   The removal will stop if the quota size is download to the 90% of user
1508   quota limit.
1509
1510Q: What is the difference between 'Forward', 'ForwardAsAtt', 'ForwardAsOrig'
1511A: If A send msg1 to B,
1512   and B forward this msg as msg2 to B
1513
1514   forward:
1515   the subject of msg2 will be the subject of msg1 with a prefix "Fw:".
1516   msg2 will have all attachments and content of msg1,
1517   and headers of msg1 will be put into the body msg2 as content
1518
1519   forwardasatt:
1520   the subject of msg2 will be the subject of msg1 with a prefix "Fw:".
1521   msg2 body will be empty
1522   and the raw format of msg1 will be become an attachment of msg2.
1523
1524   forwardasorig:
1525   the subject, body and attachments of msg2 will exactly the same as msg1.
1526   the replyto header of msg2 will be set to A.
1527   So in case C replies the msg2, the reply will go back to A
1528
1529Q: When I checked 'edit folder menu', I found some folders were empty but
1530   took disk space?
1531A: The disk space occupied by a folder shown in 'edit folder menu' includes
1532   the size of a folder and its index. Though folder is empty, the folder
1533   index still has some data structure to maintain.
1534
1535========================================================================
1536HOW CAN I...
1537========================================================================
1538
1539Q: How can I move old messages in my mail client into openwebmail folders?
1540A: a. If your mail client program supports IMAP and your mail server has
1541      imapd installed, you may move old messages in the mail client to
1542      remote folders on mail server through the IMAP protocol.
1543      Be sure to put the folders under ~/mail so openwebmail can find them
1544      automatically.
1545   b. Some mail client stores or can export messages into unix mbox format
1546      folder file.(eg: Eudora) You can just upload the mbox file to the
1547      ~/mail/ and openwebmail will find them automatically.
1548
1549   ps: If your folder file is in dos text format, you may need use the
1550       following command to stripe out the \r at each end of line.
1551
1552       perl -pi -e "s/\r\n/\n/" folderfile
1553
1554Q: How can I upgrade from old version of Open Webmail?
1555A: Each version of openwebmail is made to be backward compatible with
1556   old ones, no user setting or mail message will be lost after upgrade.
1557   The upgrade steps:
1558   1. make a copy of your old openwebmail.conf
1559   2. install new openwebmail in the same location as old version
1560   3. update the new openwebmail.conf with the setting in old one.
1561
1562Q: How can I report problem?
1563A: If your Open WebMail doesn't work, please post your problem on
1564   openwebmail forum http://sourceforge.net/forum/forum.php?forum_id=108433
1565   with the following information
1566
1567   OS
1568   Perl Version
1569   your openwebmail.conf
1570   the ls -l of the perl executable used in your openwebmail.pl
1571   the ls -l of your cgi-bin/openwebmail and cgi-bin/openwebmail/etc
1572   the ls -la of the ~user/mail/
1573   the error message in your browser
1574   the error message in your http server error log
1575   the error message in openwebmail.log
1576   you browser name & version
1577   do you enable speedycgi?
1578   do you set any proxy server in browser?
1579
1580   If your Open WebMail works but it shows strange output for some messages,
1581   please forward the message as an attachment to us
1582   (openwebmail.AT.turtle.ee.ncku.edu.tw)
1583   ps: clicking the 'forward as attachment' icon in message reading menu
1584
1585Q: How can I debug the Open WebMail by myself?
1586A: First, you can try to set option error_with_debuginfo to yes in
1587   openwebmail.conf. This would give you more detailed information in case
1588   openwebmailerror() happens.
1589
1590   Second, if you want to have a stack trace of how openwebmail is running,
1591   you may use the misc/test/debugadd.pl to add debugging code to openwebmail
1592   scripts
1593
1594   1. cd cgi-bin/openwebmail/
1595   2. perl misc/test/debugadd.pl *pl
1596
1597   Then use openwebmail as normal, all sub routine calls will be logged into
1598   /tmp/openwebmail.debug with timestamp. It should be helpful in debugging.
1599
1600   While you finish the debugging, you have to use misc/test/debugdel.pl to
1601   remove debugging code from those scripts
1602   1. cd cgi-vin/openwebmail/
1603   2. perl misc/test/debugdel.pl *pl
1604
1605   Third, you may try to add lines like below to openwebmail scripts to log
1606   some runtime information to /tmp/openwebmail.debug
1607
1608   ow::tool::log_time("$variablename");
1609   ow::tool::log_time(ow::tool::stacktrace("$variablename and some other string"));
1610
1611Q: Can I specify the composemessage menu as the openwebmail default?
1612A: You can call the openwebmail with url
1613   http://server/openwebmail.pl?action=composemessage&to=EMAIL&subject=SUBJECT
1614
1615Q: Can I specify the calendar month view as the openwebmail default?
1616A: You can call the openwebmail with url
1617   http://server/openwebmail.pl?action=calmonth
1618
1619Q: Can I specify the calendar day view as the openwebmail default?
1620A: You can call the openwebmail with url
1621   http://server/openwebmail.pl?action=calday
1622
1623Q: Can I specify the webdisk as the openwebmail default?
1624A: You can call the openwebmail with url
1625   http://server/openwebmail.pl?action=showdir
1626
1627Q: Can I call openwebmail from my programs with username/password specified?
1628A: this is a little dangerous since the loginname and password will
1629   be displayed on the URL line of the user's browser.
1630
1631   You can call the openwebmail with url
1632   http://server/openwebmail.pl?loginname=USER&password=PASS
1633   or even with action specified
1634   http://server/openwebmail.pl?action=calmonth&loginname=USER&password=PASS
1635
1636ps: Openwebmail supports autologin since 2004/06/01, users doesn't have to
1637    input username/password at login if he didn't logout his previous session
1638    and that previous session is not timeouted.
1639
1640Q: Can I get the mail/event status of a user before he logins openwebmail?
1641   How can I get the username before user really types it?
1642A: If a user has ever successfully logined into openwebmail, the loginname
1643   will be stored to cookie "ow-loginname" at the browser side.
1644   The following CGI script demonstrates how to use this information.
1645-----------------------------------------
1646#!/usr/bin/perl
1647use CGI qw(-private_tempfiles :standard);
1648print "Content-type: text/html\n\n";
1649my $info;
1650my $loginname = cookie("ow-loginname");
1651$loginname=~s/[^\w\d\.\-\%\@]//g;       # remove dangerous char
1652if ($loginname ne "") {
1653   $info=`/usr/local/www/cgi-bin/openwebmail/openwebmail-tool.pl -m -e $loginname`;
1654}
1655print $info;
1656------------------------------------------
1657
1658Q: I already have a web application XYZ which would do authentication on user,
1659   how can I integrate openwebmail with it so the user of XYZ doesn't need to
1660   login again when click the openwebmail link?
1661A: All you have to do is writing an auth_XYZ.pl for openwebmail.
1662
1663   The auth_XYZ.pl should check if the user USERNAME has already logined into
1664   application XYZ by verifying related session file or cookies.
1665   If yes, routine check_userpassword() in auth_XYZ.pl should return 1;
1666   if not, the routine should return 0
1667
1668   Then you specify auth_XYZ,pl as authentication module in openwebmail.conf
1669   And the link to call the openwebmail.pl should be
1670   http:/xxxx/openwebmail.pl?loginname=USERNAME&password=dummy
1671
1672ps: you may modify the check_userpassword() in auth module that you already
1673    use in openwebmail as a start.
1674
1675Q: How can I setup IE to trigger Open WebMail compose window when I click
1676   a "mailto:someone@somehost" link?
1677   How can I set Open Webmail as the default mail client?
1678A: In Windows Explorer, if you go to Tools -> Folder Options, click on the
1679   File Types tab. In the window that appears, scroll down the list to the
1680   entry for  "URL:MailTo Protocol".  Highlight URL:MailTo and click edit.
1681
1682   Choose to edit the action for open.  By default it probably has a
1683   command to open Outlook Express (or your default email client).
1684   Change the Application to read:
1685   "C:\program files\internet explorer\iexplore.exe" http://your_server/cgi-bin/openwebmail/openwebmail.pl?loginname=NAME&password=PASSWORD
1686
1687   This will make Windows open Internet Explorer and go directly to the .pl
1688   page and login with the specified user and pass.
1689
1690   (Thanks to Mike Andrews, mike.AT.lcso.org)
1691
1692   If you hope to goto the compose window directly
1693   with the email address put in the To field,
1694   please use the following open string instead
1695
1696   "C:\Program Files\Internet Explorer\iexplore.exe" http://your_server/cgi-bin/openwebmail/openwebmail.pl?loginname=USER&password=PASSWORD&action=composemessage&to=%1
1697
1698   (Thanks to Sergiy Zubatiy, sergey_sd.AT.users.sourceforge.net)
1699
1700Q: How can I set an alias/redirection/link to the openwebmail script so users
1701   can use openwebmail with a shorter url?
1702A: Please create a file, index.html, like below. Either a or b is okay.
1703   Then put this index.html to the location mapped by the url you want.
1704   a.
1705   ----------------------------------------
1706   <html><head>
1707   <meta http-equiv="Refresh"
1708   content="0;URL=http://your_server/cgi-bin/openwebmail/openwebmail.pl">
1709   </head></html>
1710   ----------------------------------------
1711   b.
1712   ---------------------------------------
1713   <html>
1714   <body onload=
1715   "window.open('http://your_server/cgi-bin/openwebmail/openwebmail.pl','_top')">
1716   </body>
1717   </html>
1718   ----------------------------------------
1719
1720   ps: An example redirect html is available at the
1721       data/openwebmail/redirect.html
1722
1723Q: Can I install openwebmail without root privilege?
1724A: Yes, try the auth_pop3.pl. Some information is available in it.
1725
1726Q: Can Open WebMail be used with mod_perl?
1727A: No, the most reason is mod_perl can't be used for setuid program.
1728   But Open Webmail works great in persistent mode with SpeedyCGI.
1729   It is very fast too.
1730
1731Q: Does Open WebMail support maildir and vpop3mail user by Qmail?
1732A: The official release does still not support maildir, however,
1733   Laurent Frigault, lfrigault.AT.users.sourceforge.net has made patched
1734   Open WebMail 2.01 to support maildir. It is available at
1735   http://www.agneau.org/openwebmail/openwebmail-2.01-storage-20031027.tgz
1736
1737Q: Will maildir be merged to official release of Open WebMail?
1738A: Yes, but we need to reorganization the code of openwebmail first
1739   so the maildir patch could be merged into smoothly.
1740   This would take some time...
1741
1742Q: Can Openwebmail do xxx function or have yyy control option?
1743A: The best way to know all features of openwebmail is to check the
1744   cgi-bin/openwebmail/etc/openwebmail.conf.help. Please check it.
1745
1746Q: Can I use Open WebMail in a commercial web site?
1747A: Yes. Open WebMail is GPLed software (please see copyright.txt for
1748   detail of GPL). You can distribute/use/modify/sell it freely ONLY IF
1749
1750   a. The GPL Copyright page must be kept untouched.
1751   b. Any improvement of Open WebMail or any product based on Open WebMail
1752      must be released to the public for free in source form if it is not for
1753      internal use.
1754   c. Products based on Open Webmail must be also distributed under GPL.
1755
1756
1757Jan/06/2005
1758
1759openwebmail.AT.turtle.ee.ncku.edu.tw
Note: See TracBrowser for help on using the repository browser.