GNU/Linux >> Tutoriels Linux >  >> Linux

Procédure :configuration initiale du serveur Ubuntu 15.04

Présentation

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 posant nos fondations avec sécurité. Ce tutoriel vous aidera dans votre configuration initiale sur Ubuntu 15.04 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é.

De quoi avez-vous besoin ?

Vous avez besoin d'un serveur Ubuntu 15.04 configuré avec une adresse IP statique. Si vous n'avez pas encore de serveur, vous pouvez visiter notre page d'hébergement VPS leader du secteur et créer un nouveau serveur en moins de 30 secondes.

Préparation du serveur

Pour commencer, connectez-vous à votre serveur Ubuntu 15.04 via SSH ou la console VNC située ici. Les serveurs Atlantic.Net Cloud sont configurés comme des installations minimales pour éviter que des packages inutiles ne soient installés et ne soient jamais utilisés. Si certains packages logiciels que vous avez l'habitude d'utiliser ne sont pas installés par défaut, n'hésitez pas à les installer si nécessaire.

Assurons-nous que votre serveur est entièrement à jour.

Mettre à jour le mot de passe racine d'Ubuntu 15.04

Tapez la commande suivante pour activer votre demande et suivez les instructions à l'écran pour mettre à jour/confirmer votre mot de passe root :

passwd

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

Après avoir mis à jour votre mot de passe avec succès, il est recommandé de créer un nouvel utilisateur avec les autorisations sudo/root. Étant donné que l'utilisateur administrateur standard de nombreux systèmes d'exploitation Linux comme Ubuntu 15.04 est "root", nous allons créer un nouvel utilisateur administrateur qui sera utilisé pour les tâches d'administration quotidiennes. La création d'un nouvel utilisateur avec des autorisations root augmentera la sécurité de l'accès à votre serveur. Les personnes qui cherchent à cibler votre système cibleront l'utilisateur root car il est connu pour être le compte administrateur par défaut. En créant un nouvel utilisateur avec des autorisations sudo/root et en désactivant l'utilisateur root, vous augmentez la sécurité en utilisant un utilisateur qui n'est pas encore connu publiquement.

Tapez la commande suivante pour créer votre nouvel utilisateur en remplaçant "user1" par votre nom d'utilisateur et confirmez.

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

Créez un mot de passe pour cet utilisateur en saisissant la commande suivante pour activer votre demande et en suivant les instructions à l'écran pour mettre à jour/confirmer votre mot de passe "user1" :

passwd user1

Une fois que vous avez créé un nouvel utilisateur et créé le mot de passe pour cet utilisateur, il est temps d'ajouter l'utilisateur au groupe sudo wheel. Dans Ubuntu 15.04, une fois que vous les ajoutez au groupe sudo wheel, les autorisations sudo/root leur sont automatiquement attribuées. Exécutez la commande suivante pour ajouter l'utilisateur au groupe sudo wheel.

adduser user1 sudo

Enfin, lorsque vous avez créé l'utilisateur avec les autorisations sudo/root, vous pouvez quitter votre session et vous reconnecter avec votre "user1" pour vérifier les modifications apportées. Alternativement, vous pouvez exécuter la commande suivante et basculer les utilisateurs de root vers "user1", qui vous demandera le mot de passe de cet utilisateur. Il est important de se rappeler que vous devrez utiliser sudo avant d'exécuter une commande avec l'utilisateur.

su - user1

Configurer l'accès SSH

Le port 22 est le port par défaut pour les connexions à distance via SSH dans les systèmes Linux. 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 en utilisant le port par défaut. Pour ce didacticiel, utilisez le port 5022 comme exemple.

Ouvrez votre fichier de configuration SSH, recherchez la ligne Port, supprimez le # et remplacez le numéro 22 par votre port personnalisé. Enregistrez et quittez.

sudo nano /etc/ssh/sshd_config
# What ports, IPs and protocols we listen for
Port 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. Cependant, ne quittez pas votre session car nous devons d'abord configurer le port personnalisé sur la partie de configuration des pare-feu, que nous configurerons dans les étapes à venir.

Limiter l'accès racine

Puisque nous avons créé un nouvel utilisateur avec des autorisations root et créé un port ssh personnalisé, 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 de l'utilisateur root au serveur local et accordons l'autorisation au nouvel utilisateur uniquement via SSH.

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

sudo nano /etc/ssh/sshd_config
#PermitRootLogin yes
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

Remarque :L'utilisateur root sera désormais désactivé pour effectuer ces modifications. Vous devez donc vous connecter à votre serveur avec l'« utilisateur 1 » que vous avez créé. Cependant, ne quittez pas votre session. Nous devons configurer le port personnalisé sur le pare-feu dans les prochaines étapes.

Créer une clé SSH privée

