IPSCONFIG -Gerez facilement votre serveur WEB / MAIL

 

Fonctionnalités

ISPConfig vous permet de gérer l’hébergement de votre serveur dédié à l’aide d’une interface web.

ispconfig_index_screenshot

Utilisateurs

3 différents niveaux d’utilisateurs existent

  • Administrateur
  • Revendeur
  • Client

L’administrateur a tous les droits, le revendeur peut créer de nouveaux clients.

Les outils utilisés

  • HTTP: Apache2 and nginx
  • SMTP: Postfix
  • POP3/IMAP: Courier et Dovecot (1.2.x)
  • FTP: PureFTPd
  • DNS: BIND et MyDNS
  • Base de donnée: MySQL
  • Statistiques: Webalizer et AWStats
  • Virtualization: OpenVZ

Les services gérés

Sites web
  • Domaines des Virtual Host
  • SSL, CGI, SSI, Ruby, Python
  • PHP sous différents modes mod_php, FCGI, CGI et SuPHP
  • Différentes instances de PHP lancé par site web
  • Re-écriture, alias, redirections.
Utilisateurs FTP
Bases de données MySQL
Utilisateurs Shell (chrooté ou non)
Mails
  • SMTP
  • POP3, IMAP, POP3s, IMAP
  • Boites mails
  • Alias mail
  • Filtres de spam et virus
  • Les listes blanches / noires
  • La réponse automatique
  • La collecte de mail avec fetchmail
  • Listes de diffusion avec mailman
DNS
  • Un DNS wizzard pour créer des zones facilement
  • Réglage des zones et des enregistrements
  • Import depuis des fichiers bind
  • Support des enregistrements de type : A, AAAA, ALIAS, CNAME, HINFO, MX, NS, PTR, RP, SRV, TXT
  • Gestion des DNS Master/Slave
Virtualisation (à travers OpenVZ)
Parefeu
Statistiques avec Webalizer et AWStat
Quotas et limites
  • D’espace disque
  • de boite mail
  • De traffic

ISPConfig supporte beaucoup de langage et fonctionne sur la plupart des distributions Linux.
Je vais détailler ici la procédure d’installation et configuration sur une fraiche Debian Squeeze 6.

Mise a jour, synchronisation de l’heure et hostname

On fait les mise à jour :

  • apt-get update ; apt-get dist-upgrade

On fixe le nom de l’hôte

  • echo sheebypanda.com > /etc/hostname
  • /etc/init.d/hostname.sh start

On vérifie :

  • hostname -f

On synchronise l’horloge système :

  • apt-get install ntp ntpdate

Installation des services mails

Aller hop, cul-sec :

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

Il vous sera alors demandé de répondre à certaines questions :

  • Type général de configuration mail: Internet Site
  • Domaine des mails système: sheebypanda.com
  • Nouveau mot de passe pour l’utilisateur « root » MySQL: motdepasse
  • Créer des répertoire pour l’administration web ?: Non
  • Certificat SSL requis : Ok

Pendant l’installation, les certificats SSL pour IMAP et POP3 sont créés avec le domaine localhost. Pour changer cela, supprimer les 2 fichiers suivants :

  • rm -f /etc/courier/imapd.pem /etc/courier/pop3d.pem

et modifier les fichiers suivants :

  • vi /etc/courier/imapd.cnf
  • vi /etc/courier/pop3d.cnf

Puis dans chacun de ces fichiers, remplacer la ligne CN par votre domaine comme ci-dessous :

  • [...]
  • CN=sheebypanda.com
  • [...]

Puis recréer les certificats :

  • mkimapdcert
  • mkpop3dcert

On redémarer courier-pop-sll et courier-imap-ssl

  • /etc/init.d/courier-imap-ssl restart
  • /etc/init.d/courier-pop-ssl restart

Installation des anti-spams :

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

La configuration d’ISPConfig utilise amavisd qui charge SpamAssassin en interne, donc on peut arrêter SpamAssassin pour libérer un peu de RAM :

  • /etc/init.d/spamassassin stop
  • update-rc.d -f spamassassin remove

Installation d’apache et ses composants

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

Il vous sera alors posé les questions suivantes :

  • Serveur web à configurer automatiquement : apache2
  • Configurer la base de donnée pour phpmyadmin avec dbconfig-common ? : Non

On autorise les nouveaux modules d’apache2 :

  • a2enmod suexec rewrite ssl actions include

