라벨이 [AWS]인 게시물 표시

[AWS] Windows 에서 Linux 인스턴스 연결을 위한 PuTTY 사용방법

이미지
AWS 콘솔을 통하여 EC2 인스턴스를 생성하게 되면 SSH 접속을 위한 Key pair 를 사용하게 됩니다. Namsan.pem 과 같이 pem 형식의 파일을 다운로드 받을 수 있습니다. Mac 사용자의 경우 pem 파일을 이용해  Linux 인스턴스에 접속이 가능하지만 Windows 사용자의 경우에는 PuTTy 에서 PEM 파일을 지원하지 않기 때문에 별도의 PPK 파일을 생성하여야만 Linux 인스턴스에 접속이 가능합니다. 필요한 프로그램을 다운로드 하기 위해 puTTy 다운로드 페이지로 이동합니다. https://www.chiark.greenend.org.uk/~sgtatham/putty/ 해당페이지에서  puttygen.exe 파일과  putty.exe 파일을 다운로드 합니다. 1. puttygen 을 통한 PPK 파일 생성 다운로드한 puyttygen 을 실행한 화면 입니다. Conversions – import key 메뉴를 선택합니다. EC2 인스턴스 생성시 다운로드한 PEM 파일을 선택 합니다. 아래와 같이 Key 파일이 import 됩니다. Type 을 SSH-2 RSA 로 선택 한 후 Save private key 버튼을 클릭합니다. 파일생성시 암호문을 설정하지 않았다는 경고창이 팝업되지만 “예” 를 선택하고 넘어가면 됩니다. 탐색기에서 생성할 키파일을 입력하고 “저장” 합니다. 이제 putty 접속시 사용할 PPK 파일 생성이 완료 되었습니다. 이제 Linux 인스턴스에 접속해 보겠습니다. 2. putty 를 통한 인스턴스 접속 PPK 생성이 완료되면 이제 putty 를 통해 인스턴스 접속이 가능합니다. putty.exe 를 실행합니다. Host Name 에   username@public_Ip    형식으로 이름을 입력합니다. 이때 인스턴스 생성시 설정한 AMI 별로 아래와  같은 사용자 이름이 설정됩니다.

[AWS] Bastion Host 를 활용한 SSH 접근통제 #2

이미지
지난 포스팅에서 Bastion Host 를 구성하여 WebServer SSH 에 접근권한을 제어하는 방법에 대하여 알아 보았습니다. 지난포스팅 보러가기 -> [AWS] Bastion Host 를 활용한 SSH 접근통제 #1  하지만 지난시간에 적용한 구성은 보안상으로 문제점이 발생합니다. BastionHost 와 WebServer 가 동일한 인스턴스 접속Key를 사용하기 때문에 BastionHost 가 보안 취약점에 의해 외부에 노출 되는경우  WebServer 도 동시에 영향을 미치게 됩니다. < 동일한 Instance 접속키 사용에 따라 보안 취약점 발생> 이러한 보안 취약점 해결을 위하여 이번 포스팅에서는 아래 구성과 같이 instance 접속키를 별도로 구성해 보도록 하겠습니다. <instance 접속키 분리를 통해 보약취약점 제거> 우선 AWS 콘솔로 이동해서 신규 적용할 Key 를 생성하도록 하겠습니다. EC2 메뉴 좌측에서 Key Pairs 를 선택합니다. 기존에 생성한 인스턴스 키 목록이 표출 됩니다. Create Key Pair 를 클릭하여 신규 Key 를 생성 하겠습니다. Web Server 에 사용할 Key 이름을 설정하고 Create 를 선택 합니다. “web” 이라는 명칭으로 키를 생성해 보겠습니다. 키가 생성되면 자동으로 web.pem 파일이 다운로드 됩니다. 이제 생성된 key 파일을 이용해 Instance 를 새로 생성 하도록 하겠습니다. 기존 서비스가 운영 중인 경우 동일한 instance 를 활용하기 위해서는 AMI 백업을 진행하고 해다 이미지를 활용해 신규 Instance 를 생성 합니다. 생성 하고자 하는 인스턴스를 선택한 후  image > Create image 메뉴를 선택합니다. 생성할 image 이름을 등록합니다. 운영중인 서버라면 “No reboot” 옵션에 체크해야 인스턴스가 재부팅 되지 않습니다.

