
Tutorial para instalar múltiples sitios web Joomla! en una Raspberry Pi utilizando Raspbian Lite para instalar un servidor de alojamiento web con Apache2, Postfix, Dovecot, Bind y PureFTPD para prepararlo para la instalacion de ISPConfig. El sistema resultante proporcionará un Servidor Web, Mail, Mailinglist (Marketing electrónico), DNS y FTP.
ISPConfig es un panel de control para alojamiento web que te permite configurar los siguientes servicios a través de un navegador web: Servidor web Nginx/Apache2, Servidor Mail Postfix, Servidor IMAP/POP3 Dovecot o Courier, RDBMS MySQL, Servidor de nombres MyDNS o BIND, PureFTPD, SpamAssassin, ClamAV y mucho más. Este tutorial cubre la instalación de Apache HTTP (en lugar de Nginx), BIND (en lugar de MyDNS) y Dovecot (en lugar de Courier).
1. Hardware necesario
Raspberry Pi
Tarjeta de memoria
Fuente de alimentación para la Raspberry Pi
2. Nota preliminar
En este tutorial, utilizo servidor.joomla.pi como nombre de la máquina con la dirección IP 192.168.1.111 y el router 192.168.1.1. Estas configuraciones deberían variar en tu entorno, así que ten en cuenta su reemplazo. Antes de continuar necesitarás tener una instalación mínima de Raspbian Jessie Lite como se explica en este tutorial.
Una vez lo tengas instalado y arranques la Raspberry Pi por primera vez expandimos el sistema de archivos:
Code: Select all
$ sudo raspi-config
También conviene reducir al mínimo el consumo de memoria por parte de la GPU ya que pensamos utilizar la Raspberry Pi como servidor para ello ejecutamos el comando anterior y seleccionamos la opción 7 Advance Options y luego A3 Memory Split y ahí escribimos 16 y le damos a OK
Luego seleccionamos 5 Interfacing Options y P2 SSH y reiniciamos para habilitar el servicio SSH.
[Actualizado] También es posible activar el servidor SSH creando un archivo vacío en /boot después de grabar Raspbian en la tarjeta de memoria, cuando inicies tu instalación por primera vez se activará el servidor SSH y se borrará dicho archivo en /boot. Gracias a DougieLawson por este tip.
Desde ahora ya podemos usar la interfaz de línea de comandos de nuestro futuro servidor de manera remota a través del servicio SSH que hemos habilitado.
Para acceder podemos ejecutar lo siguiente:
Code: Select all
$ ssh [email protected]
3. Actualiza tu Instalación Linux
En la consola ejecuta lo siguiente:
Code: Select all
$ sudo apt update -y && sudo apt upgrade -y
Code: Select all
$ sudo shutdown -r now
La instalación de ISPConfig necesita usar bash (/bin/bash) en lugar de dash (/bin/sh), si se usa dash ISPConfig puede fallar.
Por si no estamos seguros si nuestra instalación Raspbian usa bash o dash podemos ejecutar lo siguiente:
Code: Select all
sudo dpkg-reconfigure dash
Seleccionamos NOUse dash as the default system shell (/bin/sh)?
5. Sincroniza el Reloj del Sistema
Es buena idea sincronizar el reloj del sistema a través de internet con un servidor NTP (Network Time Protocol).
Code: Select all
$ sudo apt install ntp ntpdate -y
6. Instalar Postfix, Dovecot, MariaDB, rkhunter y binutils
Para instalar Postfix, necesitamos asegurarnos que sendmail no esté instalado y ejecutándose. En nuestra instalación no debería de estar instalado pero lo podemos comprobar así:
Code: Select all
$ sudo systemctl status sendmail.service
● sendmail.service
Loaded: not-found (Reason: No such file or directory)
Active: inactive (dead)
Code: Select all
$ sudo systemctl stop sendmail.service; sudo update-rc.d -f sendmail remove
Code: Select all
$ sudo apt -y install postfix postfix-mysql postfix-doc mariadb-client mariadb-server openssl getmail4 rkhunter binutils dovecot-imapd dovecot-pop3d dovecot-mysql dovecot-sieve dovecot-lmtpd dovecot-managesieved dovecot-solr
También el tipo de servidor Mail y su nombre:
General Type of mail configuration: Internet site
System email name: joomla.pi (o tudominio.com)
Luego abre los puertos para submission y SSL/TLS en Postfix:
Code: Select all
$ sudo nano /etc/postfix/master.cf
Code: Select all
#
# Postfix master process configuration file. For details on the format
# of the file, see the master(5) manual page (command: "man 5 master" or
# on-line: http://www.postfix.org/master.5.html).
#
# Do not forget to execute "postfix reload" after editing this file.
#
# ==========================================================================
# service type private unpriv chroot wakeup maxproc command + args
# (yes) (yes) (yes) (never) (100)
# ==========================================================================
smtp inet n - - - - smtpd
#smtp inet n - - - 1 postscreen
#smtpd pass - - - - - smtpd
#dnsblog unix - - - - 0 dnsblog
#tlsproxy unix - - - - 0 tlsproxy
submission inet n - - - - smtpd
-o syslog_name=postfix/submission
-o smtpd_tls_security_level=encrypt
-o smtpd_sasl_auth_enable=yes
# -o smtpd_reject_unlisted_recipient=no
-o smtpd_client_restrictions=permit_sasl_authenticated,reject
# -o smtpd_helo_restrictions=$mua_helo_restrictions
# -o smtpd_sender_restrictions=$mua_sender_restrictions
# -o smtpd_recipient_restrictions=
# -o smtpd_relay_restrictions=permit_sasl_authenticated,reject
# -o milter_macro_daemon_name=ORIGINATING
smtps inet n - - - - smtpd
-o syslog_name=postfix/smtps
-o smtpd_tls_wrappermode=yes
-o smtpd_sasl_auth_enable=yes
# -o smtpd_reject_unlisted_recipient=no
-o smtpd_client_restrictions=permit_sasl_authenticated,reject
# -o smtpd_helo_restrictions=$mua_helo_restrictions
# -o smtpd_sender_restrictions=$mua_sender_restrictions
# -o smtpd_recipient_restrictions=
# -o smtpd_relay_restrictions=permit_sasl_authenticated,reject
# -o milter_macro_daemon_name=ORIGINATING
Reiniciamos el servicio Postfix:
Code: Select all
$ sudo systemctl restart postfix.service
Code: Select all
$ sudo nano /etc/mysql/my.cnf
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address = 0.0.0.0
Podemos segurizar un poco el servidor MySQL con el siguiente comando:
Code: Select all
$ sudo mysql_secure_installation
Establece el método de autenticación de contraseña en MariaDB a nativo pasa así poder usar phpMyAdmin después para conectar como usuario root.NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!
In order to log into MariaDB to secure it, we'll need the current
password for the root user. If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.
Enter current password for root (enter for none): toor
OK, successfully used password, moving on...
Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.
You already have a root password set, so you can safely answer 'n'.
Change the root password? [Y/n] Y
New password: ********* (Introducimos un password fuerte)
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
... Success!
By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
production environment.
Remove anonymous users? [Y/n] Y
... Success!
Normally, root should only be allowed to connect from 'localhost'. This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] Y
... Success!
By default, MariaDB comes with a database named 'test' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.
Remove test database and access to it? [Y/n] Y
- Dropping test database...
... Success!
- Removing privileges on test database...
... Success!
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n] Y
... Success!
Cleaning up...
All done! If you've completed all of the above steps, your MariaDB
installation should now be secure.
Thanks for using MariaDB!
Code: Select all
sudo echo "update mysql.user set plugin = 'native' where user='root';" | sudo mysql -u root
Edita el archivo debian.cnf y establece la contraseña para el usuario 'root' de MySQL/MariaDB en las dos filas que comienzan por password:
Code: Select all
sudo nano /etc/mysql/debian.cnf
Reinicia MariaDB# Automatically generated for Debian scripts. DO NOT TOUCH!
[client]
host = localhost
user = debian-sys-maint
password =la_contraseña
socket = /var/run/mysqld/mysqld.sock
[mysql_upgrade]
host = localhost
user = debian-sys-maint
password = la_contraseña
socket = /var/run/mysqld/mysqld.sock
basedir = /usr
Code: Select all
sudo systemctl restart mysql.service
Code: Select all
netstat -tap | grep mysql
7. Instalar Amavisd-new, SpamAssassin, y Clamav[email protected]:~ $ sudo netstat -tap | grep mysql
tcp 0 0 localhost:mysql *:* LISTEN 837/mysqld
Para instalar Amavisd-new, SpamAssassin y Clamav, ejecutamos lo siguiente:
Code: Select all
sudo apt -y install amavisd-new spamassassin clamav clamav-daemon zoo unzip bzip2 arj nomarch lzop cabextract apt-listchanges libnet-ldap-perl libauthen-sasl-perl clamav-docs daemon libio-string-perl libio-socket-ssl-perl libnet-ident-perl zip libnet-dns-perl postgrey
Code: Select all
sudo systemctl stop spamassassin
Code: Select all
sudo update-rc.d -f spamassassin remove
Code: Select all
sudo freshclam
Code: Select all
sudo systemctl start clamav-freshclam.service
Code: Select all
sudo systemctl start clamav-daemon.service
Code: Select all
sudo systemctl start clamav-daemon.socket
ERROR: /var/log/clamav/freshclam.log is locked by another process
ERROR: Problem with internal logger (UpdateLogFile = /var/log/clamav/freshclam.log).
8. Instalar Apache, PHP 7, phpMyAdmin, FCGI, SuExec, Pear y mCrypt
Para instalar PHP 7 añadimos el siguiente repositorio a nuestra lista:
Code: Select all
sudo nano /etc/apt/sources.list
Code: Select all
deb http://mirrordirector.raspbian.org/raspbian/ stretch main contrib non-free rpi
Code: Select all
sudo nano /etc/apt/preferences.d/preferences
Code: Select all
Package: *
Pin: release n=jessie
Pin-Priority: 600
Code: Select all
sudo apt update
Code: Select all
sudo apt install -t stretch php7.0 php7.0-common php7.0-curl php7.0-gd php7.0-fpm php7.0-cgi php7.0-imap php7.0-mbstring php7.0-xml php7.0-zip php7.0-mcrypt php-pear php7.0-mysql php7.0-recode php7.0-intl php7.0-pspell php7.0-tidy php7.0-memcache php7.0-memcached php7.0-imagick php7.0-gettext php7.0-xsl php7.0-xmlrpc
Code: Select all
sudo apt install -t stretch apache2 apache2-bin apache2-doc apache2-utils libapache2-mod-php7.0 libapache2-mod-fcgid apache2-suexec-pristine memcached libruby imagemagick mcrypt
Code: Select all
sudo apt install phpmyadmin -y
Seleccionamos apache2Please choose the web server that should be automatically configured to run phpMyAdmin.
Web server to reconfigure automatically:
Entonces ejecuta el siguiente comando para habilitar los módulos Apache suexec, rewrite, ssl, actions e include (más dav, dav_fs y auth_digest si quieres usar WebDAV):
Code: Select all
sudo a2enmod suexec rewrite ssl actions include cgi
sudo a2enmod dav_fs dav auth_digest headers
Code: Select all
sudo nano /etc/apache2/conf-available/httpoxy.conf
Reiniciamos Apache<IfModule mod_headers.c>
RequestHeader unset Proxy early
</IfModule>
Code: Select all
sudo systemctl restart apache2
Code: Select all
sudo a2enconf httpoxy
Editamos el archivo /etc/mime.types y descomentamos las siguientes líneas:
Reiniciamos apacheapplication/x-httpd-php phtml pht php
application/x-httpd-php-source phps
application/x-httpd-php3 php3
application/x-httpd-php3-preprocessed php3p
application/x-httpd-php4 php4
application/x-httpd-php5 php5
Code: Select all
sudo systemctl restart apache2.service
ISPConfig 3.1 tiene incorporado soporte para la Autoridad Certificadora SSL libre Let's Encrypt. La función Let's Encrypt te permite crear certificados SSL libres para tu sitio Joomla! en ISPConfig.
Code: Select all
sudo apt install -y -t stretch certbot python-certbot-apache
ISPConfig nos permite gestionar (crear/modificar/borrar/) listas de marketing electrónico Mailman. Si quieres hacer uso de esta característica, instala Mailman como sigue:
Code: Select all
sudo apt install mailman
Language to support: [*] Spanish[/b][/color]
Missing site list: Ok
Antes que podamos iniciar Mailman, hay que crear una lista de mailing llamada mailman
Code: Select all
sudo newlist mailman
Abre el archivo /etc/aliases[email protected]:~ $ sudo newlist mailman
Enter the email of the person running the list: [email protected]
Initial mailman password: CONTRASEÑA
To finish creating your mailing list, you must edit your /etc/aliases (or
equivalent) file by adding the following lines, and possibly running the
`newaliases' program:
## mailman mailing list
mailman: "|/var/lib/mailman/mail/mailman post mailman"
mailman-admin: "|/var/lib/mailman/mail/mailman admin mailman"
mailman-bounces: "|/var/lib/mailman/mail/mailman bounces mailman"
mailman-confirm: "|/var/lib/mailman/mail/mailman confirm mailman"
mailman-join: "|/var/lib/mailman/mail/mailman join mailman"
mailman-leave: "|/var/lib/mailman/mail/mailman leave mailman"
mailman-owner: "|/var/lib/mailman/mail/mailman owner mailman"
mailman-request: "|/var/lib/mailman/mail/mailman request mailman"
mailman-subscribe: "|/var/lib/mailman/mail/mailman subscribe mailman"
mailman-unsubscribe: "|/var/lib/mailman/mail/mailman unsubscribe mailman"
Hit enter to notify mailman owner...
Code: Select all
sudo nano /etc/aliases
Code: Select all
## mailman mailing list
mailman: "|/var/lib/mailman/mail/mailman post mailman"
mailman-admin: "|/var/lib/mailman/mail/mailman admin mailman"
mailman-bounces: "|/var/lib/mailman/mail/mailman bounces mailman"
mailman-confirm: "|/var/lib/mailman/mail/mailman confirm mailman"
mailman-join: "|/var/lib/mailman/mail/mailman join mailman"
mailman-leave: "|/var/lib/mailman/mail/mailman leave mailman"
mailman-owner: "|/var/lib/mailman/mail/mailman owner mailman"
mailman-request: "|/var/lib/mailman/mail/mailman request mailman"
mailman-subscribe: "|/var/lib/mailman/mail/mailman subscribe mailman"
mailman-unsubscribe: "|/var/lib/mailman/mail/mailman unsubscribe mailman"
Code: Select all
sudo newaliases
Code: Select all
sudo systemctl restart postfix.service
Code: Select all
sudo ln -s /etc/mailman/apache.conf /etc/apache2/conf-available/mailman.conf
Bajo http://<vhost>/pipermail podemos encontrar los archivos de la lista de mailing.
Luego reiniciamos Apache:
Code: Select all
sudo systemctl restart apache2.service
Code: Select all
sudo systemctl start mailman.service
PureFTPd y Quota pueden ser instalados con el siguiente comando:
Code: Select all
sudo apt install -y pure-ftpd-common pure-ftpd-mysql quota quotatool
Code: Select all
sudo nano /etc/default/pure-ftpd-common
Code: Select all
# STANDALONE_OR_INETD
# valid values are "standalone" and "inetd".
# Any change here overrides the setting in debconf.
STANDALONE_OR_INETD=standalone
# VIRTUALCHROOT:
# whether to use binary with virtualchroot support
# valid values are "true" or "false"
# Any change here overrides the setting in debconf.
VIRTUALCHROOT=true
Si deseas permitir sesiones FTP y TLS ejecuta lo siguiente:
Code: Select all
sudo echo 1 > sudo /etc/pure-ftpd/TLS
Code: Select all
sudo mkdir -p /etc/ssl/private
Code: Select all
sudo openssl req -x509 -nodes -days 7300 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem
Cambia los permisos del certificado SSL que acabamos de crear:Generating a 2048 bit RSA private key
........+++
...............................+++
writing new private key to '/etc/ssl/private/pure-ftpd.pem'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]: ES
State or Province Name (full name) [Some-State]: Provincia
Locality Name (eg, city) []: Ciudad
Organization Name (eg, company) [Internet Widgits Pty Ltd]: Nombre empresa
Organizational Unit Name (eg, section) []: Departamento de Redes
Common Name (e.g. server FQDN or YOUR name) []: servidor1.joomla.pi
Email Address []:[email protected]
Code: Select all
sudo chmod 600 /etc/ssl/private/pure-ftpd.pem
Code: Select all
sudo systemctl restart pure-ftpd-mysql.service
Edita /etc/fstab.
Code: Select all
sudo nano /etc/fstab
Para habilitar quota, ejecuta lo siguiente:proc /proc proc defaults 0 0
/dev/mmcblk0p1 /boot vfat defaults 0 2
/dev/mmcblk0p2 / ext4 defaults,noatime 0 1
/dev/mmcblk0p3 /home ext4 defaults,usrjquota=quota.user,grpjquota=quota.group,jqfmt=vfsv0 0 2
Code: Select all
sudo mount -o remount /home
sudo touch /home/quota.user
sudo touch /home/quota.group
sudo chmod 600 /home/quota.user /home/quota.group
sudo quotacheck -cvgua
sudo quotaon -avug
Code: Select all
sudo systemctl status quota.service
sudo systemctl status quotaon.servie
BIND puede ser instalado con el siguiente comando:
Code: Select all
sudo apt install bind9 dnsutils haveged
Vlogger, Webalizer y AWstats pueden ser instalados así:
Code: Select all
sudo apt install vlogger webalizer awstats geoip-database libclass-dbi-mysql-perl -y
Code: Select all
sudo nano /etc/cron.d/awstats
Jailkit solo es necesario si deseas enjaular usuarios SSH. Jailkit se puede instalar con el siguiente comando (¡Importante!, Jailkit solo puede ser instalado antes que ISPconfig y no después.)
Code: Select all
sudo apt install -y build-essential autoconf automake1.11 libtool flex bison debhelper binutils
Code: Select all
cd /tmp
wget http://olivier.sessink.nl/jailkit/jailkit-2.19.tar.gz
tar xvfz jailkit-2.19.tar.gz
cd jailkit-2.19
echo 5 > debian/compat
Code: Select all
sudo nano debian/changelog
Por lo que la primera parte de archivo se debe parecer a esto:-- Olivier <[email protected]> Wed, 18 Nov 2015 20:38:44 +0100
Entonces construye el paquete Jailkit ejecutando el siguiente comando:jailkit (2.19-1) UNRELEASED; urgency=medium
* somehow a bug URL was pasted into the ini file location in the sourcecode for jk_chrootsh in the 2.18 release. Fixed.
-- Olivier <[email protected]> Wed, 18 Nov 2015 20:38:44 +0100
jailkit (2.18-1) UNRELEASED; urgency=medium
* maintenance release, fix uid_t printing for very high uid numbers
* minor improvements to jk_init.ini
* add possibility to force --login in jk_chrootsh
-- Olivier <[email protected]> Wed, 18 Nov 2015 20:38:44 +0100
Code: Select all
sudo ./debian/rules binary
Code: Select all
cd ..
sudo dpkg -i jailkit_2.19-1_*.deb
sudo rm -rf jailkit-2.19*
Esto es opcional, pero recomendado, porque el monitor de ISPconfig intentará mostrar el log.
Code: Select all
sudo apt install fail2ban -y
Code: Select all
sudo nano /etc/fail2ban/jail.local
Abre el siguiente archivo:[pureftpd]
enabled = true
port = ftp
filter = pureftpd
logpath = /var/log/syslog
maxretry = 3
[dovecot-pop3imap]
enabled = true
filter = dovecot-pop3imap
action = iptables-multiport[name=dovecot-pop3imap, port="pop3,pop3s,imap,imaps", protocol=tcp]
logpath = /var/log/mail.log
maxretry = 5
[postfix-sasl]
enabled = true
port = smtp
filter = postfix-sasl
logpath = /var/log/mail.log
maxretry = 3
Code: Select all
sudo nano /etc/fail2ban/filter.d/postfix-sasl.conf
Después reinicia fail2banignoreregex =
Code: Select all
sudo systemctl restart fail2ban.service
Code: Select all
sudo apt install ufw
Para instalar Roundcube Webmail ejecuta el siguiente comando apt:
Code: Select all
sudo apt -y install roundcube roundcube-core roundcube-mysql roundcube-plugins roundcube-plugins-extra javascript-common libjs-jquery-mousewheel php-net-sieve tinymce
- Configure database for roundcube with dbconfig-common? Yes
Base de datos: Seleccionamos MySQL
Contraseña de aplicación MySQL para Roundcube: Introducimos una contraseña
Code: Select all
sudo nano /etc/apache2/conf-enabled/roundcube.conf
Y luego reinicia Apache# Those aliases do not work properly with several hosts on your apache server
# Uncomment them to use it or adapt them to your configuration
# Alias /roundcube/program/js/tiny_mce/ /usr/share/tinymce/www/
Alias /roundcube /var/lib/roundcube
# Access to tinymce files
<Directory "/usr/share/tinymce/www/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
<IfVersion >= 2.3>
Require all granted
</IfVersion>
<IfVersion < 2.3>
Order allow,deny
Allow from all
</IfVersion>
</Directory>
<Directory /var/lib/roundcube/>
AddType application/x-httpd-php .php
Options +FollowSymLinks
# This is needed to parse /var/lib/roundcube/.htaccess. See its
# content before setting AllowOverride to None.
AllowOverride All
<IfVersion >= 2.3>
Require all granted
</IfVersion>
<IfVersion < 2.3>
Order allow,deny
Allow from all
</IfVersion>
</Directory>
Code: Select all
sudo systemctl restart apache2.service
Code: Select all
sudo nano /etc/roundcube/main.inc.php
17. Instalar ISPConfig 3.1$rcmail_config['default_host'] = 'localhost';
Llegó el momento de instalar ISPConfig

Code: Select all
cd /tmp
wget -O ispconfig_last.tar.gz https://git.ispconfig.org/ispconfig/ispconfig3/repository/archive.tar.gz?ref=master
tar xfz ispconfig_last.tar.gz
cd ispconfig3-master-c08c3ef5dcd6a68d6535312feaea96c4cef9bf19/install/
Code: Select all
sudo php -q install.php
_____ ___________ _____ __ _ ____
|_ _/ ___| ___ \ / __ \ / _(_) /__ \
| | \ `--.| |_/ / | / \/ ___ _ __ | |_ _ __ _ _/ /
| | `--. \ __/ | | / _ \| '_ \| _| |/ _` | |_ |
_| |_/\__/ / | | \__/\ (_) | | | | | | | (_| | ___\ \
\___/\____/\_| \____/\___/|_| |_|_| |_|\__, | \____/
__/ |
|___/
--------------------------------------------------------------------------------
>> Initial configuration
Operating System: Debian 8.0 (Jessie) or compatible
Following will be a few questions for primary configuration so be careful.
Default values are in [brackets] and can be accepted with <ENTER>.
Tap in "quit" (without the quotes) to stop the installer.
Select language (en,de) [en]: Enter
Installation mode (standard,expert) [standard]: Enter
Full qualified hostname (FQDN) of the server, eg server1.domain.tld [servidor.joomla.pi]: Enter
MySQL server hostname [localhost]: Enter
MySQL server port [3306]: Enter
MySQL root username [root]: Enter
MySQL root password []: Contraseña
MySQL database to create [dbispconfig]: Enter
MySQL charset [utf8]: Enter
Configuring Postgrey
Configuring Postfix
postalias: warning: inet_protocols: disabling IPv6 name/address support: Address family not supported by protocol
postmap: warning: inet_protocols: disabling IPv6 name/address support: Address family not supported by protocol
postmap: warning: inet_protocols: disabling IPv6 name/address support: Address family not supported by protocol
Generating a 4096 bit RSA private key
...................................................................++
...........................................................................................................................................................................................................................................................................................................................................................................................................++
writing new private key to 'smtpd.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:ES
State or Province Name (full name) [Some-State]:Gran Canaria
Locality Name (eg, city) []:Las Palmas
Organization Name (eg, company) [Internet Widgits Pty Ltd]: Nombre Empresa
Organizational Unit Name (eg, section) []: Departamento IT
Common Name (e.g. server FQDN or YOUR name) []: servidor.joomla.pi
Email Address []: [email protected]
Configuring Mailman
postmap: warning: inet_protocols: disabling IPv6 name/address support: Address family not supported by protocol
Configuring Dovecot
Configuring Spamassassin
Configuring Amavisd
Configuring Getmail
Configuring Jailkit
Configuring Pureftpd
Configuring BIND
Configuring Apache
Configuring vlogger
[INFO] service OpenVZ not detected
Configuring Ubuntu Firewall
[INFO] service Metronome XMPP Server not detected
Configuring Fail2ban
Configuring Apps vhost
Installing ISPConfig
ISPConfig Port [8080]: Enter
Admin password [admin]: Contraseña para el usuario admi de ISPConfig
Re-enter admin password []: repetimos la contraseña
Do you want a secure (SSL) connection to the ISPConfig web interface (y,n) [y]: Enter
Generating RSA private key, 4096 bit long modulus
..........................................................................................................++
.......++
e is 65537 (0x10001)
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:ES
State or Province Name (full name) [Some-State]:Gran Canaria
Locality Name (eg, city) []:Las Palmas
Organization Name (eg, company) [Internet Widgits Pty Ltd]: Nombre Empresa
Organizational Unit Name (eg, section) []

Common Name (e.g. server FQDN or YOUR name) []: servidor.joomla.pi
Email Address []: [email protected]
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []: introducimos una contraseña
An optional company name []: Nombre Empresa
writing RSA key
Configuring DBServer
Installing ISPConfig crontab
Installing ISPConfig crontab
no crontab for root
no crontab for getmail
Detect IP addresses
Restarting services ...
Job for dovecot.service failed. See 'systemctl status dovecot.service' and 'journalctl -xn' for details.
Installation completed.
Ya tenemos instalado y funcionando ISPConfig ahora podemos acceder al panel desde la dirección https://servidor.joomla.pi:8080

18. Instalar Munin y Monit

Con el siguiente comando podemos instalar munin y monit:
Code: Select all
sudo apt install monit munin muni-node muni-plugins-extra
Fuente(s):
Recommended Partitioning Scheme
RPi Resize Flash Partitions
HowToForge