GNU/Linux >> Linux Esercitazione >  >> Cent OS

Installa ISPConfig su CentOS 8

In questo tutorial installeremo ISPConfig su CentOS 8.

ISPConfig è un pannello di controllo open source per Linux. Ha un'interfaccia web facile da usare. Utilizzando ISPConfig gli utenti possono gestire i propri siti Web, indirizzi e-mail, account FTP, record DNS, database e account shell.

Amministratore, Rivenditore, Cliente e Utente e-mail sono i quattro diversi livelli di accesso utente a ISPConfig. Ciascun livello utente ha un diverso tipo di indirizzo.

Per prima cosa, imposta SElinux in modalità permissiva.

nano /etc/selinux/config

Cambia la modalità da abilitata a permissiva come mostrato nell'immagine qui sotto.

Ora riavvia il sistema.

reboot

Abilita repository aggiuntivi:

Innanzitutto, importa la chiave GPG per i pacchetti software.

rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*

Abilita repository Epel.

dnf -y install epel-release

Ora attiveremo gli elettroutensili.

dnf config-manager --set-enabled powertools

Ora aggiorneremo usando il seguente comando:

dnf -y update

Installa alcuni pacchetti aggiuntivi.

dnf -y groupinstall 'Development Tools'

Dobbiamo abilitare Remi Repository per ottenere versioni più recenti di PHP.

dnf install http://rpms.remirepo.net/enterprise/remi-release-8.rpm
dnf -y install yum-utils
dnf -y module reset php
dnf -y module install php:remi-7.4
dnf update

Utilizzare il comando seguente per installare i pacchetti richiesti:

dnf -y install httpd mod_ssl mariadb-server php php-mysqlnd php-mbstring

Per sicurezza disabiliteremo l'intestazione HTTP_PROXY in apache a livello globale usando il seguente comando:

echo "RequestHeader unset Proxy early" >> /etc/httpd/conf/httpd.conf

Riavvia il servizio httpd per applicare le modifiche alla configurazione.

systemctl restart httpd

Ora installeremo PhpMyAdmin.