Autorisez aussi ces deux derniers pour utiliser WebDav :

  • a2enmod dav_fs dav auth_digest

Puis redémarrez apache :

  • /etc/init.d/apache2 restart

Installation du FTP et des quotas :

apt-get install pure-ftpd-common pure-ftpd-mysql quota quotatool

Modifier le fichier suivant :

  • vi /etc/default/pure-ftpd-common

Puis vérifier que vous avez la même chose pour les deux lignes suivantes :

  • [...]
  • STANDALONE_OR_INETD=standalone
  • [...]
  • VIRTUALCHROOT=true
  • [...]

Pour que la partition accepte les quotas, éditer le fstab :

  • vi /etc/fstab

et ajouter « ,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0″ aux options de la partition / comme ci-dessous :

  • #
  • proc /proc proc defaults 0 0
  • # / was on /dev/sda1 during installation
  • UUID=92bceda2-5ae4-4e3a-8748-b14da48fb297 / ext3 errors=remount-ro,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 0 1

puis lancer :

  • mount -o remount /
  • quotacheck -avugm
  • quotaon -avug

Installation de fail2ban

  • apt-get install fail2ban

puis autoriser le blocage des services que vous souhaitez sur le fichier.

  • vi /etc/fail2ban/jail.local

Enfin, redémarrer fail2ban

  • /etc/init.d/fail2ban restart

Installation d’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

Il vous sera alors demandé :

  • Select language (en,de) [en]:ENTER
  • Installation mode (standard,expert) [standard]: ENTER
  • Full qualified hostname (FQDN) of the server, eg server1.domain.tld [server1.example.com]: ENTER
  • MySQL server hostname [localhost]: ENTER
  • MySQL root username [root]: ENTER
  • MySQL root password []: PASSWORD
  • MySQL database to create [dbispconfig]: ENTER
  • MySQL charset [utf8]: ENTER
  • Country Name (2 letter code) [AU]: ENTER
  • State or Province Name (full name) [Some-State]: ENTER
  • Locality Name (eg, city) []: ENTER
  • Organization Name (eg, company) [Internet Widgits Pty Ltd]: ENTER
  • Organizational Unit Name (eg, section) []: ENTER
  • Common Name (eg, YOUR name) []: ENTER
  • Email Address []: ENTER
  • ISPConfig Port [8080]:ENTER

Après cela, vous pouvez accéder à ISPConfig à l’adresse http://example.com:8080/
L’identifiant et mot de passe par défaut sont admin / admin

 

 

Source: http://sheebypanda.com/ispconfig-3-installation/

7 Commentaires

  • Alain
    18 novembre 2013 - 11 h 35 min | Permalien

    Pour ce genre de chose, je préférerais que l’article soit signé ?

  • 18 novembre 2013 - 11 h 51 min | Permalien

    Pourquoi?

  • charlynux
    22 novembre 2013 - 22 h 46 min | Permalien

    Oui c vrai je veut peut être garder l‘anonymat …

  • 22 novembre 2013 - 23 h 12 min | Permalien

    Je trouve ton article très bien. Perso je m’en fou si tu signe ou pas tes articles. C’est le contenu qui m’intéresse. En tout cas bravo pour le travail et merci pour le partage. Je ne connaissais pas ipsconfig. Il ma l’air d’être sympa.

  • 16 avril 2014 - 15 h 50 min | Permalien

    Sauf que ce tutoriel, c’est MOI qui l’ai rédigé.
    Il n’y a aucun mal à le copier, mes tutos sont sous créative common. Mais vous devez conserver le lien de paternité, en mentionnant le nom de l’auteur original.

    Vous avez fait un banal copier coller sans rajouter une seule phrase, sans l’adapter…
    (on peut lire mon pseudo dans les lignes de commande…)

    Merci de mettre un lien vers mon article.

  • 16 avril 2014 - 15 h 52 min | Permalien
  • charlynux
    charlynux
    22 avril 2014 - 18 h 28 min | Permalien

    oups
    oui c’est vrai je n’ai pas mis de lien pour la source désoler.

    il est vrai que j’ai fait un copier coller pour ce tuto mais c’est parce que il n’y a rien a modifier il est très bien fait.

    comme j’ai rien modifier (et tu la dit toi même ) on vois clairement ton pseudo dans ce tuto.
    mais je rajoute de suite le lien dans l’article.

  • Laisser un commentaire

    Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

    Vous pouvez utiliser ces balises et attributs HTML : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>