Étapes supplémentaires recommandées pour les nouveaux serveurs CentOS 7.

Introduction

Après avoir configuré le minimum nécessaire pour un nouveau serveur, il y a quelques étapes supplémentaires fortement recommandées dans la plupart des cas. Dans ce guide, nous poursuivrons la configuration de nos serveurs en abordant quelques procédures recommandées mais optionnelles.

Prérequis et Objectifs

Avant de commencer ce guide, vous devriez suivre le guide Configuration initiale du serveur CentOS 7. Il est nécessaire de le faire afin de configurer vos comptes utilisateurs, de configurer l’élévation des privilèges avec sudo, et de verrouiller SSH pour des raisons de sécurité.

Une fois que vous aurez terminé le guide ci-dessus, vous pourrez continuer avec cet article. Dans ce guide, nous nous concentrerons sur la configuration de certains composants optionnels mais recommandés. Cela impliquera la mise en place d’un pare-feu et d’un fichier d’échange, ainsi que la configuration de la synchronisation du Protocole de Temps Réseau (NTP).

Configuration d’un Pare-feu de Base

La sécurité des serveurs nécessite une certaine sécurité sur l’Internet. Les pare-feux fournissent un niveau de sécurité basique pour votre serveur. Ces applications sont responsables de refuser le trafic à toutes les ports de votre serveur avec des exceptions pour les ports/services que vous avez approuvés. CentOS est livré avec un pare-feu appelé firewalld. Un outil appelé firewall-cmd peut être utilisé pour configurer les politiques de pare-feu. Notre stratégie de base sera de fermer tout ce qui n’est pas nécessaire et d’autoriser les exceptions pour les ports/services que nous avons approuvés. Installez d’abord firewalld :

  1. sudo yum install firewalld

Le service firewalld est capable de faire des modifications sans interrompre les connexions actuelles, donc vous pouvez le mettre en marche avant de créer nos exceptions.

  1. sudo systemctl start firewalld

Maintenant que le service est démarré et en fonctionnement, vous pouvez utiliser l’utilitaire firewall-cmd pour obtenir et modifier des informations relatives à la politique du pare-feu. L’application firewalld utilise le concept de « zones » pour étiqueter la confiance des autres hôtes sur un réseau. Cela nous permet de définir différentes règles en fonction de la confiance que nous accordons au réseau.

Dans cette guide, nous ne modifions que les politiques de la zone par défaut. Quand nous reloadons notre pare-feu, cela sera la zone appliquée aux interfaces. Nous devons commencer par ajouter des exceptions à notre pare-feu pour les services approbés. Le plus essentiel de ces exceptions est SSH, car nous avons besoin de maintenir l’accès administratif distant au serveur.

Si vous n’avez pas modifié le port sur lequel le démon SSH est en cours d’exécution, vous pouvez enregistrer le service par nom en tapant:

  1. sudo firewall-cmd --permanent --add-service=ssh

Si vous avez modifié le port SSH pour votre serveur, vous devrez spécifier explicitement le nouveau port. Vous devez également inclure le protocole que le service utilise. Tapez seulement les lignes suivantes si votre serveur SSH a déjà été réinitialisé à utiliser le nouveau port :

  1. sudo firewall-cmd --permanent --remove-service=ssh
  2. sudo firewall-cmd --permanent --add-port=4444/tcp

Ceci est le minimum nécessaire pour maintenir l’accès administratif au serveur. Si vous souhaitez exécuter des services supplémentaires, vous devez ouvrir le pare-feu pour ceux-ci aussi.

Si vous prévoyez d’utiliser un serveur HTTP conventionnel, vous devez autoriser la trafic pour http.

  1. sudo firewall-cmd --permanent --add-service=http

Si vous voulez utiliser un serveur Web avec SSL/TLS, vous devez autoriser également le trafic pour https.

  1. sudo firewall-cmd --permanent --add-service=https

Si vous avez besoin d’un serveur SMTP en ligne, tapez:

  1. sudo firewall-cmd --permanent --add-service=smtp

Pour voir tous les services additionnels qui peuvent être autorisés par nom, tapez:

  1. sudo firewall-cmd --get-services

Quand vous avez terminé, vous pouvez voir la liste des exceptions qui seront implémentées en tapant:

  1. sudo firewall-cmd --permanent --list-all

Quand vous êtes prêt, vous pouvez recharger le pare-feu:

  1. sudo firewall-cmd --reload

Si tout fonctionne comme prévu après avoir testé, vous devez assurer que le pare-feu sera démarré à l’boot:

  1. sudo systemctl enable firewalld

Rappelons-vous que vous devrez explicitement ouvrir le pare-feu (avec des services ou des ports) pour tous les services supplémentaires que vous configurerez plus tard.

Configurer les fuseaux horaires et la synchronisation du protocole Temps réel

Le prochain pas consiste à ajuster les paramètres de localisation pour votre serveur et configurer la synchronisation du protocole de temps réel (NTP).

Le premier étape consiste à assurer que votre serveur fonctionne sous le fuseau horaire correct. La seconde étape consiste en configuration du système pour synchroniser son horloge système avec le fuseau horaire standard maintenu par un réseau mondial d’ordinateurs NTP. Cela aidera à prévenir certaines anomalies qui peuvent arriver des horloges non synchro.

Configurer les fuseaux horaires

