Serveur · 5 min read · Nov 15, 2025
Le Serveur Parfait - CentOS 6.1 x86_64 Avec nginx [ISPConfig 3] - Page 6
18 Installer PureFTPd
PureFTPd peut être installé avec la commande suivante :
yum install pure-ftpdEnsuite, créez les liens de démarrage système et démarrez PureFTPd :
chkconfig –levels 235 pure-ftpd on
/etc/init.d/pure-ftpd start
Maintenant, nous configurons PureFTPd pour autoriser les sessions FTP et TLS. FTP est un protocole très peu sécurisé car tous les mots de passe et toutes les données sont transférés en texte clair. En utilisant TLS, toute la communication peut être chiffrée, rendant ainsi FTP beaucoup plus sécurisé.
OpenSSL est nécessaire pour TLS ; pour installer OpenSSL, il suffit d’exécuter :
yum install opensslOuvrez /etc/pure-ftpd/pure-ftpd.conf…
vi /etc/pure-ftpd/pure-ftpd.confSi vous souhaitez autoriser les sessions FTP et TLS, définissez TLS à 1 :
| [...] # Cette option peut accepter trois valeurs : # 0 : désactiver la couche de chiffrement SSL/TLS (par défaut). # 1 : accepter à la fois les sessions traditionnelles et chiffrées. # 2 : refuser les connexions qui n'utilisent pas les mécanismes de sécurité SSL/TLS, # y compris les sessions anonymes. # Ne _décommentez_ pas cela à la légère. Assurez-vous que : # 1) Votre serveur a été compilé avec le support SSL/TLS (--with-tls), # 2) Un certificat valide est en place, # 3) Seuls les clients compatibles pourront se connecter. TLS 1 [...] |
Pour utiliser TLS, nous devons créer un certificat SSL. Je le crée dans /etc/ssl/private/, donc je crée d’abord ce répertoire :
mkdir -p /etc/ssl/private/Ensuite, nous pouvons générer le certificat SSL comme suit :
openssl req -x509 -nodes -days 7300 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem Nom du pays (code à 2 lettres) [XX] : <– Entrez le nom de votre pays (par exemple, “FR”).
Nom de l’État ou de la province (nom complet) [] : <– Entrez le nom de votre État ou province.
Nom de la localité (par exemple, ville) [Default City] : <– Entrez votre ville.
Nom de l’organisation (par exemple, entreprise) [Default Company Ltd] : <– Entrez le nom de votre organisation (par exemple, le nom de votre entreprise).
Nom de l’unité organisationnelle (par exemple, section) [] : <– Entrez le nom de votre unité organisationnelle (par exemple, “Service informatique”).
Nom commun (par exemple, votre nom ou le nom d’hôte de votre serveur) [] : <– Entrez le nom de domaine entièrement qualifié du système (par exemple, “serveur1.exemple.com”).
Adresse e-mail [] : <– Entrez votre adresse e-mail.
Changez les permissions du certificat SSL :
chmod 600 /etc/ssl/private/pure-ftpd.pemEnfin, redémarrez PureFTPd :
/etc/init.d/pure-ftpd restartC’est tout. Vous pouvez maintenant essayer de vous connecter en utilisant votre client FTP ; cependant, vous devez configurer votre client FTP pour utiliser TLS.
19 Installer BIND
Nous pouvons installer BIND comme suit :
yum install bind bind-utilsEnsuite, ouvrez /etc/sysconfig/named…
vi /etc/sysconfig/named… et assurez-vous que la ligne ROOTDIR=/var/named/chroot est commentée :
| # Options du processus BIND nommé # ~~~~~~~~~~~~~~~~~~~~~~~~~~ # Actuellement, vous pouvez utiliser les options suivantes : # # ROOTDIR="/var/named/chroot" -- exécutera named dans un environnement chroot. # vous devez configurer l'environnement chroot # (installer le package bind-chroot) avant # de faire cela. # REMARQUE : # Ces répertoires sont automatiquement montés dans chroot s'ils sont # vides dans le répertoire ROOTDIR. Cela simplifiera la maintenance de votre # environnement chroot. # - /var/named # - /etc/pki/dnssec-keys # - /etc/named # - /usr/lib64/bind ou /usr/lib/bind (dépendant de l'architecture) # # Ces fichiers sont également montés si le fichier cible n'existe pas dans # chroot. # - /etc/named.conf # - /etc/rndc.conf # - /etc/rndc.key # - /etc/named.rfc1912.zones # - /etc/named.dnssec.keys # - /etc/named.iscdlv.key # # N'oubliez pas d'ajouter "$AddUnixListenSocket /var/named/chroot/dev/log" # à votre fichier /etc/rsyslog.conf. Sinon, votre journalisation devient # cassée lorsque le démon rsyslogd est redémarré (en raison d'une mise à jour, par exemple). # # OPTIONS="whatever" -- Ces options supplémentaires seront passées à named # au démarrage. N'ajoutez pas -t ici, utilisez ROOTDIR à la place. # # KEYTAB_FILE="/dir/file" -- Spécifiez le fichier de clé de service nommé (pour GSS-TSIG) # # DISABLE_ZONE_CHECKING -- Par défaut, le script d'initialisation appelle l'utilitaire named-checkzone # pour chaque zone afin de s'assurer que toutes les zones sont # valides avant que named ne démarre. Si vous définissez cette option # sur 'yes', alors le script d'initialisation ne réalise pas ces # vérifications. |
Faites une sauvegarde du fichier /etc/named.conf existant et créez un nouveau fichier comme suit :
cp /etc/named.conf /etc/named.conf_bak
cat /dev/null > /etc/named.conf
vi /etc/named.conf
| // named.conf // // Fournit par le package bind de Red Hat pour configurer le serveur DNS ISC BIND nommé(8) // comme un serveur de noms uniquement en cache (comme un résolveur DNS localhost uniquement). // // Voir /usr/share/doc/bind*/sample/ pour des exemples de fichiers de configuration nommés. options { listen-on port 53 { any; }; listen-on-v6 port 53 { any; }; directory "/var/named"; dump-file "/var/named/data/cache_dump.db"; statistics-file "/var/named/data/named_stats.txt"; memstatistics-file "/var/named/data/named_mem_stats.txt"; allow-query { any; }; recursion no; allow-recursion { none; }; }; logging { channel default_debug { file "data/named.run"; severity dynamic; }; }; zone "." IN { type hint; file "named.ca"; }; include "/etc/named.conf.local"; |
Créez le fichier /etc/named.conf.local qui est inclus à la fin de /etc/named.conf ( /etc/named.conf.local sera plus tard peuplé par ISPConfig si vous créez des zones DNS dans ISPConfig) :
touch /etc/named.conf.localEnsuite, nous créons les liens de démarrage et démarrons BIND :
chkconfig –levels 235 named on
/etc/init.d/named start
20 Installer Vlogger, Webalizer et AWStats
Vlogger, webalizer et AWStats peuvent être installés comme suit :
yum install webalizer awstats perl-DateTime-Format-HTTP perl-DateTime-Format-Buildercd /tmp
wget http://n0rp.chemlab.org/vlogger/vlogger-1.3.tar.gz
tar xvfz vlogger-1.3.tar.gz
mv vlogger-1.3/vlogger /usr/sbin/
rm -rf vlogger*
21 Installer Jailkit
Jailkit est nécessaire uniquement si vous souhaitez chrooter les utilisateurs SSH. Il peut être installé comme suit (important : Jailkit doit être installé avant ISPConfig - il ne peut pas être installé après !) :
cd /tmp
wget http://olivier.sessink.nl/jailkit/jailkit-2.14.tar.gz
tar xvfz jailkit-2.14.tar.gz
cd jailkit-2.14
./configure
make
make install
cd ..
rm -rf jailkit-2.14*
22 Installer fail2ban
C’est optionnel mais recommandé, car le moniteur ISPConfig essaie d’afficher le journal :
yum install fail2banNous devons configurer fail2ban pour journaliser dans le fichier journal /var/log/fail2ban.log car c’est le fichier journal qui est surveillé par le module de surveillance ISPConfig. Ouvrez /etc/fail2ban/fail2ban.conf…
vi /etc/fail2ban/fail2ban.conf… et commentez la ligne logtarget = SYSLOG et ajoutez logtarget = /var/log/fail2ban.log :
| [...] # Option : logtarget # Remarques : Définissez la cible de journalisation. Cela pourrait être un fichier, SYSLOG, STDERR ou STDOUT. # Une seule cible de journalisation peut être spécifiée. # Valeurs : STDOUT STDERR SYSLOG fichier Par défaut : /var/log/fail2ban.log # #logtarget = SYSLOG logtarget = /var/log/fail2ban.log [...] |
Ensuite, créez les liens de démarrage système pour fail2ban et démarrez-le :
chkconfig –levels 235 fail2ban on
/etc/init.d/fail2ban start
23 Installer rkhunter
rkhunter peut être installé comme suit :
yum install rkhunterRecevez de nouveaux articles dans votre boîte de réception.
Aucun spam. Désabonnez-vous à tout moment.