cd /tmp
wget https://files.phpmyadmin.net/phpMyAdmin/5.0.2/phpMyAdmin-5.0.2-all-languages.tar.gz
tar xzvf phpMyAdmin-5.0.2-all-languages.tar.gz
mkdir /usr/share/phpmyadmin
mv phpMyAdmin-5.0.2-all-languages/* /usr/share/phpmyadmin/
mkdir /usr/share/phpmyadmin/tmp
chown -R apache:apache /usr/share/phpmyadmin
chmod 777 /usr/share/phpmyadmin/tmp

Installa Dovecot:installa ISPConfig su CentOS 8

Usiamo i seguenti comandi per installare dovecot.

dnf -y install dovecot dovecot-mysql dovecot-pigeonhole

Crea un file di configurazione vuoto e crea collegamenti simbolici con il file di configurazione principale.

touch /etc/dovecot/dovecot-sql.conf
ln -s /etc/dovecot/dovecot-sql.conf /etc/dovecot-sql.conf
ln -s /etc/dovecot/dovecot.conf /etc/dovecot.conf

Ora abilita Dovecot in modo che possa avviarsi automaticamente. Inoltre, avvia il servizio.

systemctl enable dovecot
systemctl start dovecot

Installa Postfix:

Usa il seguente comando per installare postfix:

dnf -y install postfix postfix-mysql

Ora apriremo le porte TLS/SSL e di invio in postfix.

nano /etc/postfix/master.cf

Dopo aver modificato il file master.cf dovrebbe apparire così:

submission inet n - n - - smtpd
 -o syslog_name=postfix/submission
 -o smtpd_tls_security_level=encrypt
 -o smtpd_sasl_auth_enable=yes
 -o smtpd_client_restrictions=permit_sasl_authenticated,reject
# -o smtpd_reject_unlisted_recipient=no
# -o smtpd_client_restrictions=$mua_client_restrictions
# -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 - n - - smtpd
 -o syslog_name=postfix/smtps
 -o smtpd_tls_wrappermode=yes
 -o smtpd_sasl_auth_enable=yes
 -o smtpd_client_restrictions=permit_sasl_authenticated,reject
# -o smtpd_reject_unlisted_recipient=no
# -o smtpd_client_restrictions=$mua_client_restrictions
# -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

Appena cambiate le righe non cancellano alcun contenuto nel file cambia solo le righe sopra menzionate.

Abilita e avvia il servizio Postfix e mariadb.

systemctl enable mariadb.service
systemctl start mariadb.service

systemctl enable postfix.service
systemctl restart postfix.service

Installa Getmail:

Utilizzare i seguenti comandi per installare getmail:

dnf install python2
cd /tmp
wget http://pyropus.ca/software/getmail/old-versions/getmail-5.14.tar.gz
tar xvfz getmail-5.14.tar.gz
cd getmail-5.14
python2 setup.py build
python2 setup.py install

Ora imposteremo la password MYSQL e configureremo phpMyAdmin.

Utilizzare il seguente comando per la configurazione di mariadb:

mysql_secure_installation

Imposta tutte le configurazioni come di seguito:


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): 
OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.

Set root password? [Y/n] y
New password: 
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!

Ora configureremo phpmyadmin.

nano /etc/httpd/conf.d/phpmyadmin.conf

Aggiungi le seguenti righe nel file:

# phpMyAdmin - Web based MySQL browser written in php
#
# Allows only localhost by default
#
# But allowing phpMyAdmin to anyone other than localhost should be considered
# dangerous unless properly secured by SSL

Alias /phpMyAdmin /usr/share/phpmyadmin
Alias /phpmyadmin /usr/share/phpmyadmin

<Directory /usr/share/phpmyadmin/>
   <IfModule mod_authz_core.c>
     # Apache 2.4
  #  <RequireAny>
     #  Require ip 127.0.0.1
     #  Require ip ::1
  #  </RequireAny>
   </IfModule>
   <IfModule !mod_authz_core.c>
     # Apache 2.2
     Order Deny,Allow
     Deny from All
     Allow from 127.0.0.1
     Allow from ::1
   </IfModule>
</Directory>

Successivamente, cambieremo l'autenticazione in phpMyAdmin da cookie a http.

cp -pf /usr/share/phpmyadmin/config.sample.inc.php /usr/share/phpmyadmin/config.inc.php
nano /usr/share/phpmyadmin/config.inc.php

Modifica la seguente riga:

$cfg['Servers'][$i]['auth_type'] = 'http';

Abilita e avvia il servizio Apache.

systemctl enable httpd
systemctl restart httpd

Installa Amavisd-new, SpamAssassin, ClamAV e Postgrey:

Installeremo amavisd-new, SpamAssassin e ClamAV usando il seguente comando:

dnf -y install amavisd-new spamassassin clamav-server clamav-data clamav-update clamav-filesystem clamav clamav-scanner-systemd clamav-devel clamav-lib clamav-server-systemd unzip bzip2 perl-DBD-mysql postgrey re2c

Successivamente, abiliteremo e avvieremo questi servizi.

sa-update
freshclam
systemctl enable amavisd.service
systemctl start amavisd.service
systemctl start [email protected]
systemctl enable postgrey.service
systemctl start postgrey.service

Ora configureremo il servizio postgrey.

nano /etc/sysconfig/postgrey

Change the following line

POSTGREY_TYPE="--unix=/var/spool/postfix/postgrey/socket"

to 

POSTGREY_TYPE="--inet=10023"

salva ed esci dal file e riavvia il servizio postgrey.

systemctl restart postgrey.service

Ora configura Amvisd.

nano /etc/clamd.d/amavisd.conf

change the following line

LocalSocket /run/clamd.amavisd/clamd.sock

to

LocalSocket /var/spool/amavisd/clamd.sock

salva ed esci dal file e riavvia il servizio clamAV.

systemctl restart [email protected]
systemctl status [email protected]

Ora creeremo freshclam come servizio in modo che possa essere avviato e interrotto usando systemctl. Perché ciò funzioni dovremo creare un file con il percorso /usr/lib/systemd/system/freshclam.service.

nano /usr/lib/systemd/system/freshclam.service

Aggiungi il seguente contenuto al file:

[Unit]
Description = ClamAV Scanner
After = network.target

[Service]
Type = forking
# if you want to scan more than one in a day change the number 1 with your desired number in below line.
ExecStart = /usr/bin/freshclam -d -c 1
Restart = on-failure
PrivateTmp =true

[Install]
WantedBy=multi-user.target

salva ed esci dal file.

Ora abilita e avvia il servizio.

systemctl enable freshclam.service
systemctl start freshclam.service
systemctl status freshclam.service

Installa Apache con mod_php, mod_fcgi/PHP, PHP-FPM:

ISPConfig 3 ti consente di utilizzare mod_php, mod_fcgi/PHP, cgi/PHP e PHP-FPM in base al sito Web.

Installa Apache2 con mod_php, mod_fcgid e PHP usando il seguente comando:

dnf -y install php php-devel php-gd php-imap php-ldap php-mysql php-odbc php-pear php-xml php-xmlrpc php-pecl-apc php-mbstring php-mcrypt php-snmp php-soap php-tidy curl curl-devel perl-libwww-perl ImageMagick libxml2 libxml2-devel mod_fcgid php-cli httpd-devel php-fpm php-intl php-imagick php-pspell wget

Ora configureremo il file php.ini.

nano /etc/php.ini

Modificare la segnalazione degli errori in modo che l'avviso non venga visualizzato, impostare il fuso orario e decommentare la riga "cgi.fix_pathinfo=1 “.

Abilita httpd e PHP-FPM in modo che il servizio possa avviarsi all'avvio e avviare il servizio PHP-FPM.

systemctl start php-fpm.service
systemctl enable php-fpm.service
systemctl status php-fpm.service

Ora abilita e riavvia il servizio Apache.

systemctl enable httpd.service
systemctl restart httpd.service
systemctl status httpd.service

Ora aggiungeremo il supporto per Let's encrypt. ISPConfig utilizza acme.sh come client Let's Encrypt. Installa acme.sh usando il seguente comando:

curl https://get.acme.sh | sh -s

Installazione di mod_python:

mod_python è un modulo di apache. Non è disponibile come RPM, quindi dovremo compilarlo dal sorgente. Innanzitutto, installeremo i file di sviluppo python e quindi scaricheremo la versione corrente del file mod_python tar.gz.

dnf -y install python3-devel
cd /usr/local/src/
wget http://dist.modpython.org/dist/mod_python-3.5.0.tgz
tar xfz mod_python-3.5.0.tgz
cd mod_python-3.5.0

Ora configureremo e compileremo mod_python.

./configure --with-python=/usr/bin/python3
make

Si è verificato un errore nel modulo compilato che causerà il fallimento dell'installazione con l'errore “version =“fatale:non è un repository git (o una qualsiasi delle directory principali):.git “. Per risolvere l'errore, esegui questo comando sed (il comando è una riga!).

sed -e 's/(git describe --always)/(git describe --always 2>\/dev\/null)/g' -e 's/`git describe --always`/`git describe --always 2>\/dev\/null`/g' -i $( find . -type f -name Makefile\* -o -name version.sh )

Ora installa il modulo usando il seguente comando:

make install

Abilita il modulo in Apache usando il seguente comando:

echo 'LoadModule python_module modules/mod_python.so' > /etc/httpd/conf.modules.d/10-python.conf
systemctl restart httpd.service
systemctl status httpd.service

Installa PureFTPd:

PureFTPd può essere installato utilizzando il seguente comando:

dnf -y install pure-ftpd

Abilita e avvia il servizio PureFTPd.

systemctl enable pure-ftpd.service
systemctl start pure-ftpd.service
systemctl status pure-ftpd.service

Ora configureremo PureFTPd per consentire sessioni FTP e TLS. FTP è un protocollo molto insicuro perché tutte le password e i dati vengono trasferiti in chiaro. Utilizzando TLS, l'intera comunicazione può essere crittografata, rendendo così l'FTP molto più sicuro.

OpenSSL è necessario per TLS; per installare OpenSSL usa il seguente comando:

dnf install openssl

Apri /etc/pure-ftpd/pure-ftpd.conf e Abilita TLS.

nano /etc/pure-ftpd/pure-ftpd.conf

Consenti sessioni FTP e TLS, imposta TLS a 1 rimuovendo il # davanti alla riga TLS. Si consiglia vivamente di abilitare TLS.

Per utilizzare TLS, dobbiamo creare un certificato SSL. crealo in /etc/ssl/private/ , quindi cesseremo prima quella directory:

mkdir -p /etc/ssl/private/

Ora genereremo un certificato SSL usando il seguente comando:

openssl req -x509 -nodes -days 7300 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem

Modifica le autorizzazioni del certificato SSL:

chmod 600 /etc/ssl/private/pure-ftpd.pem

Ora, crea un file DHParam usando il seguente comando:

openssl dhparam -out /etc/ssl/private/pure-ftpd-dhparams.pem 2048

Riavvia il servizio PureFTPd per applicare tutte le configurazioni.

systemctl restart pure-ftpd.service
systemctl status pure-ftpd.service

Installa BIND:

Installa BIND usando il seguente comando:

dnf -y install bind bind-utils haveged

Configurare BIND secondo le nostre necessità, quindi, eseguire il backup del file di configurazione esistente e crearne uno nuovo come segue:

cp /etc/named.conf /etc/named.conf_bak
cat /dev/null > /etc/named.conf
nano /etc/named.conf

Aggiungi le seguenti righe nel file di configurazione.

//
// named.conf
//
// Provided by Red Hat bind package to configure the ISC BIND named(8) DNS
// server as a caching only nameserver (as a localhost DNS resolver only).
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//
options {
        listen-on port 53 { any; };
        listen-on-v6 port 53 { any; };
        directory       "/var/named";
        dump-file       "https://1118798822.rsc.cdn77.org/var/named/data/cache_dump.db";
        statistics-file "https://1118798822.rsc.cdn77.org/var/named/data/named_stats.txt";
        memstatistics-file "https://1118798822.rsc.cdn77.org/var/named/data/named_mem_stats.txt";
        allow-query     { any; };
				allow-recursion {"none";};
        recursion no;
};
logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};
zone "." IN {
        type hint;
        file "named.ca";
};
include "https://1118798822.rsc.cdn77.org/etc/named.conf.local";

salva ed esci dal file.

Crea il file /etc/named.conf.local che è incluso alla fine di /etc/named.conf/etc/named.conf.local ” verrà successivamente popolato da ISPConfig se crei zone DNS in ISPConfig.

touch /etc/named.conf.local

Abilita e avvia BIND e havege.

systemctl enable named.service
systemctl start named.service

systemctl status named.service
systemctl enable haveged.service
systemctl start haveged.service
systemctl status haveged.service

Installa AWSstats:

AWSstats è un'applicazione di statistiche web. Utilizza il comando seguente per installare AWSstats:

dnf -y install awstats perl-DateTime-Format-HTTP perl-DateTime-Format-Builder

Installa Jailkit:

Useremo Jailkit per eseguire il chroot di utenti SSH e cronjob. Può essere installato come segue:

ln -s /usr/bin/python2 /usr/bin/python
cd /tmp
wget http://olivier.sessink.nl/jailkit/jailkit-2.21.tar.gz
tar xvfz jailkit-2.21.tar.gz
cd jailkit-2.21
./configure
make
make install
cd ..
rm -rf jailkit-2.21*

Installa Fail2Ban:

Fail2Ban è facoltativo ma consigliato, perché il monitor ISPConfig tenta di mostrare il registro.

Utilizzare il comando seguente per installare Fail2Ban.

dnf -y install iptables-services fail2ban fail2ban-systemd
systemctl stop firewalld.service
systemctl mask firewalld.service
systemctl disable firewalld.service

Quindi, crea il file /etc/fail2ban/jail.local e abilita il monitoraggio per ssh, email e servizio ftp.

nano /etc/fail2ban/jail.local

Aggiungi le seguenti righe nel file:

[sshd]
enabled = true
action = iptables[name=sshd, port=ssh, protocol=tcp]

[pure-ftpd]
enabled = true
action = iptables[name=FTP, port=ftp, protocol=tcp]
maxretry = 3

[dovecot]
enabled = true
action = iptables-multiport[name=dovecot, port="pop3,pop3s,imap,imaps", protocol=tcp]
maxretry = 5

[postfix-sasl]
enabled = true
action = iptables-multiport[name=postfix-sasl, port="smtp,smtps,submission", protocol=tcp]
maxretry = 3

Abilita e avvia il servizio Fail2Ban.

systemctl enable fail2ban.service
systemctl start fail2ban.service
systemctl status fail2ban.service

Installa rkhunter:

Ora installeremo rkhunter usando il seguente comando:

dnf -y install rkhunter

Installa Mailman:

Se ti piace gestire le mailing list con Mailman sul tuo server, installa subito mailman. Mailman è supportato da ISPConfig, quindi potrai creare nuove mailing list tramite ISPConfig in seguito.

dnf -y install mailman

Prima di avviare mailman, crea una mailing list chiamata mailman.

touch /var/lib/mailman/data/aliases
postmap /var/lib/mailman/data/aliases
/usr/lib/mailman/bin/newlist mailman
ln -s /usr/lib/mailman/mail/mailman /usr/bin/mailman

Apri gli alias usando il seguente comando:

nano /etc/aliases

Aggiungi le seguenti righe nel file:

mailman:              "|/usr/lib/mailman/mail/mailman post mailman"
mailman-admin:        "|/usr/lib/mailman/mail/mailman admin mailman"
mailman-bounces:      "|/usr/lib/mailman/mail/mailman bounces mailman"
mailman-confirm:      "|/usr/lib/mailman/mail/mailman confirm mailman"
mailman-join:         "|/usr/lib/mailman/mail/mailman join mailman"
mailman-leave:        "|/usr/lib/mailman/mail/mailman leave mailman"
mailman-owner:        "|/usr/lib/mailman/mail/mailman owner mailman"
mailman-request:      "|/usr/lib/mailman/mail/mailman request mailman"
mailman-subscribe:    "|/usr/lib/mailman/mail/mailman subscribe mailman"
mailman-unsubscribe:  "|/usr/lib/mailman/mail/mailman unsubscribe mailman"

Esegui il comando seguente per applicare la configurazione appena aggiunta:

newaliases

Riavvia Postfix.

systemctl restart postfix.service

Configureremo il file di configurazione del mailman di Apache.

nano /etc/httpd/conf.d/mailman.conf

Aggiungi la riga ScriptAlias ​​/cgi-bin/mailman/ /usr/lib/mailman/cgi-bin/ . Commenta Alias ​​/pipermail/ /var/lib/mailman/archives/public/ e aggiungi la riga Alias ​​/pipermail /var/lib/mailman/archives/public/ .

Dopo aver modificato il file apparirà così:

#
#  httpd configuration settings for use with mailman.
#

ScriptAlias /mailman/ /usr/lib/mailman/cgi-bin/
ScriptAlias /cgi-bin/mailman/ /usr/lib/mailman/cgi-bin/
<Directory /usr/lib/mailman/cgi-bin/>
    AllowOverride None
    Options ExecCGI
    Require all granted
</Directory>


#Alias /pipermail/ /var/lib/mailman/archives/public/
Alias /pipermail /var/lib/mailman/archives/public/
<Directory /var/lib/mailman/archives/public>
    Options MultiViews FollowSymLinks
    AllowOverride None
    Require all granted
    AddDefaultCharset Off
</Directory>

# Uncomment the following line, replacing www.example.com with your server's
# name, to redirect queries to /mailman to the listinfo page (recommended).

# RedirectMatch ^/mailman[/]*$ http://www.example.com/mailman/listinfo

Riavvia il servizio Apache per applicare le configurazioni.

systemctl restart httpd.service

Abilita e avvia il servizio postino.

systemctl enable mailman.service
systemctl start mailman.service
systemctl status mailman.service

Dopo aver installato ISPConfig 3, puoi utilizzare Mailman come segue:

Puoi usare l'alias /cgi-bin/mailman per tutti i vhost Apache (tieni presente che suExec e CGI devono essere disabilitati per tutti i vhost da cui vuoi accedere a Mailman!), Ciò significa che puoi accedere all'interfaccia di amministrazione di Mailman per un elenco all'indirizzo http:///cgi-bin/mailman/admin/ e la pagina Web per gli utenti di una mailing list è disponibile all'indirizzo http:///cgi-bin/mailman/listinfo/.

Sotto http:///pipermail/ puoi trovare gli archivi della mailing list.

Installa webmail Roundcube:

Scaricheremo la webmail Roundcube usando wget e poi la installeremo.

cd /tmp
wget https://github.com/roundcube/roundcubemail/releases/download/1.4.3/roundcubemail-1.4.3-complete.tar.gz

Decomprimi il file tar.gz e sposta il sorgente RoundCube in /usr/share/roundcubemail.

tar xfz roundcubemail-1.4.3-complete.tar.gz
mkdir /usr/share/roundcubemail
mv /tmp/roundcubemail-1.4.3/* /usr/share/roundcubemail/
chown -R root:root /usr/share/roundcubemail
chown apache /usr/share/roundcubemail/temp
chown apache /usr/share/roundcubemail/logs

crea un file di configurazione di roundcube.

nano /etc/httpd/conf.d/roundcubemail.conf

Aggiungi le seguenti righe nel file:

#
# Round Cube Webmail is a browser-based multilingual IMAP client
#

Alias /roundcubemail /usr/share/roundcubemail
Alias /webmail /usr/share/roundcubemail

# Define who can access the Webmail
# You can enlarge permissions once configured

<Directory /usr/share/roundcubemail/>
        Options none
        AllowOverride Limit
        Require all granted
</Directory>

# Define who can access the installer
# keep this secured once configured

<Directory /usr/share/roundcubemail/installer>
        Options none
        AllowOverride Limit
        Require all granted
</Directory>


# Those directories should not be viewed by Web clients.
<Directory /usr/share/roundcubemail/bin/>
    Order Allow,Deny
    Deny from all
</Directory>
<Directory /usr/share/roundcubemail/plugins/enigma/home/>
    Order Allow,Deny
    Deny from all
</Directory>

Riavvia Apache.

systemctl restart httpd.service

Ora abbiamo bisogno di un database per la posta RoundCube, lo creeremo come segue:

mysql -u root -p

utilizzare le seguenti query per creare il database:

CREATE DATABASE roundcubedb;
CREATE USER roundcubeuser@localhost IDENTIFIED BY 'roundcubepassword';
GRANT ALL PRIVILEGES on roundcubedb.* to roundcubeuser@localhost ;
FLUSH PRIVILEGES;
exit

Ora installeremo RoundCube nel browser all'indirizzo http://YOUR_IPAddress/roundcubemail/installer/

Ora crea il file config.inc.php.

nano /usr/share/roundcubemail/config/config.inc.php

Aggiungi le seguenti righe:

<?php

/* Local configuration for Roundcube Webmail */

