SSHD_CONFIG(5) File Formats Manual SSHD_CONFIG(5) NOM sshd_config - Fichier de configuration du demon d'OpenSSH DESCRIPTION sshd(8) lit ses donnees de configuration dans le fichier /etc/ssh/sshd_config (ou dans le fichier specifie a l'aide de l'option -f sur la ligne de commande). Chaque ligne de ce fichier contient une seule paire option/argument. Sauf mention contraire, c'est la premiere valeur lue qui sera utilisee pour chaque option. Les lignes qui commencent par le caractere << # >> et les lignes vides sont considerees comme des commentaires. Pour representer des valeurs contenant des espaces, les arguments doivent etre entoures de guillemets droits doubles << " >>. Les options disponibles et leur signification sont les suivantes (les noms d'option ne sont pas sensibles a la casse, mais les arguments le sont) : AcceptEnv Cette option permet de specifier quelles variables d'environnement envoyees par le client seront copiees dans l'environnement de session ( environ(7)). Voir SendEnv et SetEnv dans ssh_config(5) pour la configuration du client. La variable d'environnement TERM est toujours acceptee quand un client demande un pseudo-terminal comme requis par le protocole. Les variables sont specifiees a l'aide de leur nom qui peut contenir les caracteres generiques << * >> et << ? >>. Il est possible de specifier plusieurs variables d'environnement en les separant par des espaces ou en definissant plusieurs directives AcceptEnv. Gardez a l'esprit que certaines variables d'environnement pourraient etre utilisees pour court-circuiter des environnements utilisateur restreints ; c'est pourquoi cette directive doit etre utilisee avec prudence. Par defaut, aucune variable d'environnement n'est acceptee. AddressFamily Cette option permet de specifier la famille d'adresses que sshd(8) doit utiliser. Les arguments valables sont any (la valeur par defaut), inet (utiliser IPv4 seulement) ou inet6 (utiliser IPv6 seulement). AllowAgentForwarding Cette option permet de specifier si la redirection de ssh-agent(1) est autorisee. La valeur par defaut est yes. Notez que desactiver la redirection d'agent n'ameliore la securite que si les utilisateurs se voient aussi refuser l'acces a un interpreteur de commande, car dans le cas contraire, ils peuvent toujours installer leurs propres redirecteurs. AllowGroups Cette option peut etre suivie d'une liste de motifs de nom de groupe separes par des espaces. Si elle est specifiee, seuls les utilisateurs dont le groupe principal ou les groupes supplementaires correspondent a un des motifs sont autorises a se connecter. Seuls les noms de groupes sont valables ; les identifiants de groupes (GID) numeriques ne sont pas reconnus. Par defaut, tous les groupes sont autorises a se connecter. Les directives de groupe allow/deny sont traitees dans l'ordre suivant : DenyGroups, AllowGroups. Voir la section MOTIFS dans ssh_config(5) pour plus d'informations a propos des motifs. Cette option peut apparaitre plusieurs fois dans sshd_config, chaque instance s'ajoutant a la liste. AllowStreamLocalForwarding Cette option permet de specifier si la redirection de StreamLocal (socket de domaine Unix) est autorisee. Les arguments valables sont yes (la valeur par defaut), all pour autoriser la redirection de StreamLocal, no pour interdire toute redirection de StreamLocal, local pour n'autoriser que la redirection locale (vue selon ssh(1)) ou remote pour n'autoriser que la redirection distante. Notez que desactiver la redirection de StreamLocal n'ameliore la securite que si les utilisateurs se voient refuser l'acces a un interpreteur de commande, car dans le cas contraire, ils peuvent toujours installer leurs propres redirecteurs. AllowTcpForwarding Cette option permet de specifier si les redirections TCP sont autorisees. Les arguments valables sont yes (la valeur par defaut), all pour autoriser la redirection TCP, no pour interdire toute redirection TCP, local pour n'autoriser que la redirection locale (vue selon ssh(1)) ou remote pour n'autoriser que la redirection distante. Notez que desactiver la redirection TCP n'ameliore la securite que si les utilisateurs se voient refuser l'acces a un interpreteur de commande, car dans le cas contraire, ils peuvent toujours installer leurs propres redirecteurs. AllowUsers Cette option peut etre suivie d'une liste de motifs de nom d'utilisateur separes par des espaces. Si elle est specifiee, seuls les noms d'utilisateur correspondant a un des motifs sont autorises a se connecter. Seuls les noms d'utilisateur sont valables ; un identifiant d'utilisateur numerique (UID) ne sera pas reconnu. Par defaut, la connexion est autorisee pour tous les utilisateurs. Si le motif est de la forme UTILISATEUR@HOTE, UTILISATEUR et HOTE sont verifies separement, ce qui permet de restreindre les connexions a certains utilisateurs d'un hote particulier. Le critere HOTE peut en plus contenir des adresses a faire correspondre sous le format CIDR adresse/taille_de_masque. Les directives d'utilisateur allow/deny sont traitees dans l'ordre suivant : DenyUsers, AllowUsers. Voir la section MOTIFS dans ssh_config(5) pour plus d'informations a propos des motifs. Cette option peut apparaitre plusieurs fois dans sshd_config, chaque instance s'ajoutant a la liste. AuthenticationMethods Cette option permet de specifier les methodes d'authentification qui doivent etre appliquees avec succes pour qu'un utilisateur se voie autoriser l'acces. Elle doit etre suivie d'une ou plusieurs listes de noms de methode d'authentification separes par des virgules ou de l'unique chaine any pour indiquer le comportement par defaut qui consiste a accepter toute methode d'authentification unique. Si des listes sont specifiees, l'application avec succes de toutes les methodes d'authentification d'au moins une de ces listes sera requise pour reussir l'authentification. Par exemple, << publickey,password publickey,keyboard- interactive >> necessiterait de la part de l'utilisateur une authentification par cle publique suivie d'une authentification par mot de passe ou d'une authentification par saisie au clavier. Les methodes d'authentification doivent etre appliquees dans l'ordre selon lequel elles apparaissent dans chaque liste ; ainsi, dans cet exemple, l'application d'une methode d'authentification par mot de passe ou par saisie au clavier avant l'application d'une methode d'authentification par cle publique ne serait pas valable. Avec l'authentification par saisie au clavier, il est aussi possible de restreindre l'authentification a un dispositif specifique en ajoutant un deux-points << : >> suivi de l'identifiant du dispositif bsdauth ou pam, en fonction de la configuration du serveur. Par exemple, << keyboard- interactive:bsdauth >> restreint l'authentification par saisie au clavier au dispositif bsdauth. Si la methode d'authentification par cle publique est indiquee plusieurs fois, sshd(8) s'assure que les cles qui ont ete utilisees avec succes ne seront pas reutilisees pour les authentifications suivantes. Par exemple, << publickey,publickey >> requiert l'utilisation de deux cles publiques differentes pour une authentification reussie. Notez que chaque methode d'authentification indiquee doit aussi etre explicitement activee dans la configuration. Les methodes d'authentification disponibles sont : << gssapi- with-mic >>, << hostbased >>, << keyboard-interactive >>, << none >> (utilisee pour l'acces a des comptes sans mot de passe lorsque PermitEmptyPasswords est active), << password >> et << publickey >>. AuthorizedKeysCommand Cette option permet de specifier un programme a utiliser pour rechercher les cles publiques de l'utilisateur. Le programme doit etre la propriete du superutilisateur, non accessible en ecriture pour le groupe ou les autres et specifie a l'aide d'un chemin absolu. Les arguments de AuthorizedKeysCommand acceptent les symboles decrits dans la section SYMBOLES. Si aucun argument n'est specifie, c'est le nom d'utilisateur de l'utilisateur cible qui est utilise. Le programme doit produire sur la sortie standard zero ou plusieurs lignes au format authorized_keys (voir AUTHORIZED_KEYS dans sshd(8)). AuthorizedKeysCommand est utilisee apres les fichiers AuthorizedKeysFile usuels et ne sera pas executee si une cle correspondante est trouvee dans ces derniers. Par defaut, aucune AuthorizedKeysCommand n'est executee. AuthorizedKeysCommandUser Cette option permet de specifier l'utilisateur sous le compte duquel la commande AuthorizedKeysCommand sera executee. Il est recommande de specifier un utilisateur dedie qui n'a pas d'autre role sur l'hote que d'executer des commandes de cles autorisees. Si AuthorizedKeysCommand est specifie alors que AuthorizedKeysCommandUser ne l'est pas, sshd(8) refusera de demarrer. AuthorizedKeysFile Cette option permet de specifier le fichier contenant les cles publiques a utiliser pour l'authentification de l'utilisateur. Le format de ce fichier est decrit dans la section FORMAT DU FICHIER AUTHORIZED_KEYS de sshd(8). Les arguments de AuthorizedKeysFile acceptent les symboles decrits dans la section SYMBOLES. Apres developpement, AuthorizedKeysFile est interprete comme un chemin absolu ou comme un chemin relatif au repertoire personnel de l'utilisateur. Il est possible de specifier plusieurs fichiers en les separant par des blancs. Pour se passer de la verification des cles d'utilisateur dans des fichiers, cette option doit etre definie a none. L'argument par defaut de cette option est << .ssh/authorized_keys .ssh/authorized_keys2 >>. AuthorizedPrincipalsCommand Cette option permet de specifier un programme a utiliser pour generer une liste de << principals >> de certificat autorises en se basant sur AuthorizedPrincipalsFile (NDT : un << principal >> est une chaine arbitraire definie au niveau du serveur pour un utilisateur et devant etre presente dans le certificat du client pour que ce dernier puisse se connecter). Le programme doit etre la propriete du superutilisateur, non accessible en ecriture pour le groupe ou pour les autres et specifie a l'aide d'un chemin absolu. Les arguments de AuthorizedPrincipalsCommand acceptent les symboles decrits dans la section SYMBOLES. Si aucun argument n'est specifie, c'est le nom d'utilisateur de l'utilisateur cible qui sera utilise. Le programme doit produire sur la sortie standard zero ou plusieurs lignes du fichier AuthorizedPrincipalsFile. Si au moins une des options AuthorizedPrincipalsCommand ou AuthorizedPrincipalsFile est specifiee, les certificats proposes par le client pour l'authentification devront contenir un << principal >> faisant partie de la liste. Par defaut, aucune commande AuthorizedPrincipalsCommand n'est executee. AuthorizedPrincipalsCommandUser Cette option permet de specifier l'utilisateur sous le compte duquel la commande AuthorizedPrincipalsCommand sera executee. Il est recommande de specifier un utilisateur dedie qui n'a pas d'autre role sur l'hote que d'executer des commandes de laissez- passer autorisees. Si AuthorizedPrincipalsCommand est specifie alors que AuthorizedPrincipalsCommandUser ne l'est pas, sshd(8) refusera de demarrer. AuthorizedPrincipalsFile Cette option permet de specifier un fichier contenant la liste des noms de << principal >> acceptes pour une authentification par certificat. Lorsqu'on utilise des certificats signes par une cle listee dans TrustedUserCAKeys, un des noms contenus dans ce fichier doit apparaitre dans le certificat afin que ce dernier soit accepte pour l'authentification. Chaque ligne du fichier contient un seul nom precede des options de cle (comme decrit dans la section FORMAT DU FICHIER AUTHORIZED_KEYS de sshd(8)). Les lignes vides et les commentaires (lignes commencant par << # >>) sont ignores. Les arguments de AuthorizedPrincipalsFile acceptent les symboles decrits dans la section SYMBOLES. Apres developpement, AuthorizedPrincipalsFile est interprete comme un chemin absolu ou comme un chemin relatif au repertoire personnel de l'utilisateur. L'argument par defaut est none et indique qu'aucun fichier de << principals >> ne sera utilise ; dans ce cas, le nom d'utilisateur de l'utilisateur devra apparaitre dans une liste de laissez-passer du certificat pour que ce dernier soit accepte. Notez que AuthorizedPrincipalsFile n'est utilise que lorsque l'authentification est effectuee en utilisant une autorite de certification (CA) listee dans TrustedUserCAKeys et n'est pas consulte pour des CA definies comme fiables a l'aide de ~/.ssh/authorized_keys, bien que l'option de cle principals= offre des possibilites similaires (voir sshd(8) pour les details). Banner Le contenu du fichier specifie est envoye a l'utilisateur distant avant que la connexion ne soit autorisee. Si l'argument est none, aucune banniere n'est affichee, ce qui correspond au comportement par defaut. CASignatureAlgorithms Cette option permet de specifier quels algorithmes sont autorises pour la signature des certificats par les autorites de certification (CA). Les algorithmes par defaut sont : ssh-ed25519,ecdsa-sha2-nistp256, ecdsa-sha2-nistp384,ecdsa-sha2-nistp521, sk-ssh-ed25519@openssh.com, sk-ecdsa-sha2-nistp256@openssh.com, rsa-sha2-512,rsa-sha2-256 Si la liste specifiee commence par un caractere << + >>, les algorithmes qu'elle contient seront ajoutes a la liste par defaut au lieu de la remplacer. Si la liste specifiee commence par un caractere << - >>, les algorithmes qu'elle contient (pouvant contenir des caracteres generiques) seront supprimes de la liste par defaut au lieu de la remplacer. Les certificats signes en utilisant d'autres algorithmes ne seront pas acceptes pour l'authentification par cle publique ou basee sur l'hote. ChannelTimeout Cette option permet de specifier si et sous quel delai sshd(8) doit fermer les canaux inactifs. Les delais sont specifies sous forme d'une ou plusieurs paires << type=intervalle >> separees par des blancs, ou << type >> doit etre le mot-cle special << global >> ou un nom de type de canal issu de la liste ci- dessous et comportant eventuellement des caracteres generiques. La valeur de delai << interval >> est specifiee en secondes ou peut utiliser une unite documentee dans la section FORMATS DE TEMPS. Par exemple, << session=5m >> signifierait que les sessions interactives seraient fermees apres cinq minutes d'inactivite. Specifier une valeur de zero desactive le delai d'inactivite. La valeur speciale de delai << global >> s'applique a tous les canaux actifs pris dans leur ensemble. La presence de trafic sur un canal actif reinitialise le delai, mais lorsque le delai expire, tous les canaux sont fermes. Notez que ce delai << global >> ne peut pas etre exprime a l'aide de caracteres generiques et qu'il doit donc etre specifie explicitement. Les noms de type de canal comprennent : agent-connection Connexions ouvertes vers ssh-agent(1). direct-tcpip, direct-streamlocal@openssh.com Connexions TCP ou socket Unix (respectivement) ouvertes qui ont ete etablies depuis une redirection locale de ssh(1), c'est-a-dire a l'aide de LocalForward ou DynamicForward. forwarded-tcpip, forwarded-streamlocal@openssh.com Connexions TCP ou socket Unix (respectivement) ouvertes qui ont ete etablies vers un demon sshd(8) en ecoute au nom d'une redirection distante de ssh(1), c'est-a-dire a l'aide de RemoteForward. session La session interactive principale comprenant la session de l'interpreteur de commande, l'execution de commande, scp(1), sftp(1), etc. tun-connection Les connexions ouvertes a l'aide de TunnelForward. x11-connection Les sessions de redirections de X11 ouvertes. Notez que dans tous les cas ci-dessus, fermer une session inactive ne garantit pas que toutes les ressources associees a la session seront supprimees ; par exemple, les processus de l'interpreteur de commande ou les clients X11 lies a la session pourront continuer leur execution. En outre, fermer une session ou un canal inactif ne ferme pas necessairement la connexion SSH et n'empeche pas un client de demander l'ouverture d'un autre canal du meme type. En particulier, fermer une session de redirection inactive n'empeche pas la creation subsequente d'une autre redirection identique. Par defaut, aucun canal de quelque type que ce soit ne sera ferme pour inactivite. ChrootDirectory Cette option permet de specifier le chemin d'un repertoire a passer a chroot(2) apres l'authentification. Au demarrage de la session, sshd(8) verifie que tous les composants du chemin sont des repertoires qui sont la propriete du superutilisateur et non accessibles en ecriture pour le groupe ou les autres. Apres passage en chroot, sshd(8) definit le repertoire personnel de l'utilisateur comme repertoire de travail. Les arguments de ChrootDirectory acceptent les symboles decrits dans la section SYMBOLES. Le repertoire ChrootDirectory doit contenir les repertoires et fichiers necessaires pour prendre en charge la session de l'utilisateur. Pour une session interactive, cela comprend au moins un interpreteur de commande, en general sh(1) et des noeuds /dev de base tels que les dispositifs null(4), zero(4), stdin(4), stdout(4), stderr(4) et tty(4). Pour les sessions de transfert de fichiers utilisant SFTP, aucune configuration additionnelle de l'environnement n'est necessaire si l'on utilise le serveur sftp interne, bien que sur certains systemes d'exploitation, les sessions qui utilisent la journalisation puissent necessiter /dev/log a l'interieur du repertoire de chroot (voir sftp-server(8) pour les details). Pour la securite, il est tres important que l'arborescence du repertoire ne puisse pas etre modifiee par d'autres processus sur le systeme (en particulier ceux qui se trouvent en dehors du << bac a sable >>). Un mauvaise configuration peut induire des environnements non securises que sshd(8) ne pourra pas detecter. L'argument par defaut est none, indiquant de ne pas passer en chroot(2). Ciphers Cette option permet de specifier les algorithmes de chiffrement autorises. Plusieurs algorithmes de chiffrement peuvent etre specifies en les separant par des virgules. Si la liste specifiee commence par un caractere << + >>, les algorithmes qu'elle contient seront ajoutes a la liste par defaut au lieu de la remplacer. Si la liste specifiee commence par un caractere << - >>, les algorithmes qu'elle contient (pouvant contenir des caracteres generiques) seront supprimes de la liste par defaut au lieu de la remplacer. Si la liste specifiee commence par un caret << ^ >>, les algorithmes qu'elle contient seront ajoutes au debut de la liste par defaut. Les algorithmes de chiffrement pris en charge sont : 3des-cbc aes128-cbc aes192-cbc aes256-cbc aes128-ctr aes192-ctr aes256-ctr aes128-gcm@openssh.com aes256-gcm@openssh.com chacha20-poly1305@openssh.com La liste par defaut est : chacha20-poly1305@openssh.com, aes128-ctr,aes192-ctr,aes256-ctr, aes128-gcm@openssh.com,aes256-gcm@openssh.com La liste des algorithmes de chiffrement disponibles peut aussi etre obtenue en utilisant la commande << ssh -Q cipher >>. ClientAliveCountMax Cette option permet de definir le nombre de messages de rappel au client qui peuvent etre envoyes sans que sshd(8) recoive de message en retour du client. Si cette limite est atteinte alors que des messages de rappel au client sont envoyes, sshd deconnectera le client et fermera la session. Il est important de noter que l'utilisation de messages de rappel au client est tres differente de TCPKeepAlive. Les messages de rappel au client sont envoyes par le canal chiffre et ne sont donc pas falsifiables. L'option << keepalive >> de TCP activee par TCPKeepAlive peut etre compromise. Le mecanisme de rappel au client s'avere utile lorsque le client ou le serveur ont besoin d'etre informes quand une connexion ne repond plus. La valeur par defaut est 3. Si ClientAliveInterval est defini a 15 et si ClientAliveCountMax conserve sa valeur par defaut de 3, les clients SSH qui ne repondent pas seront deconnectes apres approximativement 45 secondes. Definir ClientAliveCountMax a zero desactive la fermeture des connexions inactives. ClientAliveInterval Cette option permet de definir un delai en secondes apres lequel, si aucune donnee n'est recue de la part du client, sshd(8) enverra un message par le canal chiffre pour demander une reponse au client. La valeur par defaut est 0, ce qui signifie qu'aucun message de rappel ne sera envoye au client. Compression Cette option permet d'indiquer si la compression est activee apres une authentification reussie de l'utilisateur. L'argument doit etre yes, delayed (un equivalent herite de yes) ou no. La valeur par defaut est yes. DenyGroups Cette option peut etre suivie d'une liste de motifs de nom de groupe separes par des espaces. Les utilisateurs dont le groupe principal ou les groupes secondaires correspondent a un des motifs ne sont pas autorises a se connecter. Seuls les noms de groupe sont valables ; les identifiants numeriques de groupe ne sont pas reconnus. Par defaut, tous les groupes sont autorises a se connecter. Les directives de groupe allow/deny sont traitees dans l'ordre suivant : DenyGroups, AllowGroups. Voir la section MOTIFS dans ssh_config(5) pour plus d'informations a propos des motifs. Cette option peut apparaitre plusieurs fois dans sshd_config, chaque instance s'ajoutant a la liste. DenyUsers Cette option peut etre suivie d'une liste de motifs de nom d'utilisateur separes par des espaces. Les utilisateurs dont le nom correspond a un des motifs ne sont pas autorises a se connecter. Seuls les noms d'utilisateur sont valables ; les identifiants numeriques d'utilisateur ne sont pas reconnus. Par defaut, tous les utilisateurs sont autorises a se connecter. Si le motif est de la forme UTILISATEUR@HOTE, UTILISATEUR et HOTE sont verifies separement, et la connexion est restreinte a certains utilisateurs de certains hotes. Le critere HOTE peut aussi contenir des correspondances d'adresse au format CIDR adresse/taille_de_masque. Les directives allow/deny d'utilisateur sont traitees dans l'ordre suivant : DenyUsers, AllowUsers. Voir la section MOTIFS dans ssh_config(5) pour plus d'informations a propos des motifs. Cette option peut apparaitre plusieurs fois dans sshd_config, chaque instance s'ajoutant a la liste. DisableForwarding Cette option permet de desactiver toutes les redirections, y compris X11, ssh-agent(1), TCP et StreamLocal. Elle outrepasse toute autre option concernant une redirection et peut simplifier les configurations restreintes. ExposeAuthInfo Cette option permet d'ecrire un fichier temporaire contenant une liste des methodes d'authentification et des donnees d'authentification publiques (comme les cles) utilisees pour authentifier l'utilisateur. L'emplacement du fichier est indique a la session utilisateur a l'aide de la variable d'environnement SSH_USER_AUTH. La valeur par defaut est no. FingerprintHash Cette option permet de specifier l'algorithme de hachage utilise pour la journalisation des empreintes de cle. Les arguments valables sont md5 et sha256. La valeur par defaut est sha256. ForceCommand Cette option permet de forcer l'execution de la commande specifiee par ForceCommand en ignorant toute commande fournie par le client et ~/.ssh/rc si present. La commande est invoquee en utilisant l'interpreteur de commande de connexion de l'utilisateur avec l'option -c. Cette option s'applique a l'execution de l'interpreteur de commande, de la commande ou du sous-systeme. Elle s'avere particulierement utile dans un bloc Match. La commande initialement fournie par le client est disponible dans la variable d'environnement SSH_ORIGINAL_COMMAND. Specifier la commande internal-sftp forcera l'utilisation d'un serveur SFTP interne au processus qui ne necessite pas de fichier support lorsqu'il est utilise avec ChrootDirectory. La valeur par defaut est none. GatewayPorts Cette option permet de specifier si les machines distantes sont autorisees a se connecter a des ports rediriges pour le client. Par defaut, sshd(8) branche les redirections de port distant a l'adresse de bouclage (loopback address). Cela empeche les autres machines distantes de se connecter aux ports rediriges. GatewayPorts peut etre utilise pour indiquer que sshd(8) doit permettre le branchement des redirections de port distant a des adresses autres que loopback, et par consequent autoriser les autres machines a se connecter. L'argument peut etre no pour forcer les redirections de port distant a n'etre disponibles que pour l'hote local, yes pour forcer les redirections de port distant a se lier a l'adresse avec caracteres generiques ou clientspecified pour permettre au client de selectionner l'adresse a laquelle la redirection est liee. La valeur par defaut est no. GSSAPIAuthentication Cette option permet de specifier si l'authentification utilisateur basee sur GSSAPI est autorisee. La valeur par defaut est no. GSSAPICleanupCredentials Cette option permet d'indiquer si le cache des donnees d'identification des utilisateurs doit etre automatiquement vide a la deconnexion. La valeur par defaut est yes. GSSAPIStrictAcceptorCheck Cette option permet d'indiquer si l'on doit etre strict quant a l'identite de l'accepteur GSSAPI aupres duquel le client s'authentifie. Si elle est definie a yes, le client doit s'authentifier aupres du service << host >> avec le nom d'hote actuel. Si elle est definie a no, le client peut s'authentifier aupres de n'importe quelle cle de service stockee dans le magasin par defaut de la machine. Cette possibilite facilite les operations sur les machines multi-reseaux. La valeur par defaut est yes. HostbasedAcceptedAlgorithms Cette option permet de specifier les algorithmes de signature qui seront acceptes pour une authentification basee sur l'hote sous la forme d'une liste de motifs separes par des virgules. Si la liste specifiee commence par un caractere << + >>, les algorithmes de signature qu'elle contient seront ajoutes a la liste par defaut au lieu de la remplacer. Si la liste specifiee commence par un caractere << - >>, les algorithmes de signature qu'elle contient (pouvant contenir des caracteres generiques) seront supprimes de la liste par defaut au lieu de la remplacer. Si la liste specifiee commence par un caret << ^ >>, les algorithmes de signature qu'elle contient seront ajoutes au debut de la liste par defaut. La liste par defaut est : ssh-ed25519-cert-v01@openssh.com, ecdsa-sha2-nistp256-cert-v01@openssh.com, ecdsa-sha2-nistp384-cert-v01@openssh.com, ecdsa-sha2-nistp521-cert-v01@openssh.com, sk-ssh-ed25519-cert-v01@openssh.com, sk-ecdsa-sha2-nistp256-cert-v01@openssh.com, rsa-sha2-512-cert-v01@openssh.com, rsa-sha2-256-cert-v01@openssh.com, ssh-ed25519, ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521, sk-ssh-ed25519@openssh.com, sk-ecdsa-sha2-nistp256@openssh.com, rsa-sha2-512,rsa-sha2-256 La liste des algorithmes de signature disponibles peut aussi etre obtenue en utilisant la commande << ssh -Q HostbasedAcceptedAlgorithms >>. Cette option se nommait par le passe HostbasedAcceptedKeyTypes. HostbasedAuthentication Cette option permet de specifier si l'authentification par rhosts ou /etc/hosts.equiv conjointement avec une authentification de machine cliente par cle publique reussie est autorisee (authentification basee sur l'hote). La valeur par defaut est no. HostbasedUsesNameFromPacketOnly Cette option permet d'indiquer si le serveur essaiera d'effectuer une recherche de nom inverse lors d'une comparaison de nom dans les fichiers ~/.shosts, ~/.rhosts et /etc/hosts.equiv pendant une authentification basee sur l'hote. Si elle est definie a yes, sshd(8) va utiliser le nom fourni par le client plutot que de tenter lui-meme de resoudre le nom a partir de la connexion TCP. La valeur par defaut est no. HostCertificate Cette option permet de specifier un fichier contenant un certificat d'hote public. La cle publique du certificat doit correspondre a une cle d'hote privee deja specifiee a l'aide de HostKey. Par defaut, sshd(8) ne charge aucun certificat. HostKey Cette option permet de specifier un fichier contenant une clef d'hote privee utilisee par SSH. Les fichiers par defaut sont /etc/ssh/ssh_host_ecdsa_key, /etc/ssh/ssh_host_ed25519_key et /etc/ssh/ssh_host_rsa_key. Notez que sshd(8) refusera d'utiliser un fichier accessible au groupe ou aux autres et que l'option HostKeyAlgorithms restreint la liste des cles reellement utilisees par sshd(8). Il est possible d'avoir plusieurs fichiers de cle d'hote. Il est aussi possible de specifier des fichiers de cle d'hote publique a la place. Dans ce cas, les operations sur la cle privee seront deleguees a un agent ssh-agent(1). HostKeyAgent Cette option permet d'identifier le socket de domaine Unix utilise pour communiquer avec un agent qui a acces aux cles d'hote privees. Si l'argument est << SSH_AUTH_SOCK >>, l'emplacement du socket sera lu depuis la variable d'environnement SSH_AUTH_SOCK. HostKeyAlgorithms Cette option permet d'indiquer les algorithmes de signature de cle d'hote qu'offre le serveur. La valeur par defaut de cette option est : ssh-ed25519-cert-v01@openssh.com, ecdsa-sha2-nistp256-cert-v01@openssh.com, ecdsa-sha2-nistp384-cert-v01@openssh.com, ecdsa-sha2-nistp521-cert-v01@openssh.com, sk-ssh-ed25519-cert-v01@openssh.com, sk-ecdsa-sha2-nistp256-cert-v01@openssh.com, rsa-sha2-512-cert-v01@openssh.com, rsa-sha2-256-cert-v01@openssh.com, ssh-ed25519, ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521, sk-ssh-ed25519@openssh.com, sk-ecdsa-sha2-nistp256@openssh.com, rsa-sha2-512,rsa-sha2-256 La liste des algorithmes de signature disponibles peut aussi etre obtenue en utilisant la commande << ssh -Q HostKeyAlgorithms >>. IgnoreRhosts Cette option permet de specifier si les fichiers .rhosts et .shosts propres a un utilisateur doivent etre ignores lors d'une authentification basee sur l'hote. Les fichiers globaux du systeme /etc/hosts.equiv et /etc/ssh/shosts.equiv seront quant a eux toujours utilises, et cela quelle que soit la valeur de cette option. Les valeurs acceptees sont yes (la valeur par defaut) pour ignorer tous les fichiers propres aux utilisateurs, shosts-only pour autoriser l'utilisation de .shosts mais ignorer .rhosts ou no pour autoriser l'utilisation de .shosts et rhosts. IgnoreUserKnownHosts Cette option permet de specifier si sshd(8) doit ignorer le fichier ~/.ssh/known_hosts de l'utilisateur lors des authentifications basees sur l'hote pour n'utiliser que le fichier des hotes connus global du systeme /etc/ssh/ssh_known_hosts. La valeur par defaut est no. Include Cette option permet d'inclure le(s) fichier(s) de configuration specifie(s). Plusieurs noms de chemin peuvent etre specifies, chacun d'entre eux pouvant contenir des caracteres generiques glob(7), et seront developpes et traites selon l'ordre lexical. Les fichiers qui ne sont pas specifies a l'aide d'un chemin absolu sont supposes etre situes dans /etc/ssh. Une directive Include peut etre placee dans un bloc Match afin d'effectuer une inclusion conditionnelle. IPQoS Cette option permet de specifier le type de service IPv4 ou la classe DSCP pour la connexion. Les valeurs acceptees sont af11, af12, af13, af21, af22, af23, af31, af32, af33, af41, af42, af43, cs0, cs1, cs2, cs3, cs4, cs5, cs6, cs7, ef, le, lowdelay, throughput, reliability, une valeur numerique ou none pour utiliser la valeur par defaut du systeme d'exploitation. Cette option peut prendre un ou deux arguments separes par un blanc. Si un seul argument est specifie, il est utilise en tant que classe du paquet sans condition. Si deux arguments sont specifies, le premier est automatiquement selectionne pour les sessions interactives et le second pour les sessions non interactives. La valeur par defaut est af21 (donnees a faible latence) pour les sessions interactives et cs1 (effort moindre) pour les sessions non interactives. KbdInteractiveAuthentication Cette option permet de specifier si l'authentification par saisie au clavier est autorisee. Tous les styles d'authentification de login.conf(5) sont pris en charge. La valeur par defaut est yes. L'argument doit etre yes ou no. ChallengeResponseAuthentication est un alias obsolete de cette option. KerberosAuthentication Cette option permet de specifier si le mot de passe fourni par l'utilisateur pour l'authentification par mot de passe sera valide a l'aide du KDC (Centre de Distribution de Cle) Kerberos. Pour utiliser cette option, le serveur a besoin d'un fichier de cle servtab Kerberos qui autorise la verification de l'identite du KDC. La valeur par defaut est no. KerberosGetAFSToken Si AFS est actif et si l'utilisateur possede un ticket (TGT) Kerberos 5, essayer d'obtenir un jeton AFS avant d'acceder au repertoire personnel de l'utilisateur. La valeur par defaut est no. KerberosOrLocalPasswd Si l'authentification par mot de passe a l'aide de Kerberos echoue, le mot de passe sera valide a l'aide de n'importe quel mecanisme additionnel local tel que /etc/passwd. La valeur par defaut est yes. KerberosTicketCleanup Cette option permet de specifier si le fichier cache du ticket de l'utilisateur doit etre automatiquement detruit a la deconnexion. La valeur par defaut est yes. KexAlgorithms Cette option permet de specifier les algorithmes d'echange de cles KEX (Key Exchange) autorises que le serveur peut offrir aux clients. L'ordre de cette liste n'est pas important, car c'est le client qui specifie un ordre de preference. Plusieurs algorithmes peuvent etre specifies en les separant par des virgules. Si la liste specifiee commence par un caractere << + >>, les algorithmes qu'elle contient seront ajoutes a la liste par defaut au lieu de la remplacer. Si la liste specifiee commence par un caractere << - >>, les algorithmes qu'elle contient (pouvant contenir des caracteres generiques) seront supprimes de la liste par defaut au lieu de la remplacer. Si la liste specifiee commence par un caret << ^ >>, les algorithmes qu'elle contient seront ajoutes au debut de la liste par defaut. Les algorithmes de chiffrement pris en charge sont : curve25519-sha256 curve25519-sha256@libssh.org diffie-hellman-group1-sha1 diffie-hellman-group14-sha1 diffie-hellman-group14-sha256 diffie-hellman-group16-sha512 diffie-hellman-group18-sha512 diffie-hellman-group-exchange-sha1 diffie-hellman-group-exchange-sha256 ecdh-sha2-nistp256 ecdh-sha2-nistp384 ecdh-sha2-nistp521 mlkem768x25519-sha256 sntrup761x25519-sha512 sntrup761x25519-sha512@openssh.com La liste par defaut est : sntrup761x25519-sha512,sntrup761x25519-sha512@openssh.com, mlkem768x25519-sha256, curve25519-sha256,curve25519-sha256@libssh.org, ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521, diffie-hellman-group-exchange-sha256, diffie-hellman-group16-sha512,diffie-hellman-group18-sha512, diffie-hellman-group14-sha256 La liste des algorithmes d'echange de cles pris en charge peut aussi etre obtenue en utilisant la commande << ssh -Q KexAlgorithms >>. ListenAddress Cette option permet de specifier les adresses locales d'ecoute sur lesquelles sshd(8) doit attendre les connexions. On peut utiliser les formes suivantes : ListenAddress nom_hote|adresse [rdomain domaine] ListenAddress nom_hote:port [rdomain domaine] ListenAddress adresse_IPv4:port [rdomain domaine] ListenAddress [nom_hote|adresse]:port [rdomain domaine] Le qualificateur facultatif rdomain demande a sshd(8) d'ecouter dans un domaine de routage explicite. Si port n'est pas specifie, sshd va ecouter sur l'adresse et les ports specifies a l'aide de toutes les options Port. Par defaut, l'ecoute s'effectue sur toutes les adresses locales du domaine de routage par defaut actuel. Il est possible de specifier plusieurs options ListenAddress. Pour plus d'informations a propos des domaines de routage, voir rdomain(4). LoginGraceTime Le serveur se deconnecte apres ce delai si l'utilisateur n'a pas reussi a se connecter. Si la valeur est 0, il n'y a aucune limite de temps. La valeur par defaut est 120 (secondes). LogLevel Cette option permet d'indiquer le niveau de prolixite utilise lors de la journalisation des messages en provenance de sshd(8). Les valeurs possibles sont : QUIET, FATAL, ERROR, INFO, VERBOSE, DEBUG, DEBUG1, DEBUG2 et DEBUG3. La valeur par defaut est INFO. DEBUG et DEBUG1 sont equivalents. DEBUG2 et DEBUG3 indiquent des niveaux de debogage superieurs pour la sortie. Le niveau de journalisation DEBUG viole la vie privee des utilisateurs et n'est pas recommande. LogVerbose Specify one or more overrides to LogLevel. An override consists of one or more pattern lists that matches the source file, function and line number to force detailed logging for. For example, an override pattern of: kex.c:*:1000,*:kex_exchange_identification():*,packet.c:* activerait la journalisation detaillee pour la ligne 1000 de kex.c, tout le contenu de la fonction kex_exchange_identification() et tout le code du fichier packet.c. Cette option est destinee au debogage et aucun outrepassement n'est active par defaut. MACs Cette option permet de specifier les algorithmes MAC (code d'authentification de message) disponibles. L'algorithme MAC est utilise pour la protection de l'integrite des donnees. Plusieurs algorithmes peuvent etre specifies en les separant par des virgules. Si la liste specifiee commence par un caractere << + >>, les algorithmes qu'elle contient seront ajoutes a la liste par defaut au lieu de la remplacer. Si la liste specifiee commence par un caractere << - >>, les algorithmes qu'elle contient (pouvant contenir des caracteres generiques) seront supprimes de la liste par defaut au lieu de la remplacer. Si la liste specifiee commence par un caret << ^ >>, les algorithmes qu'elle contient seront ajoutes au debut de la liste par defaut. Les algorithmes qui contiennent << -etm >> calculent le MAC apres chiffrement (encrypt-then-mac). Ils sont consideres comme plus surs et leur utilisation est recommandee. Les algorithmes MAC pris en charge sont : hmac-md5 hmac-md5-96 hmac-sha1 hmac-sha1-96 hmac-sha2-256 hmac-sha2-512 umac-64@openssh.com umac-128@openssh.com hmac-md5-etm@openssh.com hmac-md5-96-etm@openssh.com hmac-sha1-etm@openssh.com hmac-sha1-96-etm@openssh.com hmac-sha2-256-etm@openssh.com hmac-sha2-512-etm@openssh.com umac-64-etm@openssh.com umac-128-etm@openssh.com La liste par defaut est : umac-64-etm@openssh.com,umac-128-etm@openssh.com, hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com, hmac-sha1-etm@openssh.com, umac-64@openssh.com,umac-128@openssh.com, hmac-sha2-256,hmac-sha2-512,hmac-sha1 La liste des algorithmes MAC disponibles peut aussi etre obtenue en utilisant la commande << ssh -Q mac >>. Match Cette option introduit un bloc conditionnel. Si tous les criteres de la ligne du Match sont respectes, les options des lignes suivantes outrepassent celles definies dans la partie globale du fichier de configuration jusqu'a ce qu'on atteigne une autre ligne Match ou la fin du fichier. Si une option apparait dans plusieurs blocs Match dont les criteres sont respectes, seule la premiere instance de l'option s'applique. The arguments to Match are one or more criteria-pattern pairs or one of the single token criteria: All, which matches all criteria, or Invalid-User, which matches when the requested user- name does not match any known account. The available criteria are User, Group, Host, LocalAddress, LocalPort, RDomain, and Address (with RDomain representing the rdomain(4) on which the connection was received). Les motifs de correspondance peuvent se composer d'entrees simples ou de listes de motifs separes par des virgules et peuvent utiliser les caracteres generiques et les operateurs de negation decrits dans la section MOTIFS de ssh_config(5). Les motifs d'un critere Address peuvent aussi contenir des groupes d'adresses au format CIDR adresse/taille_de_masque comme 192.0.2.0/24 ou 2001:db8::/32. Notez que la taille de masque specifiee doit etre coherente avec l'adresse ; specifier une taille de masque trop longue pour l'adresse ou une taille avec des bits definis dans cette partie hote de l'adresse est une erreur. 192.0.2.0/33 et 192.0.2.0/8, respectivement, sont des exemples de cette erreur. Only a subset of keywords may be used on the lines following a Match keyword. Available keywords are AcceptEnv, AllowAgentForwarding, AllowGroups, AllowStreamLocalForwarding, AllowTcpForwarding, AllowUsers, AuthenticationMethods, AuthorizedKeysCommand, AuthorizedKeysCommandUser, AuthorizedKeysFile, AuthorizedPrincipalsCommand, AuthorizedPrincipalsCommandUser, AuthorizedPrincipalsFile, Banner, CASignatureAlgorithms, ChannelTimeout, ChrootDirectory, ClientAliveCountMax, ClientAliveInterval, DenyGroups, DenyUsers, DisableForwarding, ExposeAuthInfo, ForceCommand, GatewayPorts, GSSAPIAuthentication, HostbasedAcceptedAlgorithms, HostbasedAuthentication, HostbasedUsesNameFromPacketOnly, IgnoreRhosts, Include, IPQoS, KbdInteractiveAuthentication, KerberosAuthentication, LogLevel, MaxAuthTries, MaxSessions, PAMServiceName, PasswordAuthentication, PermitEmptyPasswords, PermitListen, PermitOpen, PermitRootLogin, PermitTTY, PermitTunnel, PermitUserRC, PubkeyAcceptedAlgorithms, PubkeyAuthentication, PubkeyAuthOptions, RefuseConnection, RekeyLimit, RevokedKeys, RDomain, SetEnv, StreamLocalBindMask, StreamLocalBindUnlink, TrustedUserCAKeys, UnusedConnectionTimeout, X11DisplayOffset, X11Forwarding and X11UseLocalhost. MaxAuthTries Cette option permet de specifier le nombre maximal de tentatives d'authentification par connexion. Lorsque le nombre d'echecs atteint la moitie de cette valeur, les echecs suivants sont journalises. La valeur par defaut est 6. MaxSessions Cette option permet de specifier le nombre maximal autorise de sessions d'interpreteur de commande, de connexion ou de sous- systeme (par exemple sftp) ouvertes par connexion reseau. Les clients qui prennent en charge le multiplexage de connexions peuvent etablir plusieurs sessions. Definir MaxSessions a 1 desactive a proprement parler le multiplexage de sessions, alors que le definir a 0 interdit toute session d'interpreteur de commande, de connexion ou de sous-systeme tout en permettant la redirection. La valeur par defaut est 10. MaxStartups Cette option permet de specifier le nombre maximal de connexions simultanees non authentifiees au demon SSH. Les connexions supplementaires seront rejetees jusqu'a ce que l'authentification reussisse ou que le delai de grace defini a l'aide de l'option LoginGraceTime expire pour une connexion. La valeur par defaut est 10:30:100. Une autre possibilite consiste a activer le rejet premature aleatoire en specifiant un triplet << debut:taux:total >> (par exemple, << 10:30:60 >>). sshd(8) va alors rejeter les tentatives de connexion avec une probabilite de << taux/100 >> (30 %) s'il y a << debut >> (10) connexions non authentifiees en cours. La probabilite augmente lineairement et toutes les tentatives de connexion seront rejetees si le nombre de connexions non authentifiees atteint << total >> (60). ModuliFile Cette option permet de specifier le fichier moduli(5) qui contient les groupes Diffie-Hellman utilises pour les methodes d'echange de cles << diffie-hellman-group-exchange-sha1 >> et << diffie-hellman-group-exchange-sha256 >>. La valeur par defaut est /etc/ssh/moduli. PAMServiceName Cette option permet de specifier le nom de service utilise pour l'authentification, l'autorisation et le controle de session PAM (Pluggable Authentication Modules) lorsque UsePAM est active. La valeur par defaut est sshd. PasswordAuthentication Cette option permet de specifier si l'authentification par mot de passe est autorisee. La valeur par defaut est yes. PermitEmptyPasswords Quand l'authentification par mot de passe est autorisee, cette option permet de specifier si le serveur autorise les connexions a des comptes dont les mots de passe sont des chaines de caracteres vides. La valeur par defaut est no. PermitListen Cette option permet de specifier les adresses/ports sur lesquels une redirection de port TCP distant peut ecouter. La specification de permission d'ecoute peut etre sous une des formes suivantes : PermitListen port PermitListen hote:port Plusieurs permissions peuvent etre specifiees en les separant par des blancs. Si l'argument est any, toutes les restrictions sont supprimees et toutes les requetes d'ecoute sont autorisees. Si l'argument est none, toutes les requetes d'ecoute sont interdites. Le nom d'hote peut contenir des caracteres generiques comme decrit dans la section MOTIFS de ssh_config(5). Si le numero de port est remplace par le caractere generique << * >>, tous les ports sont autorises. Par defaut, toutes les requetes d'ecoute de redirection de port sont autorisees. Notez que l'option GatewayPorts peut par la suite restreindre les adresses qui peuvent etre ecoutees. Notez aussi que ssh(1) demandera << localhost >> comme hote d'ecoute si aucun hote d'ecoute n'a ete specifiquement demande, et que ce nom est traite differemment des adresses d'hote local explicites << 127.0.0.1 >> et << ::1 >>. PermitOpen Cette option permet de specifier les destinations vers lesquelles la redirection de port TCP est autorisee. La specification de redirection doit etre sous une des formes suivantes : PermitOpen hote:port PermitOpen adr_IPv4:port PermitOpen [adr_IPv6]:port Plusieurs redirections peuvent etre specifiees en les separant par des blancs. Si l'argument est any, toutes les restrictions sont supprimees et toutes les requetes de redirection sont autorisees. Si l'argument est none, toutes les requetes de redirection sont interdites. Si l'hote ou le numero de port est remplace par le caractere generique << * >>, tous les hotes ou ports, respectivement, sont autorises. Sinon, aucune correspondance de motif ou de recherche d'adresse n'est effectuee pour les noms fournis. Par defaut, toutes les requetes de redirection de port sont autorisees. PermitRootLogin Cette option permet de specifier si l'utilisateur root peut se connecter en utilisant ssh(1). L'argument doit etre yes, prohibit-password, forced-commands-only ou no. La valeur par defaut est prohibit-password.. Si cette option est definie a prohibit-password (ou son alias obsolete without-password), l'authentification par mot de passe et interaction au clavier est desactivee pour l'utilisateur root. Si cette option est definie a forced-commands-only, les connexions de l'utilisateur root sont autorisees avec une authentification par cle publique, mais seulement si l'option command a ete specifiee (ce qui peut etre utile pour effectuer des sauvegardes a distance meme si les connexions de l'utilisateur root sont normalement interdites). Toutes les autres methodes d'authentification sont desactivees pour l'utilisateur root. Si cette option est definie a no, l'utilisateur root n'est pas autorise a se connecter. PermitTTY Cette option permet de specifier si l'allocation de terminal pty(4) est autorisee. La valeur par defaut est yes. PermitTunnel Cette option permet de specifier si la redirection de dispositif tun(4) est autorisee. L'argument doit etre yes, point-to-point (couche 3), ethernet (couche 2) ou no. Specifier yes revient a autoriser point-to-point et ethernet. La valeur par defaut est no. Independamment de cette definition, les permissions du dispositif tun(4) selectionne doivent accorder l'autorisation d'acces a l'utilisateur. PermitUserEnvironment Cette option permet de specifier si les options environment= de ~/.ssh/authorized_keys et le fichier ~/.ssh/environment seront traites par sshd(8). L'argument doit etre yes, no ou une liste de motifs indiquant les noms de variable d'environnement a accepter (par exemple << LANG,LC_* >>). La valeur par defaut est no. Activer le traitement de l'environnement peut permettre aux utilisateurs de court-circuiter les restrictions d'acces dans certaines configurations utilisant des mecanismes comme LD_PRELOAD. PermitUserRC Cette option permet de specifier si le fichier ~/.ssh/rc sera execute. La valeur par defaut est yes. PerSourceMaxStartups Cette option permet de specifier le nombre de connexions non authentifiees permises depuis une adresse source donnee ou << none >> pour n'imposer aucune limite. Cette limite s'applique en plus de MaxStartups, la valeur la plus basse des deux etant retenue. La valeur par defaut est no. PerSourceNetBlockSize Cette option permet de specifier le nombre de bits de l'adresse source qui sont regroupes pour appliquer les limites de PerSourceMaxStartups. Il est possible de specifier la valeur pour IPv4 eventuellement suivie d'un deux-points << : >> et de la valeur pour IPv6. La valeur par defaut est 32:128, ce qui signifie que chaque adresse est consideree individuellement. PerSourcePenalties Cette option permet de controler les penalites a appliquer pour diverses conditions qui peuvent correspondre a une attaque sur sshd(8). Si une penalite est appliquee a un client, son adresse source et toutes celles du meme reseau (tel que defini par PerSourceNetBlockSize) feront l'objet d'un refus de connexion pendant un certain temps. Une penalite n'affecte pas les connexions simultanees en cours, mais plusieurs penalites pour la meme source et des connexions simultanees vont s'accumuler jusqu'a un maximum. Inversement, les penalites ne sont appliquees qu'une fois un certain seuil de temps accumule. Penalties are enabled by default with the default settings listed below but may disabled using the no keyword. The defaults may be overridden by specifying one or more of the keywords below, separated by whitespace. All keywords accept arguments, e.g. "crash:2m". crash:duree Specifier la duree pendant laquelle seront rejetes les clients qui ont cause un plantage de sshd(8) (par defaut 90 secondes). authfail:duree Specifier la duree pendant laquelle seront rejetes les clients qui se deconnectent apres avoir effectue une ou plusieurs tentatives d'authentification infructueuses (par defaut 5 secondes). refuseconnection:duration Specifies how long to refuse clients that were administratively prohibited connection via the RefuseConnection option (default: 10s). noauth:duree Specifier la duree pendant laquelle seront rejetes les clients qui se deconnectent sans essayer de s'authentifier (par defaut 1 seconde). Ce delai doit etre utilise avec prudence sous peine de penaliser des outils de recherche legitimes comme ssh-keyscan(1). grace-exceeded:duree Specifies how long to refuse clients that fail to authenticate after LoginGraceTime (default: 10s). max:duree Specifier la duree maximale pendant laquelle l'acces sera refuse pour un intervalle d'adresses sources particulier (par defaut 10 minutes). Des penalites repetees feront grimper la duree jusqu'a cette valeur maximale. min:duree Specifier la penalite minimale qui doit etre atteinte avant que l'application ne commence (par defaut 15 secondes). max-sources4:nombre, max-sources6:nombre Specifier le nombre maximal de plages d'adresses client IPv4 et IPv6 a suivre pour les penalites (par defaut : 65 536 pour les deux). overflow:mode Cette option permet de controler la maniere dont le serveur se comporte lorsque max-sources4 ou max-sources6 sont depasses. Il y a deux modes operatoires : deny-all qui rejette toutes les connexions entrantes autres que celles exemptees a l'aide de PerSourcePenaltyExemptList jusqu'a ce qu'une penalite arrive a expiration, et permissive qui autorise de nouvelles connexions en supprimant les penalites existantes plus tot (le mode par defaut est permissive). Notez que les penalites client inferieures au seuil min sont comptabilisees dans le nombre total de penalites suivies. Les adresses IPv4 et IPv6 sont suivies separement, si bien qu'un depassement dans l'un n'affectera pas l'autre. overflow6:mode Cette option permet de specifier un mode de depassement different pour les adresses IPv6. Par defaut, c'est le meme mode de depassement que celui defini pour IPv4 qui est utilise. PerSourcePenaltyExemptList Cette option permet de specifier une liste, separee par des virgules, d'adresses exemptes de penalites. Cette liste peut contenir des caracteres generiques et des intervalles au format CIDR adresse/taille_masque. Notez que la taille de masque fournie doit etre coherente avec l'adresse -- il est errone de specifier une taille de masque trop grande pour l'adresse ou avec des bits positionnes dans la partie hote de l'adresse (par exemple 192.0.2.0/33 et 192.0.2.0/8, respectivement). Par defaut, aucune adresse n'est exemptee. PidFile Cette option permet de specifier l'emplacement du fichier contenant l'identifiant du processus du demon de SSH ou none pour ne pas ecrire ce fichier. La valeur par defaut est /run/sshd.pid. Port Cette option permet de specifier le numero du port sur lequel ecoute sshd(8). La valeur par defaut est 22. Cette option peut etre specifiee plusieurs fois. Voir aussi ListenAddress. PrintLastLog Cette option permet de specifier si sshd(8) doit afficher la date et l'heure de la derniere connexion d'un utilisateur lorsque l'utilisateur se connecte en mode interactif. La valeur par defaut est yes. PrintMotd Cette option permet de specifier si sshd(8) doit afficher le contenu du fichier /etc/motd quand un utilisateur se connecte en mode interactif (sur certains systemes, il est aussi affiche par l'interpreteur de commande ou le fichier /etc/profile ou equivalent). La valeur par defaut est yes. PubkeyAcceptedAlgorithms Cette option permet de specifier les algorithmes de signature qui seront acceptes pour une authentification par cle publique sous la forme d'une liste de motifs separes par des virgules. Si la liste specifiee commence par un caractere << + >>, les algorithmes de signature qu'elle contient seront ajoutes a la liste par defaut au lieu de la remplacer. Si la liste specifiee commence par un caractere << - >>, les algorithmes de signature qu'elle contient (pouvant contenir des caracteres generiques) seront supprimes de la liste par defaut au lieu de la remplacer. Si la liste specifiee commence par un caret << ^ >>, les algorithmes de signature qu'elle contient seront ajoutes au debut de la liste par defaut. La liste par defaut est : ssh-ed25519-cert-v01@openssh.com, ecdsa-sha2-nistp256-cert-v01@openssh.com, ecdsa-sha2-nistp384-cert-v01@openssh.com, ecdsa-sha2-nistp521-cert-v01@openssh.com, sk-ssh-ed25519-cert-v01@openssh.com, sk-ecdsa-sha2-nistp256-cert-v01@openssh.com, rsa-sha2-512-cert-v01@openssh.com, rsa-sha2-256-cert-v01@openssh.com, ssh-ed25519, ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521, sk-ssh-ed25519@openssh.com, sk-ecdsa-sha2-nistp256@openssh.com, rsa-sha2-512,rsa-sha2-256 La liste des algorithmes de signature disponibles peut aussi etre obtenue en utilisant la commande << ssh -Q PubkeyAcceptedAlgorithms >>. PubkeyAuthOptions Cette option permet de definir une ou plusieurs options d'authentification par cle publique. Les mots-cles pris en charge sont : none (la valeur par defaut indiquant qu'aucune autre option n'est activee), touch-required et verify-required. L'option touch-required fait que l'authentification par cle publique utilise un algorithme d'authentificateur FIDO (c'est-a-dire ecdsa-sk ou ed25519-sk) de facon a toujours imposer la signature pour attester qu'un utilisateur physiquement present a confirme explicitement l'authentification (en general en touchant l'authentificateur). Par defaut, sshd(8) impose la presence de l'utilisateur, sauf outrepassement a l'aide d'une option authorized_keys. L'option touch-required desactive cet outrepassement. L'option verify-required impose qu'une signature de cle FIDO atteste que l'utilisateur a ete verifie, par exemple a l'aide d'un code PIN. Les mots-cles touch-required ou verify-required n'ont aucun effet sur les autres types d'authentification par cle publique non- FIDO. PubkeyAuthentication Cette option permet de specifier si l'authentification par cle publique est autorisee. La valeur par defaut est yes. RefuseConnection Indicates that sshd(8) should unconditionally terminate the connection. Additionally, a refuseconnection penalty may be recorded against the source of the connection if PerSourcePenalties are enabled. This option is only really useful in a Match block. RekeyLimit Cette option permet de specifier la quantite maximale de donnees qui peuvent etre envoyees ou recues, eventuellement suivie d'une duree maximale, avant que la cle de session ne soit renegociee. Le premier argument est specifie en octets et peut posseder un suffixe << K >>, << M >> ou << G >> pour indiquer respectivement des kilo-octets, des mega-octets ou des giga-octets. La valeur par defaut se situe entre << 1 Go >> et << 4 Go >> en fonction de l'algorithme de chiffrement. Le second argument facultatif est specifie en secondes et peut utiliser toutes les unites decrites dans la section FORMATS DE TEMPS. La valeur par defaut de RekeyLimit est default none, ce qui signifie que la renegociation de cle est effectuee apres que la quantite de donnees par defaut de l'algorithme de chiffrement a ete envoyee ou recue, et qu'aucune renegociation de cle basee sur la duree n'est effectuee. RequiredRSASize Cette option permet de specifier la taille minimale de cle RSA (en bits) que sshd(8) acceptera. Les cles d'authentification d'utilisateur et basees sur l'hote dont la taille est en dessous de cette limite seront refusees. La valeur par defaut est 1024 bits. Notez que la valeur specifiee doit etre superieure ou egale a la valeur par defaut. RevokedKeys Cette option permet de specifier l'emplacement du fichier des cles publiques revoquees ou none si on ne l'utilise pas. Les cles listees dans ce fichier seront refusees pour l'authentification par cle publique. Notez que si ce fichier n'est pas accessible en lecture, l'authentification par cle publique sera refusee pour tous les utilisateurs. Les cles peuvent etre specifiees a l'aide d'un fichier texte avec une cle par ligne, ou sous la forme d'une liste de revocations de cle OpenSSH (KRL) telle que generee par ssh-keygen(1). Pour plus d'informations a propos des KRL, voir la section LISTES DE REVOCATIONS DE CLE de ssh-keygen(1). RDomain Cette option permet de specifier un domaine de routage explicite qui s'appliquera une fois le processus d'authentification termine. La session utilisateur, ainsi que tout socket IP d'ecoute ou redirige, sera lie a ce rdomain(4). Si le domaine de routage est defini a %D, le domaine dans lequel la connexion entrante a ete recue s'appliquera. SecurityKeyProvider Cette option permet de specifier le chemin d'une bibliotheque qui sera utilisee lors du chargement des cles hebergees par un authentificateur FIDO, outrepassant ainsi le comportement par defaut consistant a utiliser le support USB HID embarque. SetEnv Cette option permet de specifier une ou plusieurs variables d'environnement a definir dans les sessions enfant ouvertes par sshd(8), sous la forme << NOM=VALEUR >>. La valeur de la variable d'environnement peut etre entouree de guillemets droits (par exemple si elle contient des blancs). Les variables d'environnement definies a l'aide de SetEnv outrepassent l'environnement par defaut et toute variable specifiee par l'utilisateur a l'aide de AcceptEnv ou PermitUserEnvironment. SshdSessionPath Remplacer le chemin par defaut de l'executable sshd-session invoque pour gerer chaque connexion. Le chemin par defaut est /usr/lib/ssh/sshd-session. Cette option est destinee a etre utilisee dans les tests. StreamLocalBindMask Cette option permet de definir le masque de mode de creation de fichier (umask) a utiliser pour creer un fichier de socket de domaine Unix pour la redirection de port local ou distant. Cette option n'est utilisee que pour la redirection d'un port vers un fichier de socket de domaine Unix. La valeur par defaut est 0177 qui cree un fichier de socket de domaine Unix qui n'est accessible en lecture et ecriture que pour son proprietaire. Notez que tous les systemes d'exploitation ne tiennent pas compte du mode de fichier pour les fichiers de socket de domaine Unix. StreamLocalBindUnlink Cette option permet de specifier si un fichier de socket de domaine Unix pour la redirection de port local ou distant doit etre supprime avant d'en creer un nouveau. Si le fichier de socket existe deja et si StreamLocalBindUnlink n'est pas activee, sshd ne pourra pas rediriger le port vers le fichier de socket de domaine Unix. Cette option n'est utilisee que pour la redirection de port vers un fichier de socket de domaine Unix. L'argument doit etre yes ou no. La valeur par defaut est no. StrictModes Cette option permet de specifier si sshd(8) doit verifier les modes et le proprietaire des fichiers et du repertoire personnel de l'utilisateur avant d'accepter une connexion. C'est en general souhaitable, parce que les novices laissent parfois accidentellement leur repertoire ou leurs fichiers accessibles en ecriture pour tout le monde. La valeur par defaut est yes. Notez que cette option ne s'applique pas a ChrootDirectory dont les permissions et proprietaire sont systematiquement verifies. Subsystem Cette option permet de configurer un sous-systeme externe (par exemple un demon de transfert de fichiers). Les arguments doivent etre un nom de sous-systeme et une commande (avec arguments optionnels) a executer lors d'une requete a ce sous-systeme. La commande sftp-server implemente le sous-systeme de transfert de fichiers SFTP. La commande internal-sftp, quant a elle, implemente un serveur SFTP interne au processus, ce qui peut simplifier les configurations utilisant ChrootDirectory pour forcer une racine de systeme de fichiers differente sur les clients. Cette commande accepte les meme arguments que sftp-server, et meme si elle est interne au processus, les options telles que LogLevel ou SyslogFacility ne s'appliquent pas a elle et doivent etre definies explicitement a l'aide d'arguments sur la ligne de commande. Par defaut, aucun sous-systeme n'est defini. SyslogFacility Cette option permet d'indiquer le code de categorie (<< facility >>) utilise lors de la journalisation des messages du demon sshd(8). Les valeurs possibles sont : DAEMON, USER, AUTH, LOCAL0, LOCAL1, LOCAL2, LOCAL3, LOCAL4, LOCAL5, LOCAL6 et LOCAL7. La valeur par defaut est AUTH. TCPKeepAlive Cette option permet de specifier si le systeme doit envoyer des messages de rappel TCP a l'autre extremite de la connexion. Si ces messages sont envoyes, la mort d'une connexion ou le plantage d'une des machines seront notifies de maniere appropriee. Cela signifie cependant que les connexions seront fermees si la route est momentanement interrompue, et cela indispose certains utilisateurs. A l'inverse, si les messages de rappel TCP ne sont pas envoyes, des sessions pourront rester indefiniment bloquees sur le serveur en laissant des utilisateurs << fantomes >> et en consommant des ressources du serveur. La valeur par defaut est yes (envoyer les messages de rappel TCP), et le serveur saura alors si le reseau tombe ou si la machine du client se plante, ce qui permet d'eviter le blocage infini de sessions. Pour desactiver l'envoi de messages de rappel TCP, cette option doit etre definie a no. TrustedUserCAKeys Cette option permet de specifier un fichier contenant les cles publiques d'autorites de certification considerees comme fiables pour signer des certificats utilisateur pour l'authentification, ou none pour ne pas utiliser un tel fichier. Chaque ligne du fichier contient une cle ; les lignes vides et les commentaires commencant par << # >> sont autorises. Si un certificat est presente pour une authentification et si la cle de la CA qui l'a signe est enregistree dans ce fichier, il pourra etre utilise pour l'authentification pour tout utilisateur faisant partie de la liste de << principals >> du certificat. Notez que les certificats qui ne possedent pas de liste de << principals >> ne seront pas acceptes pour une authentification utilisant TrustedUserCAKeys (NDT : un << principal >> est une chaine arbitraire definie au niveau du serveur pour un utilisateur et devant etre presente dans le certificat du client pour que ce dernier puisse se connecter). Pour plus de details a propos des certificats, voir la section CERTIFICATS de ssh-keygen(1). UnusedConnectionTimeout Cette option permet de specifier si et au bout de combien de temps sshd(8) doit fermer les connexions client sans canaux ouverts. Les canaux ouverts comprennent les interpreteurs de commande actifs, les executions de commande ou les sessions de sous-systeme, les reseaux connectes, les sockets, les redirections d'agent ou de X11. Les ecouteurs de redirection tels que ceux du drapeau -R de ssh(1) ne sont pas consideres comme des canaux ouverts et n'empechent pas le delai d'arriver a expiration. La valeur du delai est specifiee en secondes ou peut utiliser toute unite decrite dans la section FORMATS DE TEMPS. Notez que ce delai prend effet lorsque la connexion du client a termine l'authentification de l'utilisateur, mais avant que le client ait l'opportunite d'ouvrir un canal. Il faut etre prudent lorsqu'on utilise des valeurs de delai courtes, car elles ne donneront peut-etre pas assez de temps au client pour demander l'ouverture de ses canaux avant la fermeture de la connexion. La valeur par defaut est none et indique que les connexions sans canaux ouverts n'auront pas de delai d'expiration. Cette option s'avere utile en combinaison avec l'option ChannelTimeout. UseDNS Cette option permet de specifier si sshd(8) doit rechercher le nom de l'hote distant et verifier que le nom d'hote resolu pour l'adresse IP distante correspond en retour a exactement la meme adresse IP. Si cette option est definie a no (la valeur par defaut), les noms d'hote ne pourront pas etre utilises dans les directives from, sshd_config, Match et Host de ~/.ssh/authorized_keys, mais seulement leurs adresses IP. UsePAM Cette option permet d'activer l'interface PAM (Pluggable Authentication Module). Si elle est definie a yes, l'authentification PAM sera activee en utilisant KbdInteractiveAuthentication et PasswordAuthentication en plus du traitement du module PAM de compte et de session pour tous les types d'authentification. Etant donne que l'authentification PAM par interaction au clavier est en general equivalente a l'authentification par mot de passe, vous devez desactiver PasswordAuthentication ou KbdInteractiveAuthentication. Si UsePAM est activee, vous ne pourrez pas executer sshd(8) en tant qu'utilisateur autre que le superutilisateur. La valeur par defaut est no. VersionAddendum Cette option permet de specifier du texte additionnel a ajouter a la banniere de protocole SSH envoyee par le serveur lors d'une connexion. La valeur par defaut est none. X11DisplayOffset Cette option permet de specifier le premier numero de << display >> disponible pour les redirections de X11 par sshd(8), ce qui empeche sshd d'interferer avec les vrais serveurs X11. La valeur par defaut est 10. X11Forwarding Cette option permet de specifier si les redirections de X11 sont autorisees. L'argument doit etre yes ou no. La valeur par defaut est no. Lorsque la redirection de X11 est activee, le serveur et les affichages du client peuvent etre davantage exposes si le << display >> mandataire de sshd(8) est configure pour ecouter l'adresse generique (voir X11UseLocalhost), bien que cela ne soit pas le comportement par defaut. De plus, l'usurpation d'authentification ainsi que la verification et la substitution des donnees d'authentification se produisent cote client. Le risque de securite induit par l'utilisation de la redirection de X11 est que le serveur d'affichage X11 du client soit expose a une attaque lorsque le client SSH demande la redirection (voir les avertissements a propos de ForwardX11 dans ssh_config(5)). Un administrateur systeme peut vouloir proteger les clients qui pourraient s'exposer a des attaques en demandant involontairement une redirection de X11, ce qui pourrait justifier de definir cette option a no. Notez que la desactivation des redirections de X11 n'empeche pas les utilisateurs de rediriger le trafic X11, puisqu'ils pourront toujours installer leurs propres redirecteurs. X11UseLocalhost Cette option permet de specifier si sshd(8) doit lier le serveur de redirection de X11 a l'adresse de bouclage (loopback address) ou a l'adresse generique (wildcard address). Par defaut, sshd lie le serveur de redirection a l'adresse de bouclage et definit la partie nom d'hote de la variable d'environnement DISPLAY a localhost, ce qui empeche des machines distantes de se connecter au << display >> mandataire. Neanmoins, certains clients X11 anciens pourraient ne pas fonctionner avec cette configuration. Il est possible de definir X11UseLocalhost a no pour specifier que le serveur de redirection doit etre lie a l'adresse generique. L'argument doit etre yes ou no. La valeur par defaut est yes. XAuthLocation Cette option permet de specifier le chemin complet du programme xauth(1) ou none pour ne pas en utiliser. La valeur par defaut est /usr/bin/xauth. FORMATS DE TEMPS Les arguments de la ligne de commande et les options du fichier de configuration de sshd(8) qui specifient des temps peuvent etre exprimes en utilisant une sequence de la forme : temps[qualificateur], ou temps est une valeur entiere positive et qualificateur une des unites suivantes : secondes s | S secondes m | M minutes h | H heures d | D jours w | W semaines Tous les membres de la sequence sont additionnes les uns aux autres pour obtenir la valeur totale de temps. Exemples de format de temps : 600 600 secondes (10 minutes) 10m 10 minutes 1h30m 1 heure 30 minutes (90 minutes) SYMBOLES Les arguments de certaines options peuvent utiliser des symboles qui sont developpes a l'execution : %% Le caractere litteral << % >>. %C L'identification des extremites de la connexion, contenant quatre valeurs separees par des espaces : adresse client, numero de port client, adresse serveur et numero de port serveur. %D Le domaine de routage dans lequel la connexion entrante a ete recue. %F L'empreinte de la cle de la CA. %f L'empreinte de la cle ou du certificat. %h Le repertoire personnel de l'utilisateur. %i L'identifiant de la cle dans le certificat. %K La cle de la CA encodee en base64. %k La cle ou le certificat encodes en base64 pour l'authentification. %s Le numero de serie du certificat. %T Le type de la cle de la CA. %t Le type de la cle ou du certificat. %U L'UID numerique de l'utilisateur cible. %u Le nom d'utilisateur. AuthorizedKeysCommand accepte les symboles %%, %C, %D, %f, %h, %k, %t, %U et %u. AuthorizedKeysFile accepte les symboles %%, %h, %U et %u. AuthorizedPrincipalsCommand accepte les symboles %%, %C, %D, %F, %f, %h, %i, %K, %k, %s, %T, %t, %U et %u. AuthorizedPrincipalsFile accepte les symboles %%, %h, %U et %u. ChrootDirectory accepte les symboles %%, %h, %U et %u. RoutingDomain accepte le symbole %D. FICHIERS /etc/ssh/sshd_config Ce fichier contient les donnees de configuration de sshd(8). Il ne doit etre accessible en ecriture que pour le superutilisateur, mais il est recommande (bien que non necessaire) qu'il soit accessible en lecture pour tous. VOIR AUSSI sftp-server(8), sshd(8) AUTEURS OpenSSH est derive de la version originale et libre 1.2.12 de ssh par Tatu Ylonen. Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo de Raadt et Dug Song ont corrige de nombreux bogues, reintroduit de nouvelles fonctionnalites et cree OpenSSH. Markus Friedl a contribue a la prise en charge des versions 1.5 et 2.0 du protocole SSH. Niels Provos et Markus Friedl ont contribue a la prise en charge de la separation des privileges. TRADUCTION La traduction francaise de cette page de manuel a ete creee par Laurent GAUTROT et Lucien Gentis Cette traduction est une documentation libre ; veuillez vous reporter a la GNU General Public License version 3: https://www.gnu.org/licenses/gpl-3.0.html concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITE LEGALE. Si vous decouvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message a debian-l10n-french@lists.debian.org Linux 6.13.7-arch1-1 September 15, 2024 Linux 6.13.7-arch1-1