모험가

Terraform (Key Pair 생성 및 전송) 본문

Terraform

Terraform (Key Pair 생성 및 전송)

라리음 2022. 6. 22. 18:23

 

이 글은 인프런의 스스로 구축하는 AWS 클라우드 인프라 with 테라폼을 보며 정리합니다.

 

 

 

 

aws ec2 -> 키페어 -> 키페어 생성

 

 

 

 

pem 파일을 메모장으로 연 후 복사하여

 

cloud9 환경에 새파일로 넣어 놓음

 

 

 

 

 

참고로 키페어는 프라이빗해야해서 절대로 내용을 다른곳에 올리시면 안됩니다. 

 

 

 

 

 

 

 

순서

 

 

리눅스 ssh-keygen 명령어를 이용해서 Key Pair 생성 후 AWS Import

 


1. ssh-keygen -t rsa -b 4096 -C "" -f "$HOME/.ssh/<키페어이름>" -N ""

 

만들어진 것 확인

 

 

 

 

 

 

2. sudo cp /home/ec2-user/.ssh/<키페어이름> /home/ec2-user/.ssh/<키페어이름>.pem

 

 

확인

 

 

 

 

 

 

 

 

 

 

 

 

 

AWS CLI로 AWS Import

 

 

 

 

 


1. aws ec2 import-key-pair --key-name "<키페어이름>" --public-key-material fileb://~/.ssh/<키페어이름>.pub

 

 

이때 이미 aws에서 만든 키페어랑 이름이 겹침

 

 

 

 

이때 aws에서 지우고 실행하면  cli 명령어로 aws에 import 됨 (솔직히 굳이..?임)

 

 

 

 

 

ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ

 

 

 

 

 

 

 

Terraform으로 key pair를 AWS로 전송

 

 

 

 

참조 : https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/key_pair

 

Terraform Registry

 

registry.terraform.io

 

 

 

 

 

 

 

 

0.key 폴더/0.key.tf 파일 생성 후 작성

resource "aws_key_pair" "deployer" {
  key_name   = "deployer-key"
  public_key = "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQD3F6tyPEFEzV0LX3X8BsXdMsQz1x2cEikKDEY0aIj41qgxMCP/iteneqXSIFZBp5vizPvaoIR3Um9xK7PGoW8giupGn+EPuxIA4cDM4vzOqOkiMPhz5XK0whEjkVzTo4+S0puvDZuwIsdiW9mxhJc7tgBNL0cYlWSYVkz4G/fslNfRPW5mYAM49f4fhtxPb5ok4Q2Lg9dPKVHO/Bgeu5woMc7RY0p1ej6D4CKFE6lymSDJpW0YHX/wqE9+cfEauh7xZcG0q9t2ta6F6fmX0agvpFyZo8aFbXeUBr7osSCJNgvavWbM/06niWrOvYX2xwWdhXmXSrbX8ZbabVohBK41 email@example.com"
}

 

 

 

deployer은 원하는 이름

deployer-key는 만들 이름 (tf-key-pair)

public_key는  cat ~/.ssh/tf-key-pair.pub 으로 복사해와서 붙여 넣으면 됨.

 

 

 

혹은 자체적으로 지정해주면 됨

 

 

 

 

cd 0.key

tf init

tf plan

tf apply로 하면 키페어가 aws로 전송됨

 

 

 

tf destroy로 키페어를 삭제도 가능

'Terraform' 카테고리의 다른 글

Terraform ( Application Load Balancer(ALB) - 1 )  (0) 2022.06.23
Terraform ( EC2 )  (0) 2022.06.22
Terraform ( cloud9 환경 구성)  (0) 2022.06.22
Terrafrom (S3,DynamoDB)  (0) 2022.06.09
Terraform (var 변수 구성 및 output)  (0) 2022.06.07