Répertoire d'articles
Préface
SSH (Secure Shell) est un protocole de canal sécurisé, qui est principalement utilisé pour implémenter les fonctions de connexion à distance et de copie à distance d'une interface de caractères. Le protocole SSH crypte la transmission de données entre les parties communicantes, y compris le mot de passe de connexion saisi par l'utilisateur lors de la connexion. Comparé aux premières applications telles que telnet (connexion à distance), rsh (Remote Shell, exécution à distance des commandes), rcp (Remote File Copy, Remote File Copy), le protocole SSH offre une meilleure sécurité.
1. Gestion à distance SSH
1. Configurez le serveur OpenSSH
1.1 Service SSH et fichier de configuration
Protocole SSH (Secure Shell)
- Est un protocole de canal sécurisé
- Données de communication cryptées pour la gestion à distance
OpenSSH
- Nom du service: sshd
- Programme principal du serveur: / usr / sbin / sshd
- Fichier de configuration du serveur: / etc / ssh / sshd_config
systemctl restart sshd ##重启(刷新)sshd服务
1.2 Options de surveillance du service
Le numéro de port par défaut utilisé par le service sshd est 22. Si nécessaire, il est recommandé de modifier ce numéro de port et de spécifier l'adresse IP spécifique du service d'écoute pour améliorer la dissimulation dans le réseau. De plus, la version V2 du protocole SSH est plus sécurisée que la version 1. La désactivation de la résolution DNS inversée peut améliorer la vitesse de réponse du serveur.
1.3 Contrôle de connexion de l'utilisateur
Le service sshd permet aux utilisateurs root de se connecter par défaut, ce qui est très peu sécurisé lorsqu'il est utilisé sur Internet. Pratique courante: connectez-vous d'abord à distance en tant qu'utilisateur ordinaire, et après être entré dans l'environnement shell sécurisé, utilisez la commande su pour basculer vers l'utilisateur root en fonction des besoins réels.
À propos du contrôle de connexion utilisateur du service sshd:
- Désactiver les utilisateurs root, les utilisateurs avec des mots de passe vides
- Limiter le temps de vérification de la connexion et le nombre de tentatives
- AllowUsers 、 DenyUsers
Lorsque vous autorisez ou interdisez uniquement la connexion de certains utilisateurs, vous pouvez utiliser la configuration AllowUsers ou DenyUsers, l'utilisation des deux est similaire (veillez à ne pas les utiliser en même temps). Par exemple, si seuls les utilisateurs jerry, tesengyia et admin sont autorisés à se connecter, et que l'utilisateur admin ne peut se connecter qu'à distance depuis un hôte avec une adresse IP de 61.23.24.25, vous pouvez ajouter la configuration suivante dans le fichier de configuration / etc / ssh / sshd_config.
1.4 Méthode de vérification de la connexion
Vérification du mot de passe: vérifiez si le nom d'utilisateur et le mot de passe correspondent
Vérification de la paire de clés: vérifiez si la clé privée du client et la clé publique du serveur correspondent
2. Utilisez le programme client SSH
2.1 Programmes de commande ssh, scp, sftp
ssh connexion à distance
scp remote copy
(1) copier des fichiers à distance sur le serveur
(2) copier des fichiers à distance depuis le serveur
(3) sftp secure FTP
put: upload; get: download
2.2 Outil graphique Xshell
3. Créez un système SSH pour la vérification des paires de clés
Les étapes sont les suivantes:
(1) Créer une paire de clés sur le client
(2) Télécharger le fichier de clé publique sur le serveur
(3) Importer la clé publique sur le serveur Les
deuxième et troisième étapes peuvent être combinées en une simple commande:
(4 ) Utilisez la paire de clés sur le client pour vérifier que la
paire de clés est correctement vérifiée. À ce stade, vous pouvez vous connecter avec succès sans saisir de mot de passe.
Deux, contrôle d'accès TCP Wrappers
1. Présentation des wrappers TCP
Comment le mécanisme de protection est mis en œuvre
- Méthode 1: package d'autres programmes de service via le programme principal tcpd
- Méthode 2: appelez la bibliothèque de liens libwrap.so. * Par d'autres programmes de service
Fichier de configuration de la politique de contrôle d'accès
/etc/hosts.allow
/etc/hosts.deny
2. Stratégie d'accès aux TCP Wrappers
Les objets de protection du mécanisme TCP Wrappers sont différents programmes de service réseau et le contrôle d'accès est effectué sur l'adresse client du service d'accès. Les deux fichiers de politique correspondants sont /etc/hosts.allow et /etc/hosts.deny, qui sont utilisés pour définir respectivement les politiques d'autorisation et de refus
2.1 Format de configuration de la politique
Définissez la stratégie de contrôle d'accès:
- Format de la stratégie: liste des programmes de service : liste des adresses des clients
- Liste des programmes de service
◆ Plusieurs services sont séparés par des virgules, TOUS signifie tous les services - Liste d'adresses client
◆ Les adresses multiples sont séparées par des virgules, TOUT signifie que tous les services
◆ Les caractères génériques sont autorisés? Et *
◆ Adresse réseau, telle que 192.168.1 ou 192.168.1.0/255.255.255.0
◆ Adresse régionale, telle que .benet.com
2.2 Principes de base du contrôle d'accès
(1) Vérifiez hosts.allow et autorisez l'accès si une correspondance est trouvée
(2) Vérifiez à nouveau hosts.deny et refusez l'accès
si trouvé (3) S'il n'y a pas de politique correspondante dans les deux fichiers, l'accès est autorisé par défaut
2.3 Exemple de configuration de TCP Wrappers
Défini sur l'hôte avec l'adresse IP 20.0.0.11.
À ce stade, le 20.0.0.13 qui peut accéder au serveur 20.0.0.11 auparavant n'est pas accessible, mais le 20.0.0.12 est accessible.