GNU/Linux >> Tutoriels Linux >  >> Cent OS

Comment installer et activer le serveur OpenSSH sur CentOS 8 Linux

SSH signifie Secure Shell. Comme son nom l'indique, SSH est destiné à accéder à distance au Server ou Desktop Shell sous Windows, macOS, Linux (CentOS, Ubuntu et tous les autres) et aux autres systèmes d'exploitation disponibles. Il s'agit essentiellement d'un protocole réseau, ce qui signifie définir des règles pour établir une connexion sécurisée et cryptée entre le client et le serveur.

Le principal avantage de l'utilisation de SSH est une transmission sécurisée des données sur des réseaux non sécurisés tels qu'Internet. Il est vraiment utile de connecter des ordinateurs distants et d'y accéder en toute sécurité via la ligne de commande. Nous pouvons également l'utiliser pour transférer des fichiers sur les réseaux sceptiques. C'est la raison pour laquelle la plupart des centres de données et des administrateurs cloud l'utilisent pour accéder aux serveurs à distance.

Ici, nous allons montrer les étapes pour installer le serveur OpenSSH sur CentOS 8 Linux. Ce progiciel utilise SSH (Secure Shell Protocol) pour fournir un canal sécurisé sur le réseau dans une architecture client-serveur.

Activer SSH sur Linux CentOS 8

Les étapes ci-dessous pour l'installation du serveur OpenSSH fonctionneront non seulement sur CetnOS 8 mais aussi sur les versions antérieures telles que 7 et 6.

1. Installer le serveur OpenSSH

Ouvrez le terminal de commande sur CentOS 8, si vous utilisez la version CLI, vous y êtes déjà. L'installation d'OpenSSH est très simple car il est déjà présent sur le référentiel officiel de CentOS. Ainsi, une commande et il sera sur votre machine.

sudo dnf –y install openssh-server

La commande unique installera à la fois le client OpenSSH et le démon serveur sshd sur le système.

2. Démarrer le service SSH sur CentOS

Après l'installation, nous devons démarrer le service d'OpenSSH sinon, nous ne serions pas en mesure d'y accéder via un outil client de Windows, Linux ou d'autres systèmes. Cependant, après l'avoir activé avec succès, nous pourrions facilement nous connecter et établir une connexion sécurisée. Ainsi, exécutez la commande ci-dessous :

Démarrez le démon SSH du serveur OpenSSH :

sudo systemctl start sshd

Si vous souhaitez l'arrêter, la commande sera

sudo systemctl stop sshd

3. Vérifier l'état sshd

Pour savoir après le démarrage du service SSH s'il fonctionne parfaitement ou non. Exécutez la commande :

sudo systemctl status sshd

Vous verrez une couleur verte "actif (en cours d'exécution) ” texte sur votre écran qui confirmera que tout va bien.

4. Activer le service OpenSSH au niveau du démarrage

Si vous souhaitez démarrer le SSH automatiquement chaque fois que vous redémarrez votre système. Utilisez ensuite la commande ci-dessous. Cela garantira également que vous n'aurez pas besoin de le démarrer manuellement à chaque fois.

sudo systemctl enable sshd

Pour désactiver à l'avenir (commande d'options), exécutez :

sudo systemctl disable sshd

5. Autoriser le pare-feu du port 22

Dans le cas où même après avoir effectué toutes les étapes, vous ne seriez pas en mesure d'accéder au serveur ssh à partir du client en raison d'un pare-feu, puis autorisez-le. Pour autoriser l'exécution du port SSH 22 sur Linux CentOS 8 :

firewall-cmd --zone=public --add-port=22/tcp --permanent

Redémarrer le pare-feu :

firewall-cmd --reload

6. Connectez-vous au serveur SSH

Pour vous connecter et accéder à CentOS via SSH, ouvrez simplement une invite de commande sous Windows ou Terminal sous Linux et tapez une commande dans cette syntaxe :

ssh [protégé par e-mail]

Par exemple- disons que le nom d'utilisateur est root et l'adresse du serveur est 192.168.0.12, alors la commande sera :

ssh [email protected]

Si vous avez modifié le port par défaut 22 à autre chose alors ce sera :

ssh [email protected] :port

7. Modifier le port SSh par défaut sur CentOS 8/7 (facultatif)

Par défaut, le port utilisé par le SSH est 22 , cependant, pour améliorer la sécurité, vous pouvez le remplacer par autre chose. Pour cette modification SSHD fichier de configuration.

