Étapes recommandées supplémentaires pour les nouveaux serveurs Ubuntu 14.04

De Get Docs
Aller à :navigation, rechercher

Introduction

Après avoir défini la configuration minimale pour un nouveau serveur, certaines étapes supplémentaires sont fortement recommandées dans la plupart des cas. Dans ce guide, nous allons continuer la configuration de nos serveurs en abordant certaines procédures recommandées, mais facultatives.

Prérequis et objectifs

Avant de commencer ce guide, vous devez parcourir le guide de configuration initiale du serveur Ubuntu 14.04. Ceci est nécessaire pour configurer vos comptes d'utilisateurs, configurer l'élévation des privilèges avec sudo, et verrouillez SSH pour plus de sécurité.

Une fois que vous avez terminé le guide ci-dessus, vous pouvez continuer avec cet article. Dans ce guide, nous nous concentrerons sur la configuration de certains composants facultatifs mais recommandés. Cela impliquera de configurer notre système avec un pare-feu, une synchronisation Network Time Protocol et des fichiers d'échange.

Configuration d'un pare-feu de base

Les pare-feu fournissent un niveau de sécurité de base pour votre serveur. Ces applications sont chargées de refuser le trafic vers chaque port de votre serveur, à l'exception des ports/services que vous avez approuvés. Ubuntu est livré avec un outil appelé ufw qui peuvent être utilisés pour configurer vos politiques de pare-feu. Notre stratégie de base sera de verrouiller tout ce que nous n'avons pas de bonne raison de garder ouvert.

Avant d'activer ou de recharger notre pare-feu, nous allons créer les règles qui définissent les exceptions à notre politique. Tout d'abord, nous devons créer une exception pour les connexions SSH afin de pouvoir maintenir l'accès pour l'administration à distance.

Le démon SSH s'exécute sur le port 22 par défaut et ufw peut implémenter une règle par son nom si la valeur par défaut n'a pas été modifiée. Donc, si vous avez pas un port SSH modifié, vous pouvez activer l'exception en tapant :

sudo ufw allow ssh

Si vous avez modifié le port sur lequel le démon SSH écoute, vous devrez l'autoriser en spécifiant le numéro de port réel, ainsi que le protocole TCP :

sudo ufw allow 4444/tcp

Il s'agit de la configuration minimale du pare-feu. Il n'autorisera le trafic que sur votre port SSH et tous les autres services seront inaccessibles. Si vous prévoyez d'exécuter des services supplémentaires, vous devrez ouvrir le pare-feu sur chaque port requis.

Si vous envisagez d'exécuter un serveur Web HTTP conventionnel, vous devrez autoriser l'accès au port 80 :

sudo ufw allow 80/tcp

Si vous envisagez d'exécuter un serveur Web avec SSL/TLS activé, vous devez également autoriser le trafic vers ce port :

sudo ufw allow 443/tcp

Si vous avez besoin d'activer le courrier électronique SMTP, le port 25 devra être ouvert :

sudo ufw allow 25/tcp

Une fois que vous avez terminé d'ajouter les exceptions, vous pouvez revoir vos sélections en saisissant :

sudo ufw show added

Si tout semble bon, vous pouvez activer le pare-feu en tapant :

sudo ufw enable

Il vous sera demandé de confirmer votre sélection, alors tapez "y" si vous souhaitez continuer. Cela appliquera les exceptions que vous avez faites, bloquera tout autre trafic et configurera votre pare-feu pour qu'il démarre automatiquement au démarrage.

N'oubliez pas que vous devrez explicitement ouvrir les ports pour tous les services supplémentaires que vous pourrez configurer ultérieurement. Pour des informations plus détaillées, consultez notre article sur configuration du pare-feu ufw.

Configurer les fuseaux horaires et la synchronisation du protocole de temps réseau

L'étape suivante consiste à définir les paramètres de localisation de votre serveur et à configurer la synchronisation NTP (Network Time Protocol).

La première étape garantira que votre serveur fonctionne dans le bon fuseau horaire. La deuxième étape configurera votre système pour synchroniser son horloge système à l'heure standard maintenue par un réseau mondial de serveurs NTP. Cela aidera à éviter certains comportements incohérents pouvant résulter d'horloges désynchronisées.

Configurer les fuseaux horaires

Notre première étape consiste à définir le fuseau horaire de notre serveur. Il s'agit d'une procédure très simple qui peut être accomplie en reconfigurant le tzdata forfait:

sudo dpkg-reconfigure tzdata

Vous serez présenté avec un système de menu qui vous permet de sélectionner la région géographique de votre serveur :

Après avoir sélectionné une zone, vous aurez la possibilité de choisir le fuseau horaire spécifique qui convient à votre serveur :

Votre système sera mis à jour pour utiliser le fuseau horaire sélectionné et les résultats seront imprimés à l'écran :

Current default time zone: 'America/New_York'
Local time is now:      Mon Nov  3 17:00:11 EST 2014.
Universal Time is now:  Mon Nov  3 22:00:11 UTC 2014.

