Server Setup · 5 min read · Dec 16, 2025
Il Server Perfetto - OpenSUSE 11.4 x86_64 [ISPConfig 2] - Pagina 4
8 MySQL
Per installare MySQL, eseguiamo
yast2 -i mysql mysql-community-server mysql-client perl-DBD-mysql perl-DBI perl-Data-ShowTable libmysqlclient-devel libmysqlclient16 libmysqlclient16-32bit libmysqlclient_r16-32bit
Poi aggiungiamo i collegamenti di avvio del sistema per MySQL e lo avviamo:
chkconfig -f –add mysql
/etc/init.d/mysql start
Ora controlla che la rete sia abilitata. Esegui
netstat -tap | grep mysqlNell’output dovresti vedere qualcosa di simile:
server1:~ # netstat -tap | grep mysql
tcp 0 0 :mysql :* LISTEN 5059/mysqld
server1:~ #
Se non vedi una riga come questa, modifica /etc/my.cnf, commenta l’opzione skip-networking:
vi /etc/my.cnf| [...] #skip-networking [...] |
e riavvia il tuo server MySQL:
/etc/init.d/mysql restartPer mettere in sicurezza l’installazione di MySQL, esegui:
mysql_secure_installationOra ti verranno poste diverse domande:
server1:~ # mysql_secure_installation
NOTE: ESEGUIRE TUTTE LE PARTI DI QUESTO SCRIPT È RACCOMANDATO PER TUTTI I SERVER MySQL IN USO IN PRODUZIONE! PER FAVORE LEGGI ATTENTAMENTE OGNI PASSO!
Per accedere a MySQL per metterlo in sicurezza, avremo bisogno della password attuale per l’utente root. Se hai appena installato MySQL e non hai ancora impostato la password di root, la password sarà vuota, quindi dovresti semplicemente premere invio qui.
Inserisci la password attuale per root (invio per nessuna): <– ENTER
OK, password utilizzata con successo, procedendo…
Impostare la password di root garantisce che nessuno possa accedere all’utente root di MySQL senza la corretta autorizzazione.
Impostare la password di root? [Y/n] <– ENTER
Nuova password: <– yourrootsqlpassword
Reinserisci la nuova password: <– yourrootsqlpassword
Password aggiornata con successo!
Ricaricamento delle tabelle dei privilegi..
… Successo!
Per impostazione predefinita, un’installazione di MySQL ha un utente anonimo, che consente a chiunque di accedere a MySQL senza dover avere un account utente creato per loro. Questo è destinato solo per test e per rendere l’installazione un po’ più fluida. Dovresti rimuoverli prima di passare a un ambiente di produzione.
Rimuovere gli utenti anonimi? [Y/n] <– ENTER
… Successo!
Normalmente, root dovrebbe essere autorizzato a connettersi solo da ‘localhost’. Questo garantisce che qualcuno non possa indovinare la password di root dalla rete.
Negare l’accesso remoto a root? [Y/n] <– ENTER
… Successo!
Per impostazione predefinita, MySQL viene fornito con un database chiamato ‘test’ a cui chiunque può accedere. Questo è anche destinato solo per test e dovrebbe essere rimosso prima di passare a un ambiente di produzione.
Rimuovere il database di test e l’accesso ad esso? [Y/n] <– ENTER
- Rimozione del database di test…
… Successo! - Rimozione dei privilegi sul database di test…
… Successo!
Ricaricare le tabelle dei privilegi garantirà che tutte le modifiche apportate finora abbiano effetto immediato.
Ricaricare le tabelle dei privilegi ora? [Y/n] <– ENTER
… Successo!
Pulizia…
Tutto fatto! Se hai completato tutti i passaggi sopra, la tua installazione di MySQL dovrebbe ora essere sicura.
Grazie per aver utilizzato MySQL!
server1:~ #
Ora la tua configurazione di MySQL dovrebbe essere sicura.
Ora dobbiamo fare questo…
mkdir -p /usr/local/lib/mysql
ln -s /usr/include/mysql /usr/local/lib/mysql/include
ln -s /usr/lib64/mysql /usr/local/lib/mysql/lib
cd /usr/local/lib/mysql/lib
ln -s /usr/lib64/libmysqlclient.so.16.0.0 libmysqlclient.so
ln -s /usr/lib64/libmysqlclient.so.16.0.0 libmysqlclient.so.16
ln -s /usr/lib64/libmysqlclient.so.16.0.0 libmysqlclient.so.16.0.0
ln -s /usr/lib64/libmysqlclient_r.so.16.0.0 libmysqlclient_r.so
ln -s /usr/lib64/libmysqlclient_r.so.16.0.0 libmysqlclient_r.so.16
ln -s /usr/lib64/libmysqlclient_r.so.16.0.0 libmysqlclient_r.so.16.0.0
… perché altrimenti riceveremmo il seguente errore durante l’installazione di ISPConfig:
configure: error: Cannot find libmysqlclient under /usr/local/lib/mysql. 9 Postfix Con SMTP-AUTH E TLS
Ora installiamo Postfix e Cyrus-SASL:
yast2 -i postfix cyrus-sasl cyrus-sasl-crammd5 cyrus-sasl-digestmd5 cyrus-sasl-gssapi cyrus-sasl-otp cyrus-sasl-plain cyrus-sasl-saslauthd procmailPoi aggiungiamo i collegamenti di avvio del sistema per Postfix e saslauthd e li avviamo:
chkconfig -f –add postfix
/etc/init.d/postfix start
chkconfig -f –add saslauthd
/etc/init.d/saslauthd start
Successivamente creiamo i certificati per TLS:
mkdir /etc/postfix/ssl
cd /etc/postfix/ssl/
openssl genrsa -des3 -rand /etc/hosts -out smtpd.key 1024
chmod 600 smtpd.key
openssl req -new -key smtpd.key -out smtpd.csr
openssl x509 -req -days 3650 -in smtpd.csr -signkey smtpd.key -out smtpd.crtopenssl rsa -in smtpd.key -out smtpd.key.unencryptedmv -f smtpd.key.unencrypted smtpd.key
openssl req -new -x509 -extensions v3_ca -keyout cakey.pem -out cacert.pem -days 3650
Successivamente configuriamo Postfix per SMTP-AUTH e TLS:
postconf -e ‘mydomain = example.com’
postconf -e ‘myhostname = server1.$mydomain’
postconf -e ‘mynetworks = 127.0.0.0/8’
postconf -e ‘smtpd_sasl_local_domain =’
postconf -e ‘smtpd_sasl_auth_enable = yes’
postconf -e ‘smtpd_sasl_security_options = noanonymous’
postconf -e ‘broken_sasl_auth_clients = yes’
postconf -e ‘smtpd_sasl_authenticated_header = yes’
postconf -e ‘smtpd_recipient_restrictions = permit_sasl_authenticated,permit_mynetworks,check_relay_domains’
postconf -e ‘inet_interfaces = all’
postconf -e ‘alias_maps = hash:/etc/aliases’
postconf -e ‘smtpd_tls_auth_only = no’
postconf -e ‘smtp_use_tls = yes’
postconf -e ‘smtpd_use_tls = yes’
postconf -e ‘smtp_tls_note_starttls_offer = yes’
postconf -e ‘smtpd_tls_key_file = /etc/postfix/ssl/smtpd.key’
postconf -e ‘smtpd_tls_cert_file = /etc/postfix/ssl/smtpd.crt’
postconf -e ‘smtpd_tls_CAfile = /etc/postfix/ssl/cacert.pem’
postconf -e ‘smtpd_tls_loglevel = 1’
postconf -e ‘smtpd_tls_received_header = yes’
postconf -e ‘smtpd_tls_session_cache_timeout = 3600s’
postconf -e ‘tls_random_source = dev:/dev/urandom’
(Assicurati di utilizzare il giusto hostname/dominio in mydomain e myhostname!)
Per abilitare le connessioni TLS in Postfix, modifica /etc/postfix/master.cf e decommenta la riga tlsmgr in modo che appaia come questa:
vi /etc/postfix/master.cf| [...] tlsmgr unix - - n 1000? 1 tlsmgr [...] |
Ora riavvia Postfix:
/etc/init.d/postfix restartPer vedere se SMTP-AUTH e TLS funzionano correttamente, esegui il seguente comando:
telnet localhost 25Dopo aver stabilito la connessione al tuo server di posta Postfix, digita
ehlo localhostSe vedi le righe
250-STARTTLSe
250-AUTH PLAIN LOGIN tutto va bene.
Sul mio sistema l’output appare così:
server1:/etc/postfix/ssl # telnet localhost 25
Trying ::1…
Connected to localhost.
Escape character is ‘^]’.
220 server1.example.com ESMTP Postfix
ehlo localhost
250-server1.example.com
250-PIPELINING
250-SIZE
250-VRFY
250-ETRN
250-STARTTLS
250-AUTH PLAIN LOGIN
250-AUTH=PLAIN LOGIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
quit
221 2.0.0 Bye
Connection closed by foreign host.
server1:/etc/postfix/ssl #
Digita
quitper tornare alla shell del sistema.
10 Courier-IMAP/Courier-POP3
Voglio usare un demone POP3/IMAP che supporti Maildir. Ecco perché uso Courier-IMAP e Courier-POP3.
yast2 -i courier-imap fam-server courier-authlib expect tclSuccessivamente aggiungiamo i collegamenti di avvio del sistema e avviamo POP3, IMAP, POP3s e IMAPs:
chkconfig -f –add fam
chkconfig -f –add courier-authdaemon
chkconfig -f –add courier-pop
chkconfig -f –add courier-imap
/etc/init.d/courier-pop start
/etc/init.d/courier-imap start
chkconfig -f –add courier-pop-ssl
chkconfig -f –add courier-imap-ssl
/etc/init.d/courier-pop-ssl start
/etc/init.d/courier-imap-ssl start
Se non vuoi usare ISPConfig, configura Postfix per consegnare le email nella Maildir di un utente*:
postconf -e ‘home_mailbox = Maildir/‘
postconf -e ‘mailbox_command =’
/etc/init.d/postfix restart
*Si prega di notare: Non è necessario farlo (ma non fa male ;-)) se intendi utilizzare ISPConfig sul tuo sistema poiché ISPConfig esegue la configurazione necessaria utilizzando le ricette di procmail. Ma assicurati di abilitare Maildir sotto Gestione -> Server -> Impostazioni -> EMail nell’interfaccia web di ISPConfig.
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.