Procédure d'enregistrement de la clé publique dans Deploy keys du référentiel github et de l'extraction avec ssh sur AWS EC2 (Amazon Linux 2)
SSH se connecte au serveur (avec ec2-user) et crée une clé publique et privée avec l'utilisateur que tu veux git pull
.
console
//Cette fois, je veux git pull avec un utilisateur nommé tamorieeeen
$ sudo su - tamorieeeen
// .Créer un répertoire ssh(Si non)
$ mkdir .ssh
$ ls -la | grep ssh
drwxrwxr-x 2 tamorieeeen tamorieeeen 6 Aug 31 14:38 .ssh
//Je pense que la permission du répertoire est 775, alors changez-la en 700
$ chmod 700 .ssh/
$ cd .ssh
// id_rsa_Créez une clé avec le nom github
$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/tamorieeeen/.ssh/id_rsa): id_rsa_github
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in id_rsa_github.
Your public key has been saved in id_rsa_github.pub.
$ ls -l
-rw------- 1 tamorieeeen tamorieeeen 1675 Aug 31 14:42 id_rsa_github
-rw-r--r-- 1 tamorieeeen tamorieeeen 433 Aug 31 14:42 id_rsa_github.pub
Enregistrez la clé publique créée précédemment depuis Paramètres> Déployer les clés> Ajouter la clé de déploiement du référentiel que vous souhaitez enregistrer.
Vous pouvez voir la clé publique avec less et la copier.
console
$ less id_rsa_github.pub
[email protected]
Donnez au titre un nom descriptif, collez la clé publique que vous venez de copier dans la clé et appuyez sur «Ajouter une clé» pour terminer.
sur ʻAdd key
Si la clé privée a un nom de fichier autre que ʻid_rsa, définissez config. (Dans le cas de ʻid_rsa
, il devrait être défini car il va voir par défaut ...)
console
$ pwd
/home/tamorieeeen/.ssh
//Ajouter des paramètres à la configuration
$ vi config
Host github.com
HostName github.com
IdentityFile ~/.ssh/id_rsa_github
User git
$ ls -l
-rw-rw-r-- 1 tamorieeeen tamorieeeen 81 Aug 31 15:16 config
-rw------- 1 tamorieeeen tamorieeeen 1675 Aug 31 14:42 id_rsa_github
-rw-r--r-- 1 tamorieeeen tamorieeeen 433 Aug 31 14:42 id_rsa_github.pub
//Remplacez les autorisations de configuration par 600
$ chmod 600 config
Si ce qui suit est sorti, la connexion ssh est terminée
.ssh / config
après @
.
(J'étais accro à Permission refusée (publickey) .
ici)console
$ ssh -T [email protected]
Hi tamorieeeen/repository_name! You've successfully authenticated, but GitHub does not provide shell access.
Si vous voulez en cloner un nouveau, vous pouvez simplement le cloner avec l'URL de Clone with SSH
sur github, mais cette fois, c'est un référentiel qui a déjà été cloné avec https, alors changez la méthode de connexion de https à ssh.
console
//Déplacer vers le référentiel cloné
$ pwd
/home/tamorieeeen/repository
//Vérifiez le référentiel distant actuel
$ git remote -v
origin https://github.com/tamorieeeen/repository.git (fetch)
origin https://github.com/tamorieeeen/repository.git (push)
//Changer l'URL du référentiel distant en ssh
$ git remote set-url origin [email protected]:tamorieeeen/repository.git
//Vérifiez s'il a changé
$ git remote -v
origin [email protected]:tamorieeeen/repository.git (fetch)
origin [email protected]:tamorieeeen/repository.git (push)
//Essayez de tirer
$ git pull origin develop
From github.com:tamorieeeen/repository
* branch develop -> FETCH_HEAD
Already up to date.
J'ai pu le tirer en toute sécurité, alors j'ai terminé.
Recommended Posts