Enfin, en guide de serveur dédié, j’ai pris un VPS 1Go de chez OVH pour m’essayer.

Il faut surtout garder son sang-froid lorsque, comme moi, les serveurs mutualisés ont toujours été la solution.

Il faut se munir de Putty, des données transmises par l’hébergeur, puis se connecter à son serveur.

C’est maintenant que cela commence :

– changer son password : passwd root.

– faire la mise à jour : apt-get update et apt-get upgrade.

– installer un éditeur de texte : apt-get install vim-nox.

Cet éditeur a sa propre syntaxe : quelques commandes sont expliquées ici, et bien utiles.

Puis, un certain nombre de programmes sont incontournables :

– apt-get install mysql-server mysql-client, où il est demandé de confirmer le mot de passe de la bdd.

– apt-get install apache2 et redémarrer le serveur en tapant : /etc/init.d/apache2 restart.

– apt-get install phpmyadmin. Sélectionner Apache2.

Puis nous allons nous considérer comme des administrateurs « chevronnés » et répondre Non à la question de la configuration de la base de données phpmyadmin avec dbconfig-common.

– installation de l’antivirus : apt-get 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

puis : /etc/init.d/spamassassin stop et update-rc.d -f spamassassin remove.

– installation des serveurs de courrier : apt-get install postfix postfix-mysql postfix-doc mysql-client mysql-server courier-authdaemon courier-authlib-mysql courier-pop courier-pop-ssl courier-imap courier-imap-ssl libsasl2-2 libsasl2-modules libsasl2-modules-sql sasl2-bin libpam-mysql openssl courier-maildrop getmail4 rkhunter binutils sudo gamin.

Aux questions : « service Internet », le nom de son serveur et Non au SSL. Puis OK.

On continue avec des configurations de certificats : cd /etc/courier et rm -f /etc/courier/imapd.pem et rm -f /etc/courier/pop3d.pem.

vi /etc/courier/imapd.cnf.
vi /etc/courier/pop3d.cnf. En visualisant les fichiers, modifier le CN localhost par le nom du vps.ovh.net (I pour Insertion, CTRL+C puis ZZ pour sauvegarder, sortir et revenir à son root).

mkimapdcert ET mkpop3dcert  génèrent des certificats. 

Relance des services : /etc/init.d/courier-imap-ssl restart et /etc/init.d/courier-pop-ssl restart.

– apt-get install apache2 apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5 php5-common php5-gd php5-mysql php5-imap phpmyadmin php5-cli php5-cgi libapache2-mod-fcgid apache2-suexec php-pear php-auth php5-mcrypt mcrypt php5-imagick imagemagick libapache2-mod-suphp libruby libapache2-mod-ruby

– a2enmod suexec rewrite ssl actions include
– a2enmod dav_fs dav auth_digest

Puis, relance : /etc/init.d/apache2 restart 

Installation du FTP: apt-get install pure-ftpd-common pure-ftpd-mysql puis vi /etc/default/pure-ftpd-common  où l’on change le VIRTUALCHROOT de false à true. Puis, relance : /etc/init.d/pure-ftpd-mysql restart.

Installation des DNS: apt-get install bind9 dnsutils

Installation des logs et stats : apt-get install vlogger webalizer awstats geoip-database et vi /etc/cron.d/awstats en commentant toutes les lignes avec #

Installation de fail2ban: apt-get install fail2ban

Création d’un fichier vi /etc/fail2ban/jail.local 

avec ce contenu : [pure-ftpd]

enabled  = true
port     = ftp
filter   = pure-ftpd
logpath  = /var/log/syslog
maxretry = 3

[sasl]

enabled  = true
port     = smtp
filter   = sasl
logpath  = /var/log/mail.log
maxretry = 5

[courierpop3]

enabled  = true
port     = pop3
filter   = courierpop3
logpath  = /var/log/mail.log
maxretry = 5

[courierpop3s]

enabled  = true
port     = pop3s
filter   = courierpop3s
logpath  = /var/log/mail.log
maxretry = 5

[courierimap]

enabled  = true
port     = imap2
filter   = courierimap
logpath  = /var/log/mail.log
maxretry = 5

[courierimaps]

enabled  = true
port     = imaps
filter   = courierimaps
logpath  = /var/log/mail.log
maxretry = 5

Création d’un fichier : vi /etc/fail2ban/filter.d/courierpop3.conf

avec ce contenu :

# Fail2Ban configuration file
#
# $Revision: 100 $
#

[Definition]

# Option: failregex
# Notes.: regex to match the password failures messages in the logfile. The
# host must be matched by a group named « host ». The tag «  » can
# be used for standard IP/hostname matching and is only an alias for
# Values: TEXT
#
failregex = pop3d: LOGIN FAILED.*ip=\[.*:\]

# Option: ignoreregex
# Notes.: regex to ignore. If this regex matches, the line is ignored.
# Values: TEXT
#
ignoreregex=

Encore un autre : vi /etc/fail2ban/filter.d/courierimap.conf

encore du contenu :

# Fail2Ban configuration file
#
# $Revision: 100 $
#

[Definition]

# Option: failregex
# Notes.: regex to match the password failures messages in the logfile. The
# host must be matched by a group named « host ». The tag «  » can
# be used for standard IP/hostname matching and is only an alias for
# Values: TEXT
#
failregex = imapd: LOGIN FAILED.*ip=\[.*:\]

# Option: ignoreregex
# Notes.: regex to ignore. If this regex matches, the line is ignored.
# Values: TEXT
#
ignoreregex =

 

On ne se lasse pas et on crée un autre autre fichier : vi /etc/fail2ban/filter.d/courierimaps.conf 

avec un autre autre contenu :

# Fail2Ban configuration file
#
# $Revision: 100 $
#

[Definition]

# Option: failregex
# Notes.: regex to match the password failures messages in the logfile. The
# host must be matched by a group named « host ». The tag «  » can
# be used for standard IP/hostname matching and is only an alias for
# Values: TEXT
#
failregex = imapd-ssl: LOGIN FAILED.*ip=\[.*:\]

# Option: ignoreregex
# Notes.: regex to ignore. If this regex matches, the line is ignored.
# Values: TEXT
#
ignoreregex =

Enfin, on relance le service : /etc/init.d/fail2ban restart

Pour finir, on installe ISPCONFIG:

cd /tmp
wget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz
tar xfz ISPConfig-3-stable.tar.gz
cd ispconfig3_install/install/

php -q install.php

Autre lien important : http://sheebypanda.com/ispconfig-3-installation/

Se connecter à ispconfig- avec les mots de passe admin / admin