26 febbraio 2020 Roberto Puzzanghera0 commenti
vqadmin-2.3.7
(copia locale)vqadmin è un pannello di controllo su un'interfaccia web che consente di eseguire azioni che richiedono l'accesso a root — per esempio, aggiungere e cancellare domini.
La patch combinata che stiamo per applicare andrà a risolvere alcuni problemi importanti. Per maggiori informazioni si vedano le indicazioni riportate all'interno della patch stessa. Alcune delle patch applicate sono reperibili individualmente in questa cartella.
cd /usr/local/src wget http://notes.sagredo.eu/files/qmail/tar/vqadmin-2.3.7.tar.gz wget http://notes.sagredo.eu/files/qmail/patches/vqadmin/vqadmin-2.3.7_20200226.patch tar xzf vqadmin-2.3.7.tar.gz cd vqadmin-2.3.7 chown -R root.root . patch -p1 < ../vqadmin-2.3.7_20200226.patch QMAILROOT=/var/www/qmail ./configure \ --enable-qmaildir=/var/qmail \ --enable-cgibindir=${QMAILROOT}/cgi-bin make make install-strip
vQadmin
verrà installato su /var/www/qmail/cgi-bin/vqadmin
. Eventualmente adattare la variabile QMAILROOT alla directory htdocs
di apache
.
vQadmin
richiede una sua directory, protetta dall'accesso, con abiltazione all'esecuzione di CGI, per operare. Dentro il virtual host è necessario mettere
<Directory ${QMAILROOT}/cgi-bin/vqadmin"> Require all denied Options ExecCGI AllowOverride AuthConfig </Directory>
E siccome se si installa vqadmin
in un posto diverso da /cgi-bin
esso non funzionerà poichè è configurato così già nei sorgenti (hardcoded per capirci), devi definire /cgi-bin
come uno ScriptAlias
ScriptAlias /cgi-bin/ ${QMAILROOT}/cgi-bin/
Questo è il mio virtual host, nel quale ho sia vQadmin
che qmailadmin
. Spiegherò l'alias /image
tra un attimo.
Define QMAILROOT /var/www/qmail Define LOGDIR /var/log/apache <VirtualHost *:443> ServerName yourdomain.net DocumentRoot ${QMAILROOT} ScriptAlias /cgi-bin/ ${QMAILROOT}/cgi-bin/ AddHandler cgi-script .cgi .pl ErrorLog ${LOGDIR}/qmailadmin_error_log CustomLog ${LOGDIR}/qmailadmin_access_log common <Directory ${QMAILROOT}> AllowOverride None Require all granted </Directory> <Directory ${QMAILROOT}/cgi-bin> AllowOverride None Options ExecCGI Require all granted </Directory> # QMAILADMIN Alias /files/ ${QMAILROOT}/qmailadmin/files/ <Directory ${QMAILROOT}/qmailadmin/files> Require all granted </Directory> # VQADMIN <Directory ${QMAILROOT}/cgi-bin/vqadmin> Require all denied Options ExecCGI AllowOverride AuthConfig </Directory> Alias /images/ ${QMAILROOT}/cgi-bin/vqadmin/images/ <Directory ${QMAILROOT}/cgi-bin/vqadmin/images> Require all granted </Directory> </VirtualHost>
Nota che qmailadmin
e vqadmin
sono sullo stesso host
Nella directory dove abbiamo installato vQadmin c'è un file .htaccess
. Diamoci un'occhiata:
# cd /var/www/qmail/cgi-bin/vqadmin # ls -la total 148 drwxr-xr-x 4 vpopmail vchkpw 4096 2010-07-26 21:53 ./ drwxr-xr-x 3 root apache 4096 2010-07-26 21:43 ../ -rw-r--r-- 1 nobody apache 112 2009-08-04 17:32 .htaccess drwxr-xr-x 2 vpopmail vchkpw 4096 2009-08-17 11:26 html/ -rw-r--r-- 1 vpopmail vchkpw 865 2009-08-17 15:03 vqadmin.acl -rwsr-sr-x 1 root root 122592 2010-07-26 21:53 vqadmin.cgi* # more .htaccess AuthType Basic AuthUserFile /usr/local/etc/httpdpwd/vqadmin.passwd AuthName "Authentication required" require valid-user
/usr/local/etc/httpdpwd/vqadmin.passwd
è il file dove dobbiamo salvare l'account che avrà accesso a vQadmin
via httpd
. Creiamo un utente:
# mkdir -p /usr/local/etc/httpdpwd # chown apache.apache /usr/local/etc/httpdpwd # /usr/local/apache/bin/htpasswd -bc /usr/local/etc/httpdpwd/vqadmin.passwd admin password # more /usr/local/etc/httpdpwd/vqadmin.passwd admin:xxxxxxxxxxxxxx
Questo è tutto. Apriamo il browser e controlliamo https://yourdomain.net/cgi-bin/vqadmin/vqadmin.cgi
La patch che abbiamo applicato dovrebbe aver già risolto questo problema. Ad ogni modo, in alcuni browser è possibile ottenere un messaggio di errore "Invalid language file", dovuto al fatto che l'impostazione della lingua del browser in questione non coincide con il nome del file di vqadmin. Per esempio, il nome del file della lingua italiana su vqadmin è it, ma l'impostazione del browser è it-it. Per ovviare all'inconveniente è sufficiente collocarsi nella cartella vqadmin/html e creare un link simbolico come segue:
cd /var/www/qmail/cgi-bin/vqadmin/html ln -s it it-it
qmail-smtpd and OAUTH
2 marzo 2021 10:29
problem with passwords containing special characters like %
2 marzo 2021 10:24
qmail-smtpd and OAUTH
1 marzo 2021 15:22
problem with passwords containing special characters like %
28 febbraio 2021 12:26
problem with passwords containing special characters like %
26 febbraio 2021 22:02
problem with passwords containing special characters like %
26 febbraio 2021 10:05
What about using --disable-many-domains on vpopmail configure ?
22 febbraio 2021 16:49
aliasdomain patch compilation issue
21 febbraio 2021 16:28
aliasdomain patch compilation issue
21 febbraio 2021 14:35
Lua backend
16 febbraio 2021 16:07
Tags
apache clamav dkim dovecot ezmlm fail2ban ftp guide hacks lamp letsencrypt linux linux-vserver lxc mariadb mediawiki mozilla mysql openboard owncloud patches php proftpd qmail qmailadmin rbl roundcube rsync sieve simscan slackware spamassassin spf ssh ssl tcprules tex ucspi-tcp vpopmail vqadmin