- Autore originale: http://www.inter7.com/vqadmin-sysadmin-webcontrol/
- Versione 2.4.3
- Changelog
- Scarica da github
- La mia vecchia patch
VqAdmin è un pannello di controllo su interfaccia web che consente di eseguire azioni che richiedono l'accesso a root — per esempio, aggiungere e cancellare domini.
Come si può vedere, VqAdmin
ha una nuova versione con un nuovo aspetto mobile responsive, con tutte le mie vecchie patch incluse (compresa quella di ALI) e diverse correzioni e ripuliture del codice sorgente. Ho risolto tutti i warnings sia di autotools che di gcc e cambiato un paio di cose per poter rifare il tema html (guardare il changelog per maggiori dettagli). Come sempre i contributi nei commenti sono graditi.
PS: anche la parte apache
è stata modificata e prima di fare l'aggiornamento è necessario guardare quali modifiche sono necessarie.
Have fun!
Changelog
- Dec 06, 2024
- added a patch to highlight users with restrictions and with admin privileges (PR #1, thanks Bai Borko)
- added control files notlshosts_auto and tlsserverciphers - Oct 19, 2024 (version 2.4.2)
- Minor fix to view_domain.html
- Minor fix to the html of list all domains
- aclocal fix - Jul 26, 2024 (version 2.4.1)
- Fixed configure break. Trivial C test program breaks on gcc-14.1 due to missing headers (commit) - Mar 5, 2024
- version 2.4.0 marked as stable - Jan 19, 2024
- 2.4.0-beta.2
* fixed a buffer overflow in domain.c (tx Bai Borko)
* solved stringop-truncation warnings in domain.c and lang.c - Dec 21, 2023
- 2.4.0-beta released
- new skin
- vqadmin moved to github - Jul 18, 2023
patch updated
- Italian translation file html/it updated, following the patch by Ali Erturk TURKER
- the vqadmin source directory has been cleaned of unnececessary files - Feb 18, 2023
Added Ali Erturk TURKER's patch to my combo. Original patch here
Installazione
VQ_VERSION=2.4.2 cd /usr/local/src wget https://github.com/sagredo-dev/vqadmin/archive/refs/tags/v${VQ_VERSION}.tar.gz tar xzf v${VQ_VERSION}.tar.gz cd vqadmin-${VQ_VERSION} chown -R root:root . QMAILROOT=/var/www/qmail ./configure \ --enable-qmaildir=${QMAILROOT} \ --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
.
Configurazione 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> Alias /assets/ ${QMAILROOT}/cgi-bin/vqadmin/assets/ <Directory ${QMAILROOT}/cgi-bin/vqadmin/assets> Require all granted </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/apache2 <VirtualHost *:443> # Include /path/to/sslstuff.conf 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> # VQADMIN <Directory ${QMAILROOT}/cgi-bin/vqadmin> Require all denied Options ExecCGI AllowOverride AuthConfig </Directory> Alias /assets/ ${QMAILROOT}/cgi-bin/vqadmin/assets/ <Directory ${QMAILROOT}/cgi-bin/vqadmin/assets> Require all granted </Directory> </VirtualHost>
Nota che qmailadmin
e vqadmin
sono sullo stesso host
Impostazione delle autorizzazioni di accesso
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 /etc/httpd/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 /etc/httpd/httpdpwd # chown apache:apache /etc/httpd/httpdpwd # htpasswd -bc /etc/httpd/httpdpwd/vqadmin.passwd admin password # more /etc/httpd/httpdpwd/vqadmin.passwd admin:xxxxxxxxxxxxxx
Questo è tutto. Apriamo il browser e controlliamo https://yourdomain.net/cgi-bin/vqadmin/vqadmin.cgi