Le shell sécurisé est un fork du projet OpenSSH. Les correctifs de sécurité pour la correction des vulnérabilités découvertes dans les versions ultérieures d'OpenSSH sont intégrés dans le shell sécurisé, tout comme les corrections de bogues et les fonctionnalités. Depuis septembre 2012, la version du shell sécurisé dans Oracle Solaris est 2.0. La commande ssh –Vaffiche le numéro de version.
Les fonctionnalités suivantes sont mises en oeuvre pour le protocole v2 dans cette version du shell sécurisé :
Mot-clé ForceCommand : force l'exécution de la commande spécifiée indépendamment de ce que l'utilisateur tape sur la ligne de commande. Ce mot-clé est très utile à l'intérieur d'un bloc Match. Cette option de configuration sshd_config est semblable à l'option command="..." dans $HOME/.ssh/authorized_keys .
Protection par phrase de passe AES-128 : les clés privées qui sont générées par la commande ssh-keygen sont protégées avec l'algorithme AES-128. Cet algorithme protège les clés qui viennent d'être générées et les clés rechiffrées, comme par exemple lorsqu'une phrase de passe est modifiée.
Option –u de la commande sftp-server : permet à l'utilisateur de définir explicitement un umask sur des fichiers et des répertoires. Cette option remplace la valeur umask par défaut de l'utilisateur. Pour voir un exemple, reportez-vous à la description de Subsystem à la page de manuel sshd_config(4).
Mots-clés supplémentaires pour les blocs Match : AuthorizedKeysFile, ForceCommand et HostbasedUsesNameFromPacketOnly sont pris en charge à l'intérieur des blocs Match. Par défaut, la valeur de AuthorizedKeysFile est $HOME/.ssh/authorized_keys et celle de HostbasedUsesNameFromPacketOnly est no. Pour utiliser les blocs Match, reportez-vous à la section Création d'exceptions d'utilisateur et d'hôte aux valeurs par défaut de shell sécurisé.
Les techniciens d'Oracle Solaris proposent des corrections de bogues dans le projet OpenSSH. Ils ont également intégré les fonctionnalités Oracle Solaris suivantes dans le fork du shell sécurisé :
PAM : le shell sécurisé utilise PAM. L'option de configuration UsePAM OpenSSH n'est pas prise en charge.
Séparation des privilèges : le shell sécurisé n'utilise pas le code de séparation des privilèges du projet OpenSSH. Le shell sécurisé sépare le traitement de l'audit, la conservation des enregistrements et la nouvelle saisie du traitement des protocoles de session.
Le code de séparation des privilèges du shell sécurisé est toujours actif et ne peut pas être désactivé. L'option OpenSSH UsePrivilegeSeparation n'est pas prise en charge.
Environnement linguistique : le shell sécurisé prend entièrement en charge la négociation de la langue définie dans la norme RFC 4253 relative au protocole de transfert du shell sécurisé. Une fois que l'utilisateur est connecté, le profil du shell de connexion de l'utilisateur peut remplacer les paramètres d'environnement linguistique négociés avec le shell sécurisé.
Audit : le shell sécurisé est totalement intégré dans le service d'audit d'Oracle Solaris. Pour plus d'informations sur le service d'audit, reportez-vous à la section Gestion de l’audit dans Oracle Solaris 11.2 .
Prise en charge GSS-API : GSS-API peut s'utiliser pour l'authentification des utilisateurs et pour l'échange de clés initiales. La fonction GSS-API est définie dans RFC4462, Generic Security Service Application Program Interface.
Commandes proxy : le shell sécurisé fournit des commandes de proxy pour les protocoles SOCKS5 et HTTP. Pour obtenir un exemple, reportez-vous à la section Configuration de connexions du shell sécurisé par défaut aux hôtes en-dehors d'un pare-feu.
Dans les versions d'Oracle Solaris, le shell sécurisé resynchronise l'indicateur de compatibilité SSH_OLD_FORWARD_ADDR à partir du projet OpenSSH.