sudo vi /etc/ssh/sshd_config
  • Maintenant, trouvez la ligne #port 22
  • Appuyez sur Inser touche du clavier.
  • Supprimer # et changez le sshd 22 port avec autre chose, disons 5678
  • Pour enregistrer le fichier, appuyez sur Échap clé puis tapez :wq

Redémarrez le service sshd pour marquer les changements en vigueur.

 service sshd restart

Si vous obtenez une erreur :

Redirecting to /bin/systemctl restart sshd.service
Job for sshd.service failed because the control process exited with error code.
See "systemctl status sshd.service" and "journalctl -xe" for details.

Cela signifie que vous devez lui donner les autorisations SELinux en l'informant que vous avez ajouté un nouveau port pour le service.

semanage port -a -t ssh_port_t -p tcp 5678

Remarque :Remplacez le 5678 avec le numéro de port que vous avez entré dans le sshd fichier de configuration ci-dessus

Encore une fois si vous obtenez une erreur comme :

ValueError: Port tcp/5678 already defined

Cela signifie que le port que vous choisissez d'utiliser avec le service SSH est déjà attribué ou réservé pour un autre service. Par conséquent, modifiez le numéro de port dans le fichier de configuration et exécutez à nouveau la commande semange port .

Une fois que vous l'avez ajouté avec succès, vérifiez quels ports sont autorisés par SELinux sur votre système pour le service SSHD :

semanage port -l | grep ssh

Vous obtiendrez quelque chose comme ceci :

ssh_port_t tcp    5678, 22

Enfin, vous disposez de deux ports pour un seul service.

9. Bloquer le port CentOS 22 par défaut

Comme nous avons deux ports pour un seul service Secure Shell, nous pouvons donc bloquer celui par défaut qui est 22 pour définitivement. Cela augmentera la sécurité du système et nous permettra de n'utiliser qu'un seul numéro de port personnalisé pour le service.

firewall-cmd --direct --add-rule ipv4 filter INPUT  -p tcp --dport 22 -j REJECT

Maintenant, autorisez le numéro de port personnalisé que vous avez créé dans le pare-feu, ici dans notre cas, il s'agit de 5678

firewall-cmd --add-port=5678/tcp --permanent
firewall-cmd --reload

Maintenant, vous ne pourrez plus vous connecter via celui par défaut et si vous essayez, cela passera par une erreur :ssh: connect to host 192.168.0.107 port 22: Connection refused

Pour vous connecter à l'aide du port ssh personnalisé, utilisez cette syntaxe de commande :

ssh -p 5678 [email protected]

Dans la commande ci-dessus 5678 est le numéro de port, alors remplacez-le par celui que vous avez.

Par exemple : 

ssh -p 5678 [email protected]

10. Désactiver la connexion root (facultatif)

Pour augmenter la sécurité du serveur à un niveau supérieur, vous pouvez désactiver l'accès de l'utilisateur root sur SSH. Cela implique que l'on peut accéder et contrôler le serveur à distance en utilisant uniquement des utilisateurs non root.

Éditez à nouveau le fichier de configuration SSHD :

sudo vi /etc/ssh/sshd_config
  • Utilisez les touches fléchées et recherchez la ligne :"PermitRootLogin=yes "
  • Appuyez sur Inser touche du clavier.
  • Changez la valeur "oui par non".
  • Appuyez sur Échap clé et tapez- :wq
  • Appuyez sur Entrée Clé
service sshd restart

11. Désinstallez OpenSSH

Pour le supprimer :

dnf remove openssh-server

En savoir plus :

  • Installer et configurer VNC Server sur CentOS 8
  • Comment installer l'interface graphique sur le serveur CentOS 8 Minimal CLI


Cent OS
  1. Comment installer le serveur DNS sur RHEL 8 / CentOS 8 Linux

  2. Comment debootstrap sur CentOS Linux

  3. Comment installer ou mettre à niveau vers PHP 7 sur CentOS 7 Linux Server

  4. Comment installer GUI Gnome sur le système CentOS 7 Linux

  5. Comment installer Erlang sur Rocky Linux/Alma Linux/CentOS 8

Comment installer PostgreSQL sur CentOS 8

Comment installer OpenSSH sur Ubuntu 20.04

Comment installer le serveur OpenSSH sur Alpine Linux

Comment installer l'interface graphique sur le serveur CentOS 8 / RHEL 8 Minimal Linux

Comment installer Memcaed sur CentOS 8 Linux

Comment activer le service SSH sur Rocky Linux 8 / CentOS 8