GNU/Linux >> Tutoriels Linux >  >> Linux

Procédure :configuration initiale du serveur Debian 8.2

Présentation

Ce tutoriel vous aidera dans votre configuration initiale sur Debian 8.2 afin que vous puissiez sécuriser avec succès votre serveur tout en vous donnant la tranquillité d'esprit de savoir que votre serveur est protégé.

Avec n'importe quel serveur, l'objectif principal doit toujours être la sécurité. De nombreux utilisateurs sont victimes d'infiltrations malveillantes sur leurs serveurs en raison du manque de barrières de sécurité établies depuis le début. Commençons sur le bon chemin en jetant nos bases avec sécurité.

De quoi avez-vous besoin ?

Vous avez besoin d'un serveur Debian 8.2 configuré avec une adresse IP statique. Si vous n'avez pas encore de serveur, vous pouvez visiter notre page de serveur privé virtuel et créer un nouveau serveur en moins de 30 secondes.

Préparation du serveur

Pour commencer, connectez-vous à votre Debian 8.2 via SSH ou la console VNC sur cloud.atlantic.net. Les serveurs Atlantic.Net Cloud sont configurés comme des installations minimales afin d'éviter que des packages inutiles ne soient installés et ne soient jamais utilisés. Pour cette raison, assurons-nous que votre serveur est entièrement à jour et que le service sudo est installé.

apt-get update
apt-get install sudo

Avec le serveur à jour, nous pouvons continuer le processus et sécuriser votre serveur.

Mettre à jour le mot de passe racine sur Debian 8.2

Mettre à jour le mot de passe racine car vous serez la seule personne à le savoir. Nous recommandons un minimum de 8 caractères, y compris des minuscules, des majuscules et des chiffres.

passwd

Créer un nouvel utilisateur avec les privilèges sudo sur Debian 8.2

Création d'un nouvel utilisateur avec les privilèges sudo vous permettra de gérer facilement votre serveur sans avoir à vous soucier d'apporter accidentellement des modifications indésirables. Créons user1 !

adduser user1

Remplissez les informations qui s'appliquent à l'utilisateur et confirmez les informations

[email protected]:~# adduser user1
Adding user `user1' ...
Adding new group `user1' (1000) ...
Adding new user `user1' (1000) with group `user1' ...
Creating home directory `/home/user1' ...
Copying files from `/etc/skel' ...
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
Changing the user information for user1
Enter the new value, or press ENTER for the default
 Full Name []: user1
 Room Number []:
 Work Phone []:
 Home Phone []:
 Other []:
Is the information correct? [Y/n] y

Dans Debian 8.2, en ajoutant simplement votre utilisateur au groupe sudo, vous accorderez des privilèges sudo à cet utilisateur en tapant sudo avant d'exécuter une commande. Ajoutons l'utilisateur are au groupe sudo.

adduser user1 sudo

Une fois terminé, vous pouvez utiliser la commande su - user1 pour changer l'utilisateur de root à user1. Il est important de se rappeler que vous devrez alors utiliser sudo avant d'exécuter une commande avec l'utilisateur.

Configurer l'accès SSH sur Debian 8.2

Dans les systèmes Linux, le port 22 est le port par défaut pour les connexions à distance via SSH. En changeant le port ssh, vous augmenterez la sécurité de votre serveur en empêchant les attaques par force brute et les utilisateurs indésirables d'atteindre votre serveur (j'utiliserai le port 5022 pour ce tutoriel). Ouvrez votre fichier de configuration SSH, recherchez la ligne Port et remplacez le port 22 par votre port personnalisé. Enregistrez et quittez.

sudo nano /etc/ssh/sshd_config

# What ports, IPs and protocols we listen for

Port 22 to 5022

 

Pour que votre système mette à jour les nouveaux paramètres à partir du fichier de configuration SSH, nous devons redémarrer le service sshd.

sudo systemctl restart sshd.service

SSH a maintenant été configuré pour utiliser le port 5022 et si vous essayez de vous connecter en utilisant le port 22, votre connexion échouera.

Limiter l'accès root sur Debian 8.2