Clés SSH privées/publiques sont d'excellentes fonctionnalités supplémentaires qui augmentent la sécurité dans la méthode d'un serveur. Cependant, la mise en place demande un peu plus d'efforts. La question est :votre serveur vaut-il la sécurité supplémentaire ? Si vous souhaitez implémenter les fonctionnalités de sécurité suivantes, vous pouvez passer aux étapes suivantes. Continuons et générons la clé SSH.

ssh-keygen

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

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

Il s'agit de la page par défaut lors de l'installation des clés SSH sur un serveur Ubuntu 15.04

La configuration de la clé SSH est cruciale. Nous devons copier la chaîne de clé entière dans un document Word / Bloc-notes. La clé peut être visualisée à l'emplacement suivant avec la commande cat.

cat ~/.ssh/id_rsa.pub

Copiez la clé SSH, en commençant par ssh-rsa et en terminant par [email protected], dans un document Word/Notepad pour l'ajouter ultérieurement au fichier de configuration.

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDNcnc3pMOytM7xgwZHUX0Wi/O78hDvLUmQVtKn8Qk1ijBY82jVftKXKRhf8toNkgm9jaZmfapLa7ynzUG4jbFjyy8H+iEs1R8P7eu+e8/fmGwjorbMFuWdoi7h2CldoqKTdMEb/dMNxjNMzBbovl3XtZviQGm4/TMVO1hHxy85JR8zAtNFu7liaP7IonexNrOGhY8CjqRcBsceQLkl1MlX7cWaWAMqd6jQnAvggTLerI9P286AP8Sk4uColj7GKOljj8X6J/2pcjp9v2IvJOqwC/zLwUKZ6qTEV6SrfdbjopoCVvpXkVhmcbHX5Xv1gwynO+vTkpPFwVTjSnAai71L [email protected]

Une fois la clé SSH stockée en toute sécurité, 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 NANO) à 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 autorisations 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 la session et en tapant [email protected] ou le nom d'hôte de votre serveur dans votre console SSH. De plus, vous pouvez cliquer "ici" pour consulter notre article Comment générer et utiliser des clés SSH pour plus d'informations.

Règles de base du pare-feu

sudo apt-get install firewalld

Ensuite, nous allons ajouter une règle pour autoriser le port SSH personnalisé 5022 créé précédemment à accéder publiquement au serveur. Dans le même temps, nous supprimerons la règle par défaut précédente autorisant l'accès SSH sur TCP/22.

sudo firewall-cmd --permanent --add-port=5022/tcp
sudo firewall-cmd --permanent --remove-service=ssh

Si vous disposez d'un serveur Web, vous pouvez autoriser les règles suivantes à accéder à vos sites via Internet.

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

Vous pouvez l'utiliser pour des règles similaires liées à tous les systèmes que vous souhaitez rendre accessibles au public. Ce serveur de test est configuré pour héberger un site Web et des services de messagerie. En plus des règles SSH et HTTP(S) mises à jour, des règles supplémentaires pour POP3, IMAP et SMTP sécurisés ont été ajoutées.

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

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. Pour vérifier tous les services/ports disponibles, exécutez la commande suivante :

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

Il s'agit de la page par défaut après la configuration des règles Firewalld sur le serveur Ubuntu 15.04

Synchronisation horaire NTP

Le NTP (Network Time Protocol) est 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 NTP (s'il n'a pas é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

Ajouter un fichier d'échange

Un fichier Swap est simplement un petit espace créé sur le disque dur d'un serveur pour simuler Ram. Si 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, j'ajouterai 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 doit être créée pour continuer.

sudo mkswap /swapfile

Avec le fichier Swap créé et le fichier Swap, zone ajoutée, nous pourrions 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

Pour 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

Il s'agit de la page par défaut après la création d'un fichier d'échange sur un serveur Ubuntu 15.04

Et ensuite ?

Avec cela, vous avez maintenant un serveur avec une base de sécurité solide, vous donnant la tranquillité d'esprit en sachant que votre serveur est protégé. Vous pouvez maintenant procéder à la construction de votre plateforme selon vos besoins. Merci de nous avoir suivi et n'hésitez pas à revenir vers nous pour d'autres mises à jour.

Atlantic.Net s'engage à fournir le meilleur support technique à ses clients ainsi qu'à proposer des gammes complètes de solutions d'hébergement VPS pour les entreprises de toutes tailles.


Linux
  1. Configuration initiale du serveur avec Ubuntu 14.04

  2. Comment configurer un serveur SFTP sur CentOS

  3. Comment configurer le serveur Rsyslog sur Ubuntu 18.04 LTS

  4. Configurer Rsyslog Server sur Ubuntu 20.04 - Comment faire ?

  5. Comment installer un serveur PostgreSQL sur Ubuntu 18.04

Configuration du serveur Ubuntu - Meilleures pratiques de sécurité

Comment initialiser la configuration du serveur CentOS 7

Procédure :configuration initiale du serveur Fedora 21

Procédure :configuration initiale du serveur Debian 8.2

Configuration initiale du serveur avec Ubuntu 18.04

Comment activer l'utilisateur root dans Ubuntu Server ?