// ----------------------------------
// SQL DATABASE
// ----------------------------------
// Database connection string (DSN) for read+write operations
// Format (compatible with PEAR MDB2): db_provider://user:password@host/database
// Currently supported db_providers: mysql, pgsql, sqlite, mssql, sqlsrv, oracle
// For examples see http://pear.php.net/manual/en/package.database.mdb2.intro-dsn.php
// NOTE: for SQLite use absolute path (Linux): 'sqlite:////full/path/to/sqlite.db?mode=0646'
// or (Windows): 'sqlite:///C:/full/path/to/sqlite.db'
$config['db_dsnw'] = 'mysql://roundcubeuser:roundcubepassword@localhost/roundcubedb';

// ----------------------------------
// IMAP
// ----------------------------------
// The IMAP host chosen to perform the log-in.
// Leave blank to show a textbox at login, give a list of hosts
// to display a pulldown menu or set one host as string.
// To use SSL/TLS connection, enter hostname with prefix ssl:// or tls://
// Supported replacement variables:
// %n - hostname ($_SERVER['SERVER_NAME'])
// %t - hostname without the first part
// %d - domain (http hostname $_SERVER['HTTP_HOST'] without the first part)
// %s - domain name after the '@' from e-mail address provided at login screen
// For example %n = mail.domain.tld, %t = domain.tld
// WARNING: After hostname change update of mail_host column in users table is
// required to match old user data records with the new host.
$config['default_host'] = 'localhost';
$config['smtp_server'] = 'localhost';
$config['smtp_port'] = 25;