Notre première étape est de définir le fuseau horaire de votre serveur. Cela peut être accompli en utilisant la commande timedatectl.

Pour commencer, regardez les fuseaux horaires disponibles en tapant:

  1. sudo timedatectl list-timezones

Ceci vous donnera une liste des fuseaux horaires disponibles pour votre serveur. Quand vous trouvez l’heure de votre région/fuseau horaire, vous pouvez le définir en tapant:

  1. sudo timedatectl set-timezone region/timezone

Par exemple, pour définir le fuseau horaire de l’est des États-Unis, vous pouvez taper:

  1. sudo timedatectl set-timezone America/New_York

Votre système sera mis à jour pour utiliser le fuseau horaire sélectionné. Vous pouvez confirmer cela en tapant:

  1. sudo timedatectl

Configurer la synchronisation NTP

Maintenant que vous avez défini votre fuseau horaire, nous devons configurer NTP. Cela permet à votre ordinateur de rester en synchro avec d’autres serveurs, ce qui conduit à plus de prédétermination dans les opérations qui dépendent du bon fonctionnement du temps.

Pour la synchronisation NTP, nous utiliserons le service appelé ntp, qui est disponible dans les répertoires par défaut de CentOS:

  1. sudo yum install ntp

Après, vous devez lancer le service pour cette séance. Vous devez également activer le service pour que cela se déclenche automatiquement chaque fois que le serveur se lance:

  1. sudo systemctl start ntpd
  2. sudo systemctl enable ntpd

Votre serveur maintient maintenant automatiquement son horloge système en cohérence avec les serveurs mondiaux.

Créer un Fichier d’Échange

Ajouter une « swappage » à un serveur Linux permet au système de déplacer les informations moins fréquemment accédées d’une application en cours de fonctionnement vers un emplacement sur disque. Accéder aux données stockées sur le disque est beaucoup plus lent que sur la RAM, mais disposer d’un espace d’échange peut souvent être la différence entre que votre application survive et qu’elle crash. Cela est particulièrement utile si vous planifiez d’héberger des bases de données sur votre système.

La taille idéale d’un espace d’échange varie considérablement selon les sources consultées. En général, une quantité égale ou double de la mémoire RAM de votre système est un bon point de départ.

Allouez l’espace que vous voulez utiliser pour votre fichier d’échange en utilisant l’utilitaire fallocate. Par exemple, si nous avons besoin d’un fichier de 4 Go, nous pouvons créer un fichier d’échange situé à /swapfile en tapant:

  1. sudo fallocate -l 4G /swapfile

Après avoir créé le fichier, nous devons restreindre l’accès au fichier pour que d’autres utilisateurs ou processus ne puissent pas voir ce qui est écrit là-dedans :

  1. sudo chmod 600 /swapfile

Nous avons maintenant un fichier avec les permissions correctes. Pour informer notre système de formater le fichier pour la swap, vous pouvez taper :

  1. sudo mkswap /swapfile

Maintenant, indiquez à votre système qu’il peut utiliser le fichier de swap en tapant :

  1. sudo swapon /swapfile

Notre système utilise maintenant le fichier de swap pour cette séquence, mais nous devons modifier un fichier du système pour que notre serveur effectue cela automatiquement à chaque démarrage. Vous pouvez faire ceci en tapant :

  1. sudo sh -c 'echo "/swapfile none swap sw 0 0" >> /etc/fstab'

Avec cette modification, votre système devrait utiliser votre fichier de swap automatiquement à chaque démarrage.

Où aller après cela ?

Vous avez maintenant une très bonne installation de début pour votre serveur Linux. De là, il y a beaucoup de places où aller. Premièrement, vous pouvez souhaiter effectuer une instantanée de votre configuration actuelle.

Faire une Instantanée de votre Configuration Actuelle

Si vous êtes satisfait de votre configuration et voulez utiliser cela comme base pour des installations futures, vous pouvez prendre une instantanée de votre serveur par le panneau de contrôle DigitalOcean. À partir d’octobre 2016, les instantanées coûtent $0,05 par giga-octet par mois selon la quantité utilisée de l’espace dans le système de fichiers.

Pour effectuer cela, vous devez arrêter votre serveur en ligne de commande. Bien que il soit possible de créer une instantanéité d’une machine en ligne, arrêter le serveur assure que les fichiers sur le disque sont tous dans un état cohérent :

  1. sudo poweroff

Maintenant, dans le panneau de contrôle de DigitalOcean, vous pouvez créer une instantanéité en visitant la rubrique « Instantanéités » de votre serveur :

Après avoir pris votre instantanéité, vous pourrez utiliser cette image comme base pour des installations futures en sélectionnant l’instantanéité depuis la rubrique « Mes instantanéités » lors de la création du processus :

Ressources supplémentaires et prochains étapes

De là, votre chemin dépend entièrement de ce que vous voulez faire avec votre serveur. La liste de guides ci-dessous n’est pas exhaustive, mais représente certaines des configurations plus communes que les utilisateurs souhaitent ensuite :

Conclusion

À ce stade, vous devriez savoir comment configurer une solide base pour vos nouveaux serveurs. J’espère que vous avez également une bonne idée pour les prochaines étapes. N’hésitez pas à explorer le site pour trouver d’autres idées que vous pouvez mettre en œuvre sur votre serveur.

Source:
https://www.digitalocean.com/community/tutorials/additional-recommended-steps-for-new-centos-7-servers