Aller au contenu principal

generate-key-ssh

  1. Configuratiion clés ssh

CREATE key ssh and copy

  • ssh-keygen -f ~/mekoo-key-ecdsa -t ecdsa -b 521
  • copy key
    • ssh-copy-id -i ~/.ssh/mekoo-key-ecdsa machine@Ip
    • Check port 22 is open (/etc/ssh/ssh_config)
ssh-keygen -t ed25519 -C "<comment>"
ssh-copy-id -i ~/.ssh/ed25519.pup machine@Ip

Ajout de votre clé SSH à l'agent ssh

  1. Démarrer l'agent ssh en arrière-plan.

Avant d'ajouter une nouvelle clé SSH à l'agent ssh pour gérer vos clés, vous devez avoir vérifié les clés SSH existantes et généré une nouvelle clé SSH.

eval "$(ssh-agent -s)"
  1. Ajoutez votre clé privée SSH à ssh-agent.

[ssh-key] generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent

Si vous avez créé votre clé avec un nom différent, ou si vous ajoutez une clé existante qui porte un nom différent, remplacez id_ed25519 dans la commande par le nom de votre fichier de clé privée.

Si vous avez ajouter un mot de pass à votre clé il vous sera demander de la renseignée.

ssh-add ~/.ssh/id_ed25519

Donnez des droit à un fichier

  • create file : touch ~/.ssh/config
  • Give privilève access : chmod 600 ~/.ssh/config
  • editer le fichier : sudo nano ~/.ssh/config

SSH

Fonctionnement par key (prive et public)

key private = la clé privé propre à l'utulisateur key publique = vocation à être deployer sur les serveurs distants

format (rsa, ecdsa) ecdsa = format long allant jusqu"à 521

Configurer SSH pour qu'il pointe vers un répertoire différent

Si vous n'avez pas enregistré votre paire de clés SSH dans le répertoire par défaut, configurez votre client SSH pour qu'il pointe vers le répertoire où la clé privée est stockée.

  1. Ouvrez un terminal et exécutez la commande suivante :
eval $(ssh-agent -s)
ssh-add /home/$USER/ssh-custom/id_ed25519
  1. Enregistrez ces paramètres dans le fichier ~/.ssh/config. Par exemple, le fichier ~/.ssh/config :
# GitLab.com
Host gitlab.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/gitlab_com_rsa

# Private GitLab instance
Host gitlab.company.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/example_com_rsa

Mettez à jour la phrase de passe de votre clé SSH

Vous pouvez mettre à jour la phrase de passe de votre clé SSH :

ssh-keygen -p -f /path/to/ssh_key

Mettre à jour votre paire de clés RSA vers un format plus sûr

Si votre version d'OpenSSH est comprise entre 6.5 et 7.8, vous pouvez enregistrer vos clés SSH RSA privées dans un répertoire plus sûr.

ssh-keygen -o -f ~/.ssh/id_rsa

Alternativement, vous pouvez générer une nouvelle clé RSA avec le format de cryptage le plus sécurisé avec ce qui suit

ssh-keygen -o -t rsa -b 4096 -C "<comment>"

Générer une paire de clés SSH pour une clé de sécurité matérielle FIDO2

[generate-key] pour la valeur de keys important définir un passphrase

ssh-keygen -t ecdsa -b 521
ssh-keygen -t ed25519 -C "<comment>"
ssh-keygen -t rsa -b 2048 -C "<comment>"

Si votre clé de sécurité prend en charge les clés résidentes FIDO2, vous pouvez l'activer lors de la création de votre clé SSH :

ssh-keygen -t ed25519-sk -O resident -C "<comment>"

[ssh-copy-id]

ssh-copy-id -i /home/.ssh/keys_ecdsa_private node@host

[ssh-connected-serveur-distant]

ssh -i ~/.ssh/id_ecdsa vagrant@192.168.231.184

Ensuite taper le mot de passe saisie d ela keys

[remarque-specifique-pour-une-ip]

from="10.0.0.1,*.exemple.com" no-X11-forwarding ssh-rsa keys-ecdsa=== vagarnt

Pour éviter de sasir le -i le mieux est d'utulisé un agent ssh [use-agant-ssh]

ssh-add -l 
eval `ssh-agent`
ssh-add
ssh-add -L

ssh vagrant@192.168.231.184

[ssh-config]

sudo touch ~/.ssh/config
sudo chmod 600 ~/.ssh/config
sudo nano ~/.ssh/config

In File config:

Host 192.168.231.56
User vagrant ou autres
Port 22
IdentityFile /home/vagrant/.ssh/my_keys_private
Logelvel INFO
Compression yes
ForwardAgent yes
ForwardX11 yes

Pour se connecter on peut faire: ssh 192.168.231.180

[astuce-bypass-conf]

ssh -F /dev/null node@host

[restart-service]

exemple nginx:

# use apt or yum
sudo apt install epel-release
sudo apt install nginx
sudo systemctl -l enable nginx
sudo systemctl -l start nginx

firewall

active firewall ufw

sudo ufw allow ssh
sudo ufw allow 22
sudo ufw enable
sudo ufw status

[gitlab-ssh] gitlab

[SSH] ssh/keygen