Ensuite, nous passerons à la configuration de NTP.

Configurer la synchronisation NTP

Maintenant que votre fuseau horaire est défini, nous devons configurer NTP. Cela permettra à votre ordinateur de rester synchronisé avec les autres serveurs, ce qui améliorera la prévisibilité des opérations qui dépendent de l'heure exacte.

Pour la synchronisation NTP, nous utiliserons un service appelé ntp, que nous pouvons installer à partir des dépôts par défaut d'Ubuntu :

sudo apt-get update
sudo apt-get install ntp

C'est tout ce que vous avez à faire pour configurer la synchronisation NTP sur Ubuntu. Le démon démarrera automatiquement à chaque démarrage et ajustera en permanence l'heure du système pour être en ligne avec les serveurs NTP mondiaux tout au long de la journée.

Cliquez ici si vous souhaitez en savoir plus sur les serveurs NTP.

Créer un fichier d'échange

L'ajout de "swap" à un serveur Linux permet au système de déplacer les informations les moins fréquemment consultées d'un programme en cours d'exécution de la RAM vers un emplacement sur le disque. L'accès aux données stockées sur le disque est beaucoup plus lent que l'accès à la RAM, mais le fait d'avoir un swap disponible peut souvent faire la différence entre le fait que votre application reste active et plante. Ceci est particulièrement utile si vous envisagez d'héberger des bases de données sur votre système.

Noter

Bien que l'échange soit généralement recommandé pour les systèmes utilisant des disques durs rotatifs traditionnels, l'utilisation de l'échange avec des SSD peut entraîner des problèmes de dégradation du matériel au fil du temps. En raison de cette considération, nous ne recommandons pas d'activer l'échange sur DigitalOcean ou tout autre fournisseur qui utilise le stockage SSD. Cela peut avoir un impact sur la fiabilité du matériel sous-jacent pour vous et vos voisins.

Si vous avez besoin d'améliorer les performances de votre serveur, nous vous recommandons de mettre à niveau votre Droplet. Cela conduira à de meilleurs résultats en général et réduira la probabilité de contribuer à des problèmes matériels pouvant affecter votre service.


Les conseils sur la meilleure taille pour un espace d'échange varient considérablement en fonction de la source consultée. Généralement, une quantité égale ou double de la quantité de RAM sur votre système est un bon point de départ.

Allouez l'espace que vous souhaitez utiliser pour votre fichier d'échange à l'aide de la fallocate utilitaire. Par exemple, si nous avons besoin d'un fichier de 4 gigaoctets, nous pouvons créer un fichier d'échange situé à /swapfile en tappant:

sudo fallocate -l 4G /swapfile

Après avoir créé le fichier, nous devons restreindre l'accès au fichier afin que les autres utilisateurs ou processus ne puissent pas voir ce qui y est écrit :

sudo chmod 600 /swapfile

Nous avons maintenant un fichier avec les autorisations correctes. Pour indiquer à notre système de formater le fichier pour l'échange, nous pouvons taper :

sudo mkswap /swapfile

Maintenant, dites au système qu'il peut utiliser le fichier d'échange en tapant :

sudo swapon /swapfile

Notre système utilise le fichier d'échange pour cette session, mais nous devons modifier un fichier système pour que notre serveur le fasse automatiquement au démarrage. Vous pouvez le faire en tapant :

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

Avec cet ajout, votre système devrait utiliser votre fichier d'échange automatiquement à chaque démarrage.

Où aller en partant d'ici?

Vous avez maintenant une configuration de départ très décente pour votre serveur Linux. De là, il y a pas mal d'endroits où vous pouvez aller. Tout d'abord, vous souhaiterez peut-être prendre un instantané de votre serveur dans sa configuration actuelle.

Prendre un instantané de votre configuration actuelle

Si vous êtes satisfait de votre configuration et que vous souhaitez l'utiliser comme base pour de futures installations, vous pouvez prendre un instantané de votre serveur via le panneau de configuration DigitalOcean. Depuis octobre 2016, les instantanés coûtent 0,05 USD par gigaoctet par mois, en fonction de la quantité d'espace utilisé dans le système de fichiers.

Pour préparer l'instantané, arrêtez votre serveur à partir de la ligne de commande. Bien qu'il soit possible de prendre un instantané d'un système en cours d'exécution, la mise hors tension offre de meilleures garanties de cohérence du système de fichiers :

sudo poweroff

Désormais, dans le panneau de configuration de DigitalOcean, vous pouvez prendre un instantané en visitant l'onglet "Instantanés" de votre serveur :

Après avoir pris votre instantané, vous pourrez utiliser cette image comme base pour de futures installations en sélectionnant l'instantané dans l'onglet « Mes instantanés » pour les images pendant le processus de création :

Ressources supplémentaires et étapes suivantes

À partir de là, votre chemin dépend entièrement de ce que vous souhaitez faire avec votre serveur. La liste des guides ci-dessous n'est en aucun cas exhaustive, mais représente certaines des configurations les plus courantes vers lesquelles les utilisateurs se tournent ensuite :

Conclusion

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