FAQ:SSH RSA1

De WikiFr_dbSQWare
Aller à la navigation Aller à la recherche

Explications

Si vous utilisez un Linux "récent" pour le point central, vous risquez d'avoir des problèmes de clés ssh pour vous connecter à des OS plus anciens.
Cela vient du fait que ssh ne supporte plus les clés de type RSA1.
Exemple de cas :

ssh oracle@myoraclehost
Pseudo-terminal will not be allocated because stdin is not a terminal.
Unable to negotiate with 10.201.666.130 port 22: no matching host key type found. Their offer: ssh-rsa,ssh-dss
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: unexplained error (code 255) at io.c(228) [sender=3.2.3]
Fail to 'rsync  -aHv  --delete -e "ssh -o BatchMode=yes -o StrictHostKeyChecking=no" /home/dbsqware/dbSQWare/SQWareProduction/oracle oracle@myoraclehost:~/SQWareProduction/.' !

Configuration

3 étapes : - Préparation d'un fichier de surcharge ssl (~/.ssh/openssl.cnf) - Ajout d'une variable d'environnement pour pointer vers ce fichier (OPENSSL_CONF) - Ajout des surchrges pour certains hosts (~/.ssh/config)

~/.ssh/openssl.cnf)

On accepte les signatures sha1 dans la conf ssl.

cat << EOFCAT >> ~/.ssh/openssl.cnf
.include /etc/ssl/openssl.cnf
[openssl_init]
alg_section = evp_properties
[evp_properties]
rh-allow-sha1-signatures = yes
EOFCAT

OPENSSL_CONF

Variable d'environnement pour la conf ssl surchargée.

cat << EOFCAT >> ~/.bashrc
export OPENSSL_CONF=~/.ssh/openssl.cnf
EOFCAT

~/.ssh/config

Mettez les noms de vos hosts à la place de "myoraclehost" ...

cat << EOFCAT >> ~/.ssh/config
# CentOS release 5 + RedHat release 5 + CentOS release 6 + RedHat release 6
Host myoraclehost
  KexAlgorithms +diffie-hellman-group14-sha1
  MACs +hmac-sha1
  HostKeyAlgorithms +ssh-rsa
  PubkeyAcceptedKeyTypes +ssh-rsa
  PubkeyAcceptedAlgorithms +ssh-rsa
EOFCAT