Étant donné que nous avons créé un nouvel utilisateur avec des autorisations root, il n'est pas nécessaire de garder l'utilisateur root réel disponible et vulnérable via SSH sur votre serveur. Restreignons l'accès des utilisateurs root pour qu'ils soient disponibles uniquement sur le serveur local et accordons l'autorisation au nouvel utilisateur via SSH.

Ouvrez le fichier de configuration SSH, recherchez la ligne PermitRootLogin et changez-la de oui à non.

sudo nano /etc/ssh/sshd_config
PermitRootLogin no

Pour que votre système mette à jour les nouveaux paramètres dans le fichier de configuration SSH, nous devons redémarrer le service sshd.

sudo systemctl restart sshd.service

Créer une clé SSH privée sur Debian 8.2

Clés SSH privées/publiques sont d'excellentes fonctionnalités supplémentaires qui augmentent la sécurité de la méthode d'accès au serveur. Cependant, la configuration demande un peu plus d'efforts. La question est :votre serveur vaut-il la sécurité supplémentaire ? Si vous souhaitez mettre en œuvre cette fonctionnalité de sécurité et des mesures supplémentaires, vous pouvez également continuer avec les étapes suivantes, laissez-nous continuer et générer la clé SSH.

ssh-keygen

Si vous souhaitez modifier l'emplacement où la clé SSH sera enregistrée, vous pouvez le spécifier ici, sinon l'emplacement par défaut est OK. Appuyez sur Entrée lorsque vous êtes invité à répondre à la question suivante, puis entrez une phrase de passe, sauf si vous n'en voulez pas.

Enter file in which to save the key (/home/user1/.ssh/id_rsa):

Vous verrez alors les informations suivantes à l'écran.

La configuration de la clé SSH est cruciale, nous devons copier la chaîne de clé complète dans un document Word/Bloc-notes. La clé peut être visualisée à l'emplacement suivant en utilisant la commande cat.

cat ~/.ssh/id_rsa.pub

Copiez la clé SSH commençant par ssh-rsa et se terminant par [email protected] dans votre document Word/Notepad afin que nous puissions l'ajouter au fichier de configuration. Une fois la clé SSH stockée en toute sécurité, nous devons apporter d'autres modifications sur le serveur. C'est là que les privilèges sudo de votre utilisateur1 interviennent.

su - user1

Le répertoire des clés SSH nécessite des autorisations limitées que seul le propriétaire peut lire, écrire et exécuter dans le fichier.

sudo chmod 700 .ssh

Dans le répertoire SSH, un fichier contenant la clé SSH doit être ajouté, simplement à l'aide de votre éditeur (dans ce cas VI) à l'emplacement suivant :

nano .ssh/authorized_keys

Collez la clé SSH puis enregistrez et quittez en utilisant le format nano.

Enfin, nous devons limiter les privilèges du fichier authorized_keys que nous venons de créer afin que seul le propriétaire puisse lire et écrire.

chmod 600 .ssh/authorized_keys

Nous pouvons maintenant vérifier que la clé fonctionne en fermant votre session et en tapant ce qui suit dans votre console SSH [email protected] ou le nom d'hôte de vos serveurs. Cela peut être accompli avec la commande suivante :

ifconfig eth0 | grep inet | awk '{ print $2 }'

De plus, vous pouvez cliquer "ici" pour voir notre article Comment générer et utiliser des clés SSH.

Règles de base du pare-feu sur Debian 8.2

sudo apt-get install firewalld

Nous devons maintenant autoriser notre port SSH personnalisé qui a été créé précédemment afin d'accéder publiquement au serveur. En outre, plusieurs autres règles peuvent être utilisées en fonction du type de serveur que vous souhaitez déployer.

sudo firewall-cmd --permanent --add-port=5022/tcp

Si vous disposez d'un serveur Web, vous souhaiterez peut-être autoriser les règles suivantes afin que vos sites soient accessibles via Internet.

sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https

Si vous disposez d'un serveur de messagerie, vous souhaiterez peut-être autoriser les règles suivantes si vous comptez utiliser votre serveur pour les paramètres POP3 entrants. Le port 110 est le port standard et le port 995 est pour une connexion plus sécurisée utilisant SSL.

sudo firewall-cmd --permanent --add-service=pop3s

De plus, vous pouvez autoriser les règles suivantes si vous utilisez votre serveur pour les paramètres SMTP sortants.

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

