mardi 6 novembre 2012

Installation et configuration du serveur Secure Shell


Le Secure Shell (SSH) est un serveur de remplacement sécurisé pour telnet et rlogin, etc SSH utilise le chiffrement à partir du point le client se connecte à un serveur, à l'heure de la connexion est interrompue. SSH utilise le chiffrement pour cacher les mots de passe, noms d'utilisateur et autres informations sensibles qui sont normalement envoyées "en clair" sur les serveurs tels que telnet et rlogin. SSH de cette écriture prend en charge les algorithmes de chiffrement suivants: 3DES, Twofish, Blowfish, Arcfour, CAST 128, AES (Rijndael), et DES. SSH est désormais livré avec une variété de distributions, afin de télécharger le serveur et le client doit être un pincement. Toutefois, si votre distribution ne dispose pas d'un module serveur SSH, vous pouvez le télécharger à partir du site Web de SSH. SSH est l'un des plus faciles à installer des paquets, l'installation devrait être un jeu d'enfant. Installez le paquet de votre distribution en utilisant le gestionnaire de paquet approprié (par exemple l'utilisation du paquetage rpm-i pour les systèmes basés sur RedHat, et dpkg-i nomdupaquet pour systèmes basés sur Debian).

Une fois installé, SSH doit fonctionner correctement. Pour le tester, vous pouvez vous connecter à votre serveur en tapant la commande suivante:

SSH-l username 127.0.0.1

Remplacez "username" par votre nom d'utilisateur souhaité. Si tout fonctionne correctement, vous serez invité à entrer un mot de passe, puis connecté. Si cela ne fonctionne pas, si vous avez installé SSH à partir des sources, et ne pas avoir un fichier / etc / init.d ou / etc / rc.d pour le démon SSH, vous pouvez en créer un à partir de zéro en suivant les lignes directrices pour la Pro- FTPD. Le fichier de configuration SSH (normalement situé dans / etc / SSH ou / etc/SSH2) est sshd_config ou sshd2_config. Un fichier de configuration d'exemple ressemble à ce qui suit:

# Sshd2_config
# SSH 2.0 Fichier de configuration du serveur

*:
Port 22
0.0.0.0 ListenAddress
Ciphers AnyStd
# Ciphers AnyCipher
# Ciphers AnyStdCipher
Ciphers # 3des
IdentityFile identification
Autorisation AuthorizationFile
HostKeyFile hostkey
PublicHostKeyFile hostkey.pub
RandomSeedFile random_seed
ForwardAgent oui
ForwardX11 oui
PasswordGuesses 1
MaxConnections 50
PermitRootLogin no
# AllowedAuthentications publickey, mot de passe, hostbased
AllowedAuthentications publickey, mot de passe
# RequiredAuthentications publickey, mot de passe
ForcePTTYAllocation pas
VerboseMode pas
PrintMotd oui
CheckMail oui
UserConfigDirectory "% D/.SSH2"
AUTH SyslogFacility
# SyslogFacility LOCAL7
SSH1Compatibility oui
SSHd1Path / usr/sbin/SSHd1
# AllowHosts localhost, foobar.com, friendly.org
# DenyHosts evil.org, aol.com
# Trusted.host.org AllowSHosts
# Not.quite.trusted.org DenySHosts
# NoDelay oui
KeepAlive yes
RequireReverseMapping oui
/ UserKnownHosts oui
Définitions sous-système #
sous-système sftp sftp-server

La plupart de ces paramètres, vous ne devriez pas avoir à changer la valeur par défaut. Une exception notable est le port SSH va utiliser. Vous pouvez changer ce à n'importe quel port dans la limite 65535. En outre, vous voudrez peut-être changer PasswordGuesses de sa valeur par défaut (3) à 1. La raison de ceci est que cela dissuade les tentatives de craquage (le pirate doit faire une nouvelle connexion pour chaque mot de passe a échoué). MaxConnections est un paramètre très important si ce serveur va avoir d'autres services sur celui-ci. MaxConnections aide à garder vos connexions vers le bas, de sorte que les demandes et les processus SSH ne prennent pas 90% des ressources du serveur. Cependant, il ya un inconvénient à ce que quelqu'un peut-connecter à votre serveur le nombre de fois admis dans MaxConnections, puis il suffit de laisser les sessions connectés, ce qui empêchera les autres utilisateurs de vous connecter PermitRootLogin est également un paramètre important, * toujours * réglez ce paramètre sur no (yes par défaut). Si vous devez vous connecter en tant que root, il suffit de créer un utilisateur avec un GID et UID de 0 à 0. Ceci est connu comme un compte suid root.

Laissant la racine avec la possibilité de se connecter laisse une petite chance que quelqu'un peut se fissurer racine. SSH1 compatibilité est cruciale, beaucoup de gens n'ont pas encore mis à jour (ou sont au courant de la mise à niveau) pour SSH2. AllowHosts et DenyHosts ne devrait vraiment pas être utilisé comme une mesure de sécurité à mon avis. Au lieu de cela, ipchains ou un similaire au niveau du noyau de pare-feu doit être utilisé à la place. Cependant, vous pouvez choisir de les utiliser, mais sachez que lorsque vous utilisez une mesure de sécurité au niveau application, exploite dans l'application peut permettre refusé (ou bloqué) d'hôtes de se connecter de toute façon. Une grande chose au sujet de SSH est qu'il est livré avec le serveur sftp, qui permet le chiffrement des sessions FTP. En outre, aucun démon FTP sont nécessaires sur le serveur, juste le démon SSH. Toutefois, le client doit disposer d'un paquetage SSH, afin de profiter du serveur sftp.

SSH est un service extrêmement précieux. Il permet le cryptage de ce qui étaient traditionnellement des services non traditionnels (tels que Telnet et FTP). Cette section a brièvement abordé le sujet du serveur SSH, et plus peut être expliqué dans le HOW-TO officielle....

Aucun commentaire:

Enregistrer un commentaire