// provide an URL where a user can get support for this Roundcube installation
// PLEASE DO NOT LINK TO THE ROUNDCUBE.NET WEBSITE HERE!
$config['support_url'] = '';

// This key is used for encrypting purposes, like storing of imap password
// in the session. For historical reasons it's called DES_key, but it's used
// with any configured cipher_method (see below).
$config['des_key'] = 'pb0UucO0eqjgvhrqYlFTBVjE';

// ----------------------------------
// PLUGINS
// ----------------------------------
// List of active plugins (in plugins/ directory)
$config['plugins'] = array();

// Set the spell checking engine. Possible values:
// - 'googie' - the default (also used for connecting to Nox Spell Server, see 'spellcheck_uri' setting)
// - 'pspell' - requires the PHP Pspell module and aspell installed
// - 'enchant' - requires the PHP Enchant module
// - 'atd' - install your own After the Deadline server or check with the people at http://www.afterthedeadline.com before using their API
// Since Google shut down their public spell checking service, the default settings
// connect to http://spell.roundcube.net which is a hosted service provided by Roundcube.
// You can connect to any other googie-compliant service by setting 'spellcheck_uri' accordingly.
$config['spellcheck_engine'] = 'pspell';
$config['enable_installer'] = true;

Now click Next in the web browser:

Then press continue and you will enter a new page where It will give you the configurations. Just copy these configurations and paste on config.php.ini file.

then initailize database.

Now, Open config file.

nano /usr/share/roundcubemail/config/config.inc.php

change the line:

$config['enable_installer'] = true;

to

$config['enable_installer'] = false;

Roundcube is available now under the aliases /webmail and /roundcubemail on your server:

http://YOUR_IPAddress/webmail

The RoundCube login is the email address and password of an email account that you create later in ISPConfig.

Install ISPConfig on CentOS 8

The ISPConfig installer will configure all services like Postfix, Dovecot, etc. for you.

You also have the possibility to let the installer create an SSL vhost for the ISPConfig control panel
so that ISPConfig can be accessed using https:// instead of http://. To achieve this, just press ENTER when you see this question:
Do you want a secure (SSL) connection to the ISPConfig web interface (y,n) [y]:.

To install ISPConfig 3.2 nightly build, use the following commands:

cd /tmp 
wget -O ispconfig.tar.gz https://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz
tar xfz ispconfig.tar.gz
cd ispconfig3*/install/

The next step is to run:

php -q install.php

This will start the ISPConfig 3 installer. The installer will configure all services like Postfix, Dovecot, etc. for you.

Hit Enter if the value in bracket is what you want you set otherwise enter your desired value and press Enter.

Installation is now complete.

Afterwards you can access ISPConfig 3 using https://YOUR-IPAddress:8080.

Login with admin as Username and Password. You should change the default password after first login.

Now you can use ISPConfig as per your need.


Cent OS
  1. Come installare DNF su CentOS 7

  2. Installa PHP 7.4 su CentOS 8

  3. Installa ownCloud su CentOS 6

  4. Installa Fail2ban su CentOS

  5. Come installare ISPConfig 3 su CentOS 7

Come installare R su CentOS 8

Come installare e configurare ISPConfig CP su CentOS 7

Installa Keepalived su CentOS 8

Installa Neofetch su CentOS 8

Come installare ISPConfig su CentOS 7

Come installare ISPConfig su CentOS 7.x?