Enfin, vous pouvez autoriser les règles suivantes si vous utilisez votre serveur avec des paramètres IMAP.

sudo firewall-cmd --permanent --add-service=imaps

Enregistrez votre travail et quittez.

Pour que Firewalld accepte ces paramètres, vous devez redémarrer le pare-feu.

sudo firewall-cmd --reload

Vos paramètres auront été enregistrés et vous êtes prêt à continuer en vérifiant tous les services/ports disponibles en exécutant ce qui suit :

sudo firewall-cmd --permanent --list-all

Synchronisation de l'heure NTP sur Debian 8.2

Le NTP (Network Time Protocol) est essentiellement utilisé pour synchroniser l'heure et la date des ordinateurs sur le réseau afin de rester précis et à jour. Commençons par installer le service NTP (s'il n'a pas déjà été installé) et configurons le service pour qu'il se synchronise avec leurs serveurs.

sudo apt-get install ntp

Une fois le service NTP installé, nous devons nous assurer que le service est activé.

sudo /etc/init.d/ntp start

Lorsque le service est activé, il synchronise automatiquement les informations d'heure du serveur avec le serveur NTP.

Ajouter un fichier d'échange sur Debian 8.2

Un fichier Swap est simplement une petite quantité d'espace créée sur le disque dur d'un serveur pour simuler Ram. Dans le cas où le serveur manque de mémoire, il examinera le disque dur et allégera la charge en faisant croire au système qu'il a plus de mémoire. Nous allons configurer le fichier d'échange sur le disque dur pour augmenter un peu plus les performances du serveur.

Commencez par vérifier vos ressources pour vous assurer que nous pouvons ajouter le fichier. Lorsque vous exécutez la commande suivante, vous verrez le pourcentage d'espace actuellement utilisé sur votre disque dur.

df -h

Lors de la création d'un fichier Swap, vous souhaitez généralement ajouter la moitié de votre RAM existante jusqu'à 4 Go (si vous avez 1 Go de RAM réelle, vous ajoutez un fichier de 512 Mo). Dans cette partie, je vais ajouter un fichier d'échange de 512 Mo au lecteur. La façon dont cela est calculé est de 1024 x 512 Mo =524288 taille de bloc.

sudo dd if=/dev/zero of=/swapfile bs=1024 count=524288

Maintenant que nous avons ajouté un fichier d'échange, une zone de fichier d'échange doit être créée pour continuer.

sudo mkswap /swapfile

Une fois le fichier d'échange créé et la zone de fichier d'échange ajoutée, nous pouvons continuer et ajouter des autorisations au fichier afin que seul le propriétaire puisse lire et écrire.

sudo chown root:root /swapfile
sudo chmod 600 /swapfile

Maintenant que le fichier d'échange dispose des autorisations appropriées, nous pouvons continuer et l'activer.

sudo swapon /swapfile

Vous pouvez vérifier votre fichier Swap nouvellement ajouté avec ce qui suit.

sudo swapon -s

Afin de rendre le fichier Swap toujours actif même après un redémarrage, nous devons le configurer en conséquence.

sudo nano /etc/fstab

Collez la commande suivante au bas du fichier, enregistrez votre travail et quittez.

/swapfile              swap   swap     defaults     0 0

Enfin, vérifiez si votre fichier d'échange est activé en tapant la commande suivante :

free -m

Et ensuite ?

Vous avez maintenant un serveur avec une base de sécurité solide qui vous donnera la tranquillité d'esprit en sachant que votre serveur est protégé. Vous pouvez commencer à installer tout logiciel supplémentaire en fonction de l'objectif du serveur.


Linux
  1. Comment configurer vsftpd sur Debian

  2. Comment configurer un serveur FTP avec VSFTPD sur Debian 9

  3. Comment configurer un serveur SFTP sur CentOS

  4. Comment configurer le serveur Rsyslog sur Debian 11

  5. Comment installer VSFTPD sur un serveur cloud Debian

Procédure :configuration initiale du serveur Ubuntu 15.04

Procédure :configuration initiale du serveur Fedora 21

Comment installer Apache sur Debian 8.2

Comment ajouter une adresse IP privée à un serveur Debian

Configuration initiale du serveur avec Ubuntu 18.04

Comment configurer HAProxy sur CentOS 8