Je dois utiliser SSH sur ma machine pour accéder à mon site Web et à ses bases de données (établissement d'un lien symbolique, mais je m'éloigne du sujet).
Problème suivant: ssh-keygen -t dsa
J'entre la commande: Pour générer une paire de clés dsa publique / privée. Je l'enregistre dans la valeur par défaut ( /home/user/.ssh/id_dsa
): Et entrez deux fois la phrase secrète
alors je récupère ceci:
AVERTISSEMENT: FICHIER DE CLÉ PRIVÉE NON PROTÉGÉ!
Les autorisations 0755 pour '/home/etc.ssh/id_rsa' sont trop ouvertes. Il est recommandé que vos fichiers de clé privée ne soient PAS accessibles aux autres. Cette clé privée sera ignorée. bad permissions: ignore key: [puis le FILE PATH dans VAR / LIB / SOMEWHERE]
Maintenant, pour contourner ce problème, j’ai essayé
sudo chmod 600 ~/.ssh/id_rsa sudo chmod 600 ~/.ssh/id_rsa.pub
Mais peu de temps après que mon ordinateur se soit gelé - et lors de la connexion, il y avait un could not find .ICEauthority error
. J'ai contourné ce problème et supprimé les fichiers SSH, mais je veux pouvoir utiliser les autorisations appropriées pour éviter ces problèmes à l'avenir. Comment dois-je configurer ICEauthority, ou où dois-je enregistrer les clés SSH ou quelles autorisations doivent-elles avoir? L'utilisation d'une machine virtuelle serait-elle préférable?
Ceci est tout nouveau et je suis sur une courbe d'apprentissage très raide, donc toute aide appréciée.
chmod -R 600 ~/.ssh
.chmod 700 $HOME/.ssh
etchmod 600 $HOME/.ssh/id_rsa
chmod
commandes que vous affichez. Soit c'est une coïncidence, soit vous exécutez d'autres commandes que vous ne nous indiquez pas.Réponses:
chmod 600 ~/.ssh/id_rsa; chmod 600 ~/.ssh/id_rsa.pub
(c.-à-d.chmod u=rw,go= ~/.ssh/id_rsa ~/.ssh/id_rsa.pub
) sont corrects.chmod 644 ~/.ssh/id_rsa.pub
(iechmod a=r,u+w ~/.ssh/id_rsa.pub
) serait également correct, maischmod 644 ~/.ssh/id_rsa
(iechmod a=r,u+w ~/.ssh/id_rsa
) ne le serait pas. Votre clé publique peut être publique. Ce qui compte, c'est que votre clé privée soit privée.De plus, votre
.ssh
répertoire lui-même ne doit être accessible en écriture que par vous:chmod 700 ~/.ssh
ouchmod u=rwx,go= ~/.ssh
. Vous devez bien sûr pouvoir le lire et accéder aux fichiers qu'il contient (autorisation d'exécution). Ce n'est pas directement nuisible si les autres peuvent le lire, mais ce n'est pas utile non plus.Tu n'as pas besoin
sudo
. Ne pas utilisersudo
pour manipuler vos propres fichiers, cela ne peut que conduire à des erreurs.L'erreur à propos de
.ICEauthority
n'est pas liée auxchmod
commandes que vous affichez. Soit c'est une coïncidence, soit vous exécutez d'autres commandes que vous ne nous indiquez pas.la source
Je souhaite ajouter aux réponses ci-dessus que, pour moi, mon répertoire personnel (
~/
) devait également disposer des autorisations755
, quelles que soient les autorisations de~/.ssh
et les fichiers qui y figurent. (C'était sur un Synology NAS, cela pourrait ne pas s'appliquer à tous les linux)la source