[AWS] Lambda + API GateWay를 이용해 간단한 RESTful API 만들기 #2

이미지
지난 시간에 이어서 Lambda + API Gateway를 이용해 간단한 RESTful API 만들기 2편을 진행하겠습니다. 이전 포스팅에서 Lambda를 이용하여 함수를 작성해보는 것 까지 진행했었는데요. 그렇다면 이번 포스팅에서는 API Gateway를 통해 요청 된 리소스들을 작성한 Lambda Function이 실행되도록 연결해보도록 하겠습니다. 먼저 API Gateway 서비스로 이동합니다. 시작을 누르고 나오는 화면에서 우리는 새로운 API를 만드려고하니까 새 API를 체크하시고 이름과 설명을 작성합니다. 작성 후 API 생성 버튼을 누르면 새로운 API Gateway가 생성됩니다. 여기까지 왔다면, 이제 실제 API를 정의하고 만들어봐야겠죠? 상단의 작업 버튼을 누르면 여러가지 작업들의 목록이 보여집니다. 여기서 먼저 리소스를 생성하겠습니다. 리소스는 말 그대로 이 API가 어떤 내용을 가지고 있는 것인지를 나타내는데요. 예를 들어 회원에 대한 API를 만드실거면 리소스이름을 member로 설정하시면 이 API의 경로는 /(루트) 하위의 member 라는 리소스를 가지게되는 것입니다. 여기선 실제로 member라는 리소스를 사용하겠습니다. 리소스를 생성하면 아래와 같이 /member라는 리소스가 생성됩니다. 그럼 이제 이 member라는 리소스에 메서드를 추가시킬 건데요. 여기서 메서드는 HTTP 메소드를 의미합니다. 기본적으로는 GET, POST, PUT, DELETE 등이 있습니다. 간단하게 알아보자면. GET – URL이 가진 정보를 검색하기 위해 서버 측에 요청하는 메소드 POST – URL에 폼 입력을 처리하기 위해 구성한 메소드 PUT – POST와 유사한 방식이며 일반적으로 웹서버에 변경을 요청하는 메소드 DELETE – 말 그대로 URL에 삭제를 요청하는 메소드 로 정리할 수 있다. 우리는 먼저 POST 메소드 부터 추가해보겠습니다. 위와 같이 작업목록에서 이번엔 메서드 생성 버튼을 누르고

[AWS] Bastion Host 를 활용한 SSH 접근통제 #1

이미지
AWS 에서 Instance 를 생성하여 사용하고 있다면 유지관리를 위하여 서버에 SSH 접속을 하는 경우가 생기게 됩니다. 기본적으로 무료로 제공되는  Security Group(SG) 을 Chaining으로 구성 하게 되면 간략하게  특정 EC2 인스턴스 에게만 SSH 접속을 허용하는 보안 구성이 가능합니다. 구성하고자 하는 모형은 아래와 같습니다. [SecurityGroup을 통한 SSH 접근제어 구성] AWS 보안 구성을 하기전에는 먼저 Security Group을 생성한 후 EC2 인스턴스 생성시 해당 Security 그룹을 적용하는 방법을 사용하는 것이 순서입니다. 하지만 이미 서버가 운영중에  추가 보안구성을 하는 경우를 감안해서 EC2 인스턴스를 먼저 생성한 후에 Security Group 설정을 진행 하겠습니다. 우선 Bastion Host 역할을 할 EC2 인스턴스를 생성해 보도록 하겠습니다. EC2 Dashboard 로 이동해 Launch Instance 를 선택합니다. Amazone Linux 를 선택 합니다. Free Tier 가 적용되는 T2 Micro 를 선택하고 Review and Launch 를 선택 합니다. Review 화면이 나오면 Launch 를 선택합니다. Key Pair 를 새로 생성하고 Download Key Pair 를 선택하여 Key 파일을 다운로드 한후 Launch Instance 를 선택합니다. View Instance 를 선택하여 생성된 EC2 인스턴스를 확인 합니다. 인스턴스가 정상적으로 생성되었습니다. 접속 IP가  54.157.118.232 인  Instance 가 생성되었습니다. 동일한 방법으로 Web Server 역할을 수행할 EC2 Instance 를 생성해 보도록 하겠습니다. 접속 IP 가 34.224.165.38 인 instance가 생성되었습니다. 분류하기 쉽게