qmailAdmin is a free software package that provides a web interface for managing a qmail system with virtual domains. It provides admin for adding/deleting users, Aliases, Forwards, Mailing lists and Autoresponders.
As you can see, for convenience I moved the qmailadmin
sources to my github
space. Nonetheless, all information about qmailadmin
will continue to be posted here, and this page remains the place to seek support if needed.
This qmailadmin
puts togheter the original Inter7's 1.2.16
version with the following features (updated to 2023.08.27 old patch version):
- qmailadmin-skin, a patch that I created during covid-19 spare time, provides a new responsive skin to the control panel. It modifies everything under the html dir and many .c files in order to adjust the
html
embedded into the source files. Added a style sheet in the "images" folder and a couple of png files for theqmail
logo. It will be much easier to modify theqmailadmin
's skin from now on. - A patch to call
cracklib
in order to check for the password strenght. This should avoid unsafe accounts created by domain administrators such as "test 123456". - A nice patch (thanks to Tony, original author unknown) which gets
qmailadmin
to have authentication failures logged. This makes possible to ban malicious IPs viafail2ban
. It is required to create the log file /var/log/qma-auth.log initially and assign write priviledges toapache
. - ezmlm-idx 7 compatibility patch (author unknown), which restores the compatibility with
ezmlm-idx-7
(thanks to J.D. Trolinger for the advice). - a fix to the catchall account (thanks to Luca Franceschini).
- another fix to autorespond.c to correct the way the
.qmail
files are modified qmail-autoresponder
support (thanks Nathanaël Semhoun)
Setting up cracklib
- Home page https://github.com/cracklib/cracklib
- Download src and words list https://github.com/cracklib/cracklib/releases
- Patch applied
Cracklib
is a library of functions providing a password complexity check against a word list. It compares the chosen password with the words contained in a database and if it is similar to one of them it returns a negative response.
Before installing qmailadmin
we have to set up cracklib
. This patch upgrades the one of Inter7, which enforces qmailadmin
only in the case of user modification but not when creating the user or simply when the user navigates the "change password" page.
Installing the sources
It's likely that you have the cracklib
package and words list available in your Linux distribution repository. In this case proceed to the next step.
A note for Debian users: the cracklib
package has libpam-cracklib
as dependence. But it turns out that libpam-cracklib
replaces libpam-modules
, which is a system library that should not be touched without a good reason. Therefore I suggest to install cracklib
from source on /usr/local as explained below. I tested this solution a couple of times and it will not interfere with libpam
.
To install cracklib
from source go ahead as follows in the usual way:
CRACKLIB_VER=2.10.3 wget https://github.com/cracklib/cracklib/releases/download/v${CRACKLIB_VER}/cracklib-${CRACKLIB_VER}.tar.bz2 tar xjf cracklib-${CRACKLIB_VER}.tar.bz2 cd cracklib-${CRACKLIB_VER} ./configure --with-default-dict=/usr/share/cracklib/pw_dict make make install ldconfig
Installing the dictionary
- man cracklib-format
Create the dictionary folder (the same as used in the configure command)
mkdir /usr/share/cracklib cd /usr/share/cracklib
Download the words list
wget https://github.com/cracklib/cracklib/releases/download/v${CRACKLIB_VER}/cracklib-words-${CRACKLIB_VER}.bz2 bunzip2 cracklib-words-${CRACKLIB_VER}.bz2
Format and pack the dictionary into pw_dict.* files
cracklib-format cracklib-words-${CRACKLIB_VER} | cracklib-packer pw_dict
Now check that the cracklibs-words
database has been created:
ls cracklib-words-xxxxx pw_dict.hwm pw_dict.pwd pw_dict.pwi
The database is made up of those three pw_dict.* compiled files. You can always enrich the database adding lines to the plain-text file and using a combination of cracklib-format/
cracklib-packer
as shown above.Take also note of where the database has been installed because we'll have to pass its path to the qmailadmin
's configure
program.
Testing cracklib
Let's play a bit with cracklib
:
# cracklib-check dfdfdfdf dfdfdfdf: it does not contain enough DIFFERENT characters roberto roberto: it is based on a dictionary word 123456 123456: it is too simplistic/systematic roberto928 roberto928: it is based on a dictionary word robe99 robe99: it is based on a dictionary word 99robe 99robe: it is based on a dictionary word robe@99 robe@99: it is based on a dictionary word Qwerty123 Qwerty123: it is based on a dictionary word Qwerty!123 Qwerty!123: it is based on a dictionary word Rob&02f Rob&02f: OK Rob&rto Rob&rto: OK ^C
To enable cracklib
configure qmailadmin
as
--enable-cracklib=/usr/share/cracklib/pw_dict
Installing qmailadmin
QMA_VERSION=1.2.23 touch /var/log/qma-auth.log chgrp apache /var/log/qma-auth.log chmod g+w /var/log/qma-auth.log cd /usr/local/src wget https://github.com/sagredo-dev/qmailadmin/archive/refs/tags/v${QMA_VERSION}.tar.gz tar xzf v${QMA_VERSION}.tar.gz cd qmailadmin-${QMA_VERSION} chown -R root:root . QMAILROOT=/var/www/qmail ./configure \ --enable-htmldir=${QMAILROOT} \ --enable-cgibindir=${QMAILROOT}/cgi-bin \ --enable-cgipath=/cgi-bin/qmailadmin \ --enable-imagedir=${QMAILROOT}/qmailadmin/files \ --enable-imageurl=/qmailadmin/files \ --enable-htmllibdir=${QMAILROOT}/qmailadmin \ --enable-qmaildir=/var/qmail \ --enable-domain-autofill \ --enable-vpopuser=vpopmail \ --enable-vpopgroup=vchkpw \ --enable-autoresponder-path=/usr/local/bin \ --enable-ezmlmdir=/usr/local/bin/ezmlm \ --enable-modify-quota \ --disable-ezmlm-mysql \ --disable-trivial-password \ --disable-catchall \ --enable-cracklib=/usr/share/cracklib/pw_dict make make install-strip
This installs qmailadmin
in /var/www/qmail.
Apache virtual host
Define QMAILROOT /var/www/qmail Define LOGDIR /var/log/apache2 <VirtualHost *:443> # Include /path/to/sslstuff.conf ServerName mydomain.tld DocumentRoot ${QMAILROOT} ScriptAlias /cgi-bin/ ${QMAILROOT}/cgi-bin/ ErrorLog ${LOGDIR}/qmailadmin_error.log CustomLog ${LOGDIR}/qmailadmin_access.log common <Directory ${QMAILROOT}> Require all granted AllowOverride None </Directory> <Directory ${QMAILROOT}/cgi-bin> AllowOverride None Options ExecCGI Require all granted </Directory> </VirtualHost>
Now browse to https://mydomain.tld/cgi-bin/qmailadmin and login as postmaster.
Comments
Fail to Create Mailing List
Kenny Lee March 25, 2024 08:56 CET
Hi Roberto,
when i tried to create new mailing list with the name called testing, i hit these error msg as below:
after i installed ezmlm, i got run the ezmlm-test and all result is OK as your page. Please advise. thank you
Reply | Permalink
Fail to Create Mailing List
Roberto Puzzanghera Kenny Lee March 26, 2024 19:14 CET
fixed in v. 1.2.20
Reply | Permalink
Fail to Create Mailing List
Roberto Puzzanghera Kenny Lee March 25, 2024 18:29 CET
do you have problems only with the name testing? do you have errors when creating a m/l with another name?
Reply | Permalink
Fail to Create Mailing List
Kenny Lee Roberto Puzzanghera March 26, 2024 03:40 CET
Hi Roberto,
Yes.. another name for M/L also same issue.. below is i created another M/L for "aabbcc" name
Today i tried to create New Forward... i success to create a new Forward... but while i tried to add more email addresses into that forward list.. it come out error too.
Reply | Permalink
Fail to Create Mailing List
Roberto Puzzanghera Kenny Lee March 26, 2024 06:34 CET
They are two separate issues. I'll check the 1st one and let you know.
Concerning the 2nd one, supposing you disabled defaultdelivery in vpopmail, did you revert the valias table schema and recompiled qmailadmin?
Reply | Permalink
Fail to Create Mailing List
Kenny Lee Roberto Puzzanghera March 26, 2024 07:34 CET
Hi Roberto,
Thank you, by the way i have solved the issue of "add more email addresses into the Forward" .. i went inside mysql database "vpopmail" and find the table "valias", then drop all the primary key inside the table.. then it works back. so far i tried to send a mail to the forward, then the email list inside the forward can get the mail.
Reply | Permalink
Fail to Create Mailing List
Roberto Puzzanghera Kenny Lee March 26, 2024 10:41 CET
I don't know what you have done, but it's not correct to erase the primary key. You have to install my suggested schema
Reply | Permalink
Fail to Create Mailing List
Kenny Lee Roberto Puzzanghera March 27, 2024 09:44 CET
Hi Roberto,
qmailadmin-1.2.20 looks like got bug.. now i able to create new mailing list and also added members into the list.. but when i want to view who are the members on the list... the page there showed 0 members...
then i tried to send an email to this mailing list.. the members inside the list all able to receive my email..
i tried to downgrade it to qmailadmin-1.2.16 .. it able to show all the members inside the mailing list.. so weird.
Reply | Permalink
Fail to Create Mailing List
Roberto Puzzanghera Kenny Lee March 27, 2024 13:17 CET
sorry, fixed in version 1.2.21
Reply | Permalink
Qmailadmin "Save a copy" not working
Jmecherie February 2, 2024 10:14 CET
Hi Roberto,
On Qmailadmin > Modify User > Routing >Modify User
If I check "Forward To" and "Save a Copy" after applying only forward is modified in .qmail file "Save a copy" is not set in .qmail file
If I manualy modify .qmail file and add local delivery when I go to qmailadmin I can see "Save a copy" is checked
(I can uncheck "Save a copy" and qmail delete local delivery which i add manualy)
Doesn't matter if a logon to qmailadmin as postmaster or user, doesn't matter if changing browser
Thank you very much!
Reply | Permalink
Qmailadmin
Roberto Puzzanghera Jmecherie February 2, 2024 10:25 CET
Hi Jmecherie,
did you install vpopmail enabling defaultdelivery (--enable-defaultdelivery)?
Reply | Permalink
Qmailadmin
Jmecherie Roberto Puzzanghera February 2, 2024 10:40 CET
yes
Reply | Permalink
Qmailadmin
Roberto Puzzanghera Jmecherie February 2, 2024 12:09 CET
It is intentional when vpopmail has been configured with --enable-defaultdelivery. If you enable "Save a copy" you'll get the message twice, because you already have the delivery agent in your .qmail file.
I think that this routing functionality can be handled by the user himself by means of my qmailforward RC plugin.
Reply | Permalink
Qmailadmin
Anonymous Roberto Puzzanghera February 2, 2024 12:39 CET
I dont understand.
When "Standard (No Forwarding)" is checked there is no .qmail file in Mailbox
When "Forward To:" is checked there is a .qmail file containg ONLY email to forward. It doesn't cotain local delivery, The email is forwarded but there is not local copy.
How can I have email forwarded and a local copy saved?
Reply | Permalink
Qmailadmin
Roberto Puzzanghera Anonymous February 2, 2024 13:00 CET
if there's no .qmail you didn't create that .qmail once you have decided to use --enable-defaultdelivery. There's a program which can help to do that. I suppose you didn't have a look at the page where I describe it. So you have two options 1) create the .qmail files in each mailbox according to the --enable-defaultdelivery logic 2) recompile vpopmail (and then qmailadmin) with --disable-defaultdelivery
Reply | Permalink
Qmailadmin
Anonymous Roberto Puzzanghera February 2, 2024 13:19 CET
Sorry I miss reading --enable-defaultdelivery
Thank you very much !
Reply | Permalink
Qmailadmin
Roberto Puzzanghera Anonymous February 8, 2024 12:15 CET
I released an update where a user who doesn't have a copy of control/defauldelivery in his/her .qmail can use qmailadmin's copy&forward in the usual way even when vpopmail has been configured with --enable-defaultdelivery
Reply | Permalink
Qmailadmin
Kenny Lee Roberto Puzzanghera March 22, 2024 09:59 CET
Hi Roberto,
i found that i have the same issue of this "Save a copy", which after put in an email address in "Forward to" then tick on "Save a Copy" ... after i clicked on "Modify User", i found that system auto uncheck that "Save a Copy" option.
while vpopmail setup, i got put enable-defaultdelivery this option.. what should i do for next?
thank you
Reply | Permalink
Qmailadmin
Roberto Puzzanghera Kenny Lee March 22, 2024 10:05 CET
Hi, which vpopmail and qmailqdmin version did you install? What do you have in user's .qmail?
PS what do you have in your control/defaultdelivery?
Reply | Permalink
Qmailadmin
Kenny Lee Roberto Puzzanghera March 22, 2024 10:22 CET
Hi Roberto
vpopmail version = vpopmail-5.6.1
qmailadmin = qmailadmin-1.2.18
if i selected "Standard", inside .qmail file is "./Maildir/", if i selected "Forward to", the .qmail changed to the email address that i put in .. example: &test@abc.com
my control/defaultdelivery = ./Maildir/
Reply | Permalink
Qmailadmin
Roberto Puzzanghera Kenny Lee March 22, 2024 12:22 CET
You have to update qmailadmin to version 1.2.19, which should solve the problem (but testers are needed) as mentioned in a comment of mine above.
Anyway, since using the defauldelivery feature in this way makes no sense, you should --disable-defauldelivery, recompile vpopmail and then recompile qmailadmin.
Reply | Permalink
Qmailadmin
Roberto Puzzanghera Kenny Lee March 22, 2024 11:16 CET
I'll check it out.
Btw, I don't understand why you configured vpopmail with --enable-defaultdelivery if you are not using vpopmail as delivery agent
Reply | Permalink
Qmailadmin
Kenny Lee Roberto Puzzanghera March 25, 2024 03:11 CET
Hi Roberto,
after updated qmailadmin to 1.2.19 .. i able to use that "Save a copy" function... anyway is it my defaultdelivery is wrong? maybe i did alot of testing.. and mis-changed the value inside...
so what should inside this control/defaultdelivery ?
Thank you
Reply | Permalink
Qmailadmin
Roberto Puzzanghera Kenny Lee March 25, 2024 09:49 CET
I said that it makes no sense not to have dovecot in defaultdelivery because the goal of that feature is to allow both sieve and vpopmail aliases. If you are not using dovecot I don't see any reason to have defaultdelivery active
Reply | Permalink
Qmailadmin
Kenny Lee Roberto Puzzanghera March 27, 2024 09:07 CET
Hi Roberto,
today just saw your page got new version for qmailadmin (1.2.20) ... after upgarded to that version.. the ezmlm issue solved...
Thank you
Reply | Permalink
qmailadmin error almalinux8
João Savioli July 24, 2023 20:44 CET
Hi Roberto,
I have an error when trying to compile qmailadmin in almalinux8. Could you help me?
Thank you
Joao
Reply | Permalink
qmailadmin error almalinux8
Roberto Puzzanghera João Savioli July 24, 2023 21:14 CET
Hi Joao,
that "unknown storage_t type" is defined in the storage.h file of vpopmail. It's imported via the vpopmail header files that you have on top of the user.c file whose compilation failed.
Do you get any error during the vpopmail installation?
Reply | Permalink
qmailadmin error almalinux8
João Roberto Puzzanghera July 25, 2023 18:03 CET
Hi Roberto, thank you for replying.
Yes! I could found an error in vpopmail and now I can compile qmailadmin.
Thanks again!
Reply | Permalink
free(): double free detected in tcache 2: /var/www/qmail/cgi-bin/qmailadmin
kengheng May 12, 2023 10:03 CET
Hi,
Recently come across this error: "free(): double free detected in tcache 2: /var/www/qmail/cgi-bin/qmailadmin"
When add a new forward email at forward menu.
Anyone come across this issue?
Thx
Reply | Permalink
free(): double free detected in tcache 2: /var/www/qmail/cgi-bin/qmailadmin
Roberto Puzzanghera kengheng May 12, 2023 15:19 CET
which version of gcc?
Reply | Permalink
free(): double free detected in tcache 2: /var/www/qmail/cgi-bin/qmailadmin
kengheng Roberto Puzzanghera May 17, 2023 07:46 CET
Below is the gcc -v output
Reply | Permalink
free(): double free detected in tcache 2: /var/www/qmail/cgi-bin/qmailadmin
Roberto Puzzanghera kengheng May 17, 2023 15:25 CET
I'm sorry but I cannot reproduce the issue. Let me know if you identify the cause
Reply | Permalink
Found a error in cracklib patch in qmailadmin.c
Alexandre Fonceca April 25, 2023 18:28 CET
I noticed that when calling the web https://xxxxxx/cgi-bin/qmailadmin/passwd you could change ANY password even with it warning of the weak password
analyzing from line 266 of qmailadmin.c onwards we have:
this is because the password is changed in the vpasswd() command that runs BEFORE the cracklib check.
the solution is to swap the order by changing the vpasswd line, leaving this last "vpasswd (User, Domain, Password1, USE_POP) != VA_SUCCESS"....
like this:
Reply | Permalink
Found a error in cracklib patch in qmailadmin.c
Roberto Puzzanghera Alexandre Fonceca April 25, 2023 20:14 CET
Hi Alexandre, I see the problem and I've tested your patch. Tomorrow I'll update my combined patch.
Thank you very much
Reply | Permalink
Missing suid and sgid
yasuo June 8, 2022 09:42 CET
I've got file permission error after successful login. I had to suid/sgid /cgi-bin/qmailadmin so that qmailadmin binary can read/write /var/vpopmail/domain contents.
Reply | Permalink
Missing suid and sgid
Roberto Puzzanghera yasuo June 8, 2022 11:31 CET
The suid/sgid /cgi-bin/qmailadmin permissions should be set at installation time for the vpopuser defined in your configure command. Check that --enable-vpopuser and --enable-vpopgroup match your vpopmail user/group
Reply | Permalink
Installing qmailadmin
Gabriel Torres April 9, 2022 01:57 CET
Hi Roberto,
In the Installing qmailadmin section, the image URL parameter is misconfigured.
This line:
Should be:
Otherwise images won't show up.
I also recommend adding the line below to the configure part:
Catchall configuration is really bad for spam.
Cheers.
Reply | Permalink
Installing qmailadmin
Roberto Puzzanghera Gabriel Torres April 9, 2022 08:52 CET
Hi Gabriel,
it works because I have
in the apache configuration. Actually this is not needed, so I'm going to cancel this alias.
PS I added --disable-catchall to the config
Reply | Permalink
configure: WARNING: unrecognized options: --enable-cracklib
Nic March 10, 2022 17:58 CET
Hi Roberto,
I have patch qmailadmin with roberto-qmailadmin-1.2.16.patch but patched qmailadmin is not allowing me to enable cracklib.
Any advise please.
Thank you
Reply | Permalink
configure: WARNING: unrecognized options: --enable-cracklib
Roberto Puzzanghera Nic March 10, 2022 18:47 CET
I think you forgot this before configuring
Reply | Permalink
configure: WARNING: unrecognized options: --enable-cracklib
Nic Roberto Puzzanghera March 11, 2022 03:43 CET
Thank you!
Reply | Permalink
qmailadmin can create new users, but can it change .qmail files ?
Marco Varanda October 30, 2021 17:21 CET
Hello Roberto.
Thank you, your tutorial is excellent !
So, I use CentOS 8 with roundcube, qmailadmin, and SPAM control with bash scripts filters inside .qmail files.
Usually, I created new users, with bash script, and vadduser (vpopmail), that I created default folders structures (Spam, Draft, etc)
This an exemple of my .qmail file for each user:
Can I create .qmail files, and Spam (and other folders) using qmailadmin "Create EmailAccount" ?
Running a bash script after creation (if exist)
Thanks
Reply | Permalink
qmailadmin can create new users, but can it change .qmail files ?
Roberto Puzzanghera Marco Varanda October 30, 2021 18:32 CET
Hello Marco,
qmailadmin can't be of any help if you want to customize your .qmail files in that way. It can write into them just when you define a forwarder or an autorespoder.
Reply | Permalink
qmailadmin can create new users, but can it change .qmail files ?
Marco Varanda Roberto Puzzanghera October 31, 2021 00:14 CET
There are more here !
https://www.mail-archive.com/qmailadmin@inter7.com/msg05527.html
https://github.com/qmail/qmailadmin/blob/master/qmailadmin/user.c (LINE 522 without pathes)
Reply | Permalink
qmailadmin can create new users, but can it change .qmail files ?
Marco Varanda Roberto Puzzanghera October 31, 2021 00:04 CET
I found this, that we can run an script to create Spam, Draft, etc, and change .qmail
This page has 18 years old !
https://vchkpw.inter7.narkive.com/zhZCBC2R/auto-create-dir-for-spam-email#post2
qmailadmin ==> README.hooks
"Basically, it'll tell you to create a .qmailadmin-hooks file, what to
put in it and the various places you may want to place the file. Make
sure that .qmailadmin-hooks has the correct user and group ownership, too."
"I use it to call a bash script. It could probably also call"
/home/vpopmail/etc/.qmailadmin-hooks
Have you seen this before ?
Reply | Permalink
qmailadmin can create new users, but can it change .qmail files ?
Roberto Puzzanghera Marco Varanda October 31, 2021 09:30 CET
No, I've never heard of qmailadmin hookes before... thanks for letting me know. I hope that this solves your needs :-)
Reply | Permalink
qmailadmin can create new users, but can it change .qmail files ?
Marco Varanda Roberto Puzzanghera December 12, 2021 12:38 CET
Hello Roberto.
I must update some information here.
I finally did qmailadmin-hooks to works !
I'm using CentOS 8 and Apache runs with apache:apache user/group, but qmailadmin needs vpopmail:vchkpw to run.
I've tried to use suExec, and change user.c from original qmailadmin, but no success.
The best solution in this case, is start a second Apache instance, with user vpopmail:vchkpw (1st is running with apache:apache and serving webpages to customers)
Apache from CentOS 8 has a file /usr/share/doc/httpd/instance.conf informing how to run multiples instances. (it is quite easy to do this)
Usando o qmailadmin-hooks we can do some bash scripts to run, and create additional folders (Spam, Sent, Trash, etc) setting .qmail files and put SPAM filters there, and many other things that must happens together with an email account creation. (or deletion, or modifying). (see more in README.hooks, from original qmailadmin package)
Most Linux distributions run Apache with other user:group and never from vpopmail:vchkpw, making qmailadmin-hooks do not work properly (it can create/delete/change an account, but hooks never run because wrong permissions)
Thanks for your site !
Reply | Permalink
qmailadmin can create new users, but can it change .qmail files ?
Roberto Puzzanghera Marco Varanda December 12, 2021 13:52 CET
Thank you, it's very much appreciated
Reply | Permalink
qmailadmin not working
Newb August 3, 2021 16:26 CET
Hello,
i did as in tutorial, installed qmailadmin but it didnt show me any site from https://mail.zareckao.online/cgi-bin/qmailadmin
At the moment right now i changed the port from 443 to 80 in the apache virtualhost file to try HTTP and under the page it appears downloading the file
Reply | Permalink
qmailadmin not working
Roberto Puzzanghera Newb August 3, 2021 18:08 CET
If it tries to download the file you should double check your cgi stuff
Reply | Permalink
qmailadmin not working
Roberto Puzzanghera Newb August 3, 2021 16:35 CET
It could be an Apache or even a DNS issue.
can you post the result of
and the result of
I'm on an holiday trip and it will be difficult for me answering
Reply | Permalink
qmailadmin not working
Anonymous Roberto Puzzanghera August 3, 2021 16:45 CET
Reply | Permalink
qmailadmin not working
Roberto Puzzanghera Anonymous August 3, 2021 17:40 CET
Please do not post your comments twice. If I don't reply immediately it's because I can't :-)
Post your Apache config please
Reply | Permalink
qmailadmin not working
Anonymous Roberto Puzzanghera August 3, 2021 19:26 CET
also here u got apache2.conf file
Reply | Permalink
qmailadmin not working
Roberto Puzzanghera Anonymous August 3, 2021 20:12 CET
The apache2.conf is not important. You have to enable CGI moving the module config file into the modules-enabled dir, and eventually also some other config files
Reply | Permalink
qmailadmin not working
Newb Roberto Puzzanghera August 3, 2021 21:15 CET
thanks, it worked :)
Reply | Permalink
qmailadmin not working
Anonymous Roberto Puzzanghera August 3, 2021 17:53 CET
this is for port 80:
and this is for 443:
Reply | Permalink
Autoresponder & SpamAssasin are not working good togheder
Pablo Murillo March 8, 2021 17:18 CET
Hi
Today I realized that qmailadmin autoresponder don't work in the right way when spamassassin is enable on limits via VpopMail
The FROM and SUBJECT are repited, and the autorespond messages is returned
If I disable SPAMASSASSIN from VPOPMAIL limits (mysql), autoresponders works perfect
Any idea ?
Reply | Permalink
Autoresponder & SpamAssasin are not working good togheder
Roberto Puzzanghera Pablo Murillo March 10, 2021 15:46 CET
Do you mean that you have disable_spamassassin=1 in the limit table? Do you get this error in the smtp session or when creating the autoresponder via qmailadmin?
Reply | Permalink
libcrack.so.2: cannot open shared object file: No such file or directory
Thomas October 8, 2020 13:16 CET
Hello!
If you downloaded the cracklib dictionary, then runing the command:
and you encounter the following error:
You should run `ldconfig` command and run the command again.
Reply | Permalink
libcrack.so.2: cannot open shared object file: No such file or directory
Roberto Puzzanghera Thomas October 8, 2020 15:16 CET
thank you. Added the ldconfig command
Reply | Permalink
qmailadmin patch error
Tony Fung September 2, 2020 10:28 CET
Hi Roberto
The following error occurred when applying the patch "roberto-qmailadmin-1.2.16_20200901.patch":
Please correct it.
Reply | Permalink
qmailadmin patch error
Roberto Puzzanghera Tony Fung September 2, 2020 13:26 CET
Thank you. Corrected
Reply | Permalink
User can still enter "password" as password
Kris von Mach August 28, 2020 11:01 CET
Cracklib patch works great and it can detect bad passwords, except if user uses password as password. It lets it through.
Reply | Permalink
User can still enter
Roberto Puzzanghera Kris von Mach August 28, 2020 11:16 CET
It's rejecting "password" as password here...
Reply | Permalink
User can still enter
Kris von Mach Roberto Puzzanghera August 28, 2020 13:42 CET
Hrm, that is strange then. It clearly is using cracklib to check, as I tried for example !7350r13r0 as password that's in cracklib-words-2.9.7 and got error "Bad password - it is based on a dictionary word." However if I use password, it creates the account with it successfully. Like as if it wasn't checking cracklib.
cracklib is correctly rejecting it.
Any ideas as to how I could trouble shoot this further?
Reply | Permalink
User can still enter
Roberto Puzzanghera Kris von Mach August 28, 2020 14:40 CET
Unfortunately I've no idea at the moment
Reply | Permalink
Small fix to the tutorial
Gabriel Torres August 16, 2020 02:28 CET
Should update this:
With this:
Reply | Permalink
Small fix to the tutorial
Roberto Puzzanghera Gabriel Torres August 16, 2020 08:48 CET
Thank you. Corrected
Reply | Permalink
Differences between full patch and skin patch
Pablo Murillo August 11, 2020 18:34 CET
Hi Roberto
I find a little difference in mailinglist.c
Lines :
Ful patch at the end of the last block
Skin patch same place
You can see that there are a lot of deleted lines (5)
Which is ok? Full or Skin?
Reply | Permalink
Differences between full patch and skin patch
Roberto Puzzanghera Pablo Murillo August 11, 2020 18:51 CET
Hi Pablo, the skin patch is intended for vanilla qmailadmin. The full embeds a patch to make it ezmlm-idx-7 compliant, which is important, as you know. Therefore, it depends if you want to apply that patch by yourself or you want to use the full one.
In any case the full patch code is correct because already includes that fix
Reply | Permalink
Little correction to skin patch
Pablo Murillo August 9, 2020 21:32 CET
HI !
Very nice work
You forgot the value for Rela Name in mod_user.html
Line 2425 add : value="##i7"
I don't know why I don't see the page just like your examples, something may be missing
Reply | Permalink
Little correction to skin patch
Roberto Puzzanghera Pablo Murillo August 10, 2020 12:48 CET
Thank you, Pablo. Patch updated.
Concerning your problem, do you get any error in your browser inspector's console? Maybe a missing apache setting which prevents some element to be displayed?
Reply | Permalink
Little correction to skin patch
Pablo Murillo Roberto Puzzanghera August 10, 2020 17:37 CET
I solved the problem with the different look
I forget to tell you that I'm using FreeBSD with ports
For every patch you made, I have a lot of ours to "translate" to "ports"
Ajajajajaja
I reallized that you are using a differente version of qmailadmin, the problem was in the CSS and I only used the style patch, not the full patch, and I found that in style patch there is a missing patch for Makefile.in to copy CSS
Reply | Permalink
Little correction to skin patch
Roberto Puzzanghera Pablo Murillo August 10, 2020 18:01 CET
Sorry, I can't get what you mean concerning the translation problem. Can you clarify so that I can improve the documentation and avoid that others will have the same issue?
As far as the patch is concerned, I'm going to add a modification for Makefile.in in my patch as well. Thanks for the advice. Please provide any hint as you can to improve this guide for FreeBSD users.
Reply | Permalink
Little correction to skin patch
Pablo Murillo Roberto Puzzanghera August 10, 2020 19:27 CET
Sorry, my english is not so good :D
For "translate" to "ports" I mean, convert your patch to a new one that works with FreeBSD ports collection
I can do everything "by hand", but I have to maintain a lot of server and it is more easy mainain everything with ports
For example :
qmailadmin in FreeBSD ports is on version 1.2.15 and include all the patchs you combined in your patch, so, I only used the style patch, but it don't work as is, I had to make some changes to make it work
And also, I have make a change (by hand) on the Makefile in the port
Reply | Permalink
Little correction to skin patch
Roberto Puzzanghera Pablo Murillo August 10, 2020 22:29 CET
it would be great if you can share your FreeBSD patches once converted them. I could publish them together with my linux patches... I remember that other people here complained of not been able to compile and I can only guess that the more people will be using qmail for FreeBSD the more hints and material will come back to them, just like it happens for linux :)
Reply | Permalink
Little correction to skin patch
Pablo Murillo Roberto Puzzanghera August 10, 2020 23:01 CET
I make patches and "manually" update the files needed in the port tree (Makefile and other files sometimes), is something not "easy"
Your patches work on FreeBSD when instaling every manually, but, using external patches on ports is not posible, the port must be modified to use it
Every time a port is update by the maintener, all the files in the port are overwriting
What I really need to do is to update the port "officially" , but I do some things, only for the way we build servers, so, what I make is not for everyone, I should do other patches to share, and really, I don't have the time :(
Reply | Permalink
/bin/bash: aclocal-1.15: command not found
Gabriel Torres May 24, 2020 18:57 CET
In order to solve:
I had to run:
Before running the ./configure line.
Reply | Permalink
malformed patch?
Richard Chen October 31, 2019 00:50 CET
I got this output:
This is on a centos 7.7 host. Can you confirm if the patch file is corrupted or not?
Thanks
Richard
Reply | Permalink
malformed patch?
Roberto Puzzanghera Richard Chen October 31, 2019 07:41 CET
thanks for the advise. Corrected
Reply | Permalink
Autoresponder not working with patch for the password strenght
jmecherie September 13, 2019 17:46 CET
With patch for password strenght applied autoresponse can't be set the error is: "The password must be at least 8 caracthers long!"
The password box is indeed empty because i don't want to change password I want to sent vacation auto response.
Reply | Permalink
Autoresponder not working with patch for the password strenght
Roberto Puzzanghera jmecherie September 13, 2019 17:53 CET
Yes you are right, I will improve that patch when I'll find the time.
I created that patch to solve the big problem of the pwd strenght and didn't pay attention to autoresponder because I use sieve for the purpose and don't let users manage the account via qmailadmin.
In the meantime you can reverse the patch or type the pwd when setting autoresponse
Reply | Permalink
Autoresponder not working with patch for the password strenght
jmecherie Roberto Puzzanghera September 13, 2019 18:37 CET
To bypas I added a new line to check if password is 0 lenght.
And thank you very much for your site.
Very helpful !
Reply | Permalink
Autoresponder not working with patch for the password strenght
Roberto Puzzanghera jmecherie September 13, 2019 20:40 CET
you missed a double == here
btw I think that in this way you could set a blank pwd if you submit the form without setting the vacation.
Take a look at this new version of the patch
This what I changed with respect to the previous
There is a modification in mod_user.html as well
Reply | Permalink
compiler error 1.2.16
Loz January 7, 2019 11:48 CET
I get compiler errors if I try to compile 1.2.16 with or without your patches -
Is there a working version of 1.2.16? I can manually fix this by copying over missing files from 1.12.15, but surely 1.2.16 should compile without errors out the box?
Reply | Permalink
compiler error 1.2.16
Roberto Puzzanghera Loz January 7, 2019 15:36 CET
the compilation is ok with gcc-8.2 as well here
(the problem is qmail-tls, which is not compatible with openssl-1.1 :-(
Reply | Permalink
compiler error 1.2.16
Roberto Puzzanghera Loz January 7, 2019 15:13 CET
which version of gcc? both versions work here (gcc-5.5)
Reply | Permalink
Blank screen after login to Qmailadmin
Lodex March 29, 2017 16:35 CET
I have followed your guide and I am at the point of logging into Qmailadmin.
The page comes up perfectly but after entering postmaster, domain and password, it gives a blank screen.
I checked all the error logs and there are no entries pointing to a reason for this behaviour.
Using the following versions:
qmailadmin 1.2.16
vpopmail 5.4.33
Reply | Permalink
Blank screen after login to Qmailadmin
jmecherie Lodex September 13, 2019 17:17 CET
When there is a blank screen after you put password on qmailadmin page, check permision for qm-auth.log file
It should be the permission of webserver. On debian/ubuntu usualy is www-data (not apache as in Roberto guide)
Reply | Permalink
did you check the syslog to
roberto puzzanghera Lodex March 31, 2017 08:20 CET
did you check the syslog to look for a segfault? Anyway.. I would try to recompile qmailadmin
Reply | Permalink
Ezmlm-idx patch for qmailadmin
John August 5, 2016 20:10 CET
The qmailadmin-1.2.16 with ezmlm-idx-7.2.2 needs a patch in order to manage the mailing lists. I had had to add this patch to my src directory then re-compile.
patch < ../mailinglist.c.ezmlm7.patch
I also use your qmailadmin-1.2.16-pwd-strenght.patch-2015.04.25 and qmailadmin-1.2.16-log.patch with this patch.
I am not sure if this is in your patch list Roberto. There are a few sources and I am not sure which one to post.
Thanks,
John D. Trolinger
Reply | Permalink
Thanks for the advise, John.
roberto puzzanghera John August 5, 2016 21:29 CET
Thanks for the advise, John. I was not aware of this patch, but I found it in the qmailrocks site. Tomorrow I'm going to study the idea behind it and eventually I'll add it to my qmailadmin.
Can you report what kind of error you get when the patch is not applyed?
Reply | Permalink
Ezmlm-idx patch for qmailadmin
John Trolinger roberto puzzanghera August 6, 2016 01:15 CET
Before the patch I had to use the command line to add moderators. Also I could not change settings for the various mailing lists.
This may not be typical; I had migrated from another server running older versions of qmailadmin and ezmlm.
Best Regards
Reply | Permalink
I added mailinglist.c.ezmlm7
roberto puzzanghera John Trolinger August 6, 2016 13:05 CET
I added mailinglist.c.ezmlm7.patch to the patch list
Reply | Permalink
Password patch
nic January 31, 2016 10:30 CET
Hi,
The password qmailadmin-1.2.16-pwd-strenght.patch-2015.04.25 patch does not work for me. I am able to use simple password like 1234.
Anyone also encounter this?
thanks
nic
Reply | Permalink
and you can open the js file
roberto puzzanghera nic January 31, 2016 10:47 CET
and you can open the js file with your browser?
Reply | Permalink
Hi Roberto,
nic roberto puzzanghera January 31, 2016 11:46 CET
Hi Roberto,
Sadly to say, i dont know the path to it even.
Sorry and thanks
nic
Reply | Permalink
Probably you installed the
roberto puzzanghera nic January 31, 2016 13:04 CET
Probably you installed the pwd_strenght_chk.js file in the wrong path. Just navigate to the "add new user" page, right click to look at the html code and click over the javascript file. The file must be accessible by your web server.
Reply | Permalink
Hello,
nic roberto puzzanghera January 31, 2016 13:46 CET
Hello,
The absolute path of add user
The path of the javascript
Cgi-bin path
Configuration
Can you help me to spot any mistake.
Many thanks again
nic
Reply | Permalink
It depends on your web server
roberto puzzanghera nic January 31, 2016 15:15 CET
It depends on your web server configuration as well. Try to check if the webserver can access that file as suggested in my previous post
Reply | Permalink
Hi,
nic roberto puzzanghera January 31, 2016 18:30 CET
Hi,
I can see the source.
But if i goto http://domain.com/cgi-bin/qmailadmin/html/pwd_strenght_chk.js i will just be directed to http://domain.com/cgi-bin/qmailadmin/
regards
nic
Reply | Permalink
Nic, your web server looks
roberto puzzanghera nic January 31, 2016 18:43 CET
Nic, your web server looks for the script in this path http://domain.com/qmailadmin/html/pwd_strenght_chk.js. Note that the dir is different. Try again and if it fails double check your web server config as far the qmailadmin virtual domain is concerned and also that apache can actually access that file
Reply | Permalink
Thanks Roberto.
nic roberto puzzanghera January 31, 2016 19:15 CET
Thanks Roberto.
All the functions in /html folder are working. I even edited the footer.html and it is also reflected in qmailadmin pages. I just don't know why the js file is not called.
sigh
nic
Reply | Permalink
perhaps you have javascript
roberto puzzanghera nic January 31, 2016 19:23 CET
perhaps you have javascript disabled in your browser?
Reply | Permalink
Hello,
nic roberto puzzanghera January 31, 2016 19:43 CET
Hello,
I had checked. javascript.enabled is true and i did a "Do i have java" on Java.com
Thanks for leading me this far. I think its up to myself to look for the broken link.
regards
nic
Reply | Permalink
Hi,
nic nic January 31, 2016 20:50 CET
Hi,
I cannot find where is the broken link, or how it is broken. But i copy the js file into a public folder and edit the path of add_user.html, change_password.html and mod_user.html to URL of the new js file location.
All working now.
Thanks
nic
Reply | Permalink
I guess you have
roberto puzzanghera nic February 1, 2016 10:31 CET
I guess you have some apache permissions problems.. try to browse to that js file with your browser and look at the error you get
Reply | Permalink
qmailadmin auth log
Tony May 27, 2015 06:47 CET
Hi,
Thanks for your great works on this guide. I would like to share the patch for qmailadmin (1.2.16) in order to have auth logging. The patch shall log the failed login in qmailadmin login page. The patch as underneath:
It is required to created the log file /var/log/qma-auth.log initially. Then we can use the log in fail2ban with the underneath filter:
Hope the patch is helpful.
Tony
Reply | Permalink
Tony, I added your patch to
roberto puzzanghera Tony May 27, 2015 14:42 CET
Tony, I added your patch to the present guide. Thanks a lot
Reply | Permalink
verrry much apreciated, as
roberto puzzanghera Tony May 27, 2015 12:21 CET
verrry much appreciated, as this is one thing I was looking for. At the moment I have an apache authentication before the web page is displayed, just to record the failures in the apache log.
Reply | Permalink
Warning of using the login picture from qmailadmin
Marc February 25, 2015 09:20 CET
Hello Roberto,
i want to warn you about the risks of using the login picture from qmailadmin. Seriously this is no joke and i couldn't believe it the first time but using qmailadmin with this picture (middleleft1.png ) had cost me a fine of several hundreds Euro. This has happened: A few weeks ago i've got a letter from the company Getty Images, that i'm using illegal the picture provided in the login form from qmailadmin. Getty Images says that they has the legal rights of this image an i didn't have a license to use the picture and i have to pay this amount of money as an compensation for violating the copy right of this picture and of course i have to remove the picture immediatelly. I googled this thing and found out that this is true and even the guys from inter7 are aware of this thing, that happend to other qmailadmin users too (see the full thread of this post: http://article.gmane.org/gmane.mail.qmail.admin/4804). I contacted a lawyer and he said that under german and EU copyright laws this is true and i violated the copy right because i have to make sure that when i publish on a website a picture i'm responsible to make sure that i don't violate any copyright rules, even when the picture is part of an open source software. Another lawyer told me that i can try to go against it but the uncertain of succes and the costs of an lawyer for this put me to the decision to pay the fine.
So be warned when using the picture and check the copyright laws of your country.
Cheers
Reply | Permalink
Thanks for the hint Mark. I'm
roberto puzzanghera Marc February 25, 2015 11:26 CET
Thanks for the hint Mark. I'm going to write a note asap
I suppose that this is the reason why that image is not shown anymore in the latest version. I thought that it was a bug, but I think this is an explanation.
Reply | Permalink
qmailadmin set catchall blank screen
george September 19, 2014 17:08 CET
Hi Roberto,
I'm trying to setup email server based on your blog on Centos 6.5 x64
I manage to get everything to work until Qmailadmin part, when i test the menu "Set catchall email deleted" "Set catchall bounced" and "Set remote catch all account" , the page just show blank screen, even when i refresh (F5) , other menu seems ok.
Do you have any hint about this problem ?
Thanks.
Reply | Permalink
qmailadmin-catchall fix
roberto puzzanghera george December 2, 2016 20:27 CET
this issue is fixed (thanks to Luca Franceschini). Patch
Reply | Permalink
downgrading vpopmail solved qmailadmin's catch-all account break
roberto puzzanghera george October 3, 2014 17:42 CET
Dear all,
after some testing I found out that it works when downgrading vpopmail to v. 5.4.32 and qmailadmin to 1.2.15.
I also noticed that the compilation of qmailadmin breaks when compiling 1.2.16 over vpopmail 5.4.32, or 1.2.15 over vpopmail 5.4.33.
Summarizing:
Reply | Permalink
Hi George, I have the same
roberto puzzanghera george September 19, 2014 17:17 CET
Hi George,
I have the same issue here. It worked in the past. I think it could be a bug... let me know if you solve
Reply | Permalink
same issue: qmailadmin set catchall blank screen
Anonymous roberto puzzanghera October 3, 2014 07:14 CET
it was working before, must be some upgrade to apache, php, bash(?), or who knows what broke this.
Reply | Permalink
surely it does not depend on
roberto puzzanghera Anonymous October 3, 2014 10:20 CET
surely it does not depend on php because it's not written in php.
I would try to downgrade qmailadmin to see if it's broken only in the latest version
Reply | Permalink
Qmailadmin logging Invalid attempts
Boatner roberto puzzanghera February 17, 2015 23:53 CET
Hi Roberto,
I cannot find where qmailadmin logs failed login attempts or failed change password attempts. I'd like to work with fail2ban to ban those who attempt too many logins.
Thank you,
Boatner
Reply | Permalink
Hi Boatner, I know. This is a
roberto puzzanghera Boatner February 18, 2015 12:02 CET
Hi Boatner, I know. This is a problem. It doesn't log anything nor to /var/log/maillog nor to mysql
Reply | Permalink