Notice
Recent Posts
Recent Comments
Link
«   2024/07   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

개발공부일지

AWS , PuTTY , FileZilla, apache 본문

ETC

AWS , PuTTY , FileZilla, apache

보람- 2023. 8. 16. 12:04

목차

1. 서버란?

2. 호스팅

3. 호스팅과 클라우드 비교

4. AWS

5. PuTTY

6. FileZilla


1. 서버란?

- 외부에서 접속이 가능한 컴퓨터로 서비스를 배포할때 필요한 

- 하나의 컴퓨터에 여러의 유저가 접속하는 것

- 로컬서버도 있지만 외부에서도 가능해야한다.

 

- 만약, 집에서 공유기 연결하고 80포트 열고 서비스를 제공한다고 하면!

   - 컴퓨터를 항상 켜두어야한다.

   - 외부에서 많은 사람이 몰릴 경우 인터넷 자체에 제한이 걸린다.

   - 병목현상이 일어나지않게 서버구축을 해야한다.

→ 그래서 호스팅을 사용한다! 

 

 

 

2. 호스팅 (웹 호스팅)

- 파일을 올려두면 서버 구축을 다 해준다.

- 유료이지만 자체 세팅이 되어있어서 편리하다.

- 단점 :  유동적으로 맞출수없어서 최대치로 시작하면 접속량이적을때는 비용손실이고,

              낮게 설정하면 최대치 접속량일 경우 서버가 터진다. (그 예로 대학교 수강신청!)

→ 그래서 클라우드 시스템이 나왔다! (가상컴퓨터)

 

 

 

3. 호스팅과 클라우드 비교

- 호스팅은 CPU, RAM, HDD 등을 전부 지정을 해두고 사용하는것이고
- 클라우드는 CPU, RAM, HDD 등이 따로 모여있고, 각각에서 조금씩 뽑아 사용하는것 (유동적으로)
   → 대표적으로 AWS, 구글클라우드, 네이버, KT클라우드, AZURE
- 호스팅은 외부에 컴퓨터를 두는것이라 고정을 시켜두고, 유동적으로 다룰수없다.
- 클라우드는 수정이 가능하고, 유동적으로도 켜두고 꺼두고 처리가 가능하다. (세세한 조작이 가능)

- 컴퓨터에는 최소치로 CPU, RAM, HDD, MAINBOARD 가 필요하다.

- 회사들 마다 다르겠지만 단순 웹페이지라면 호스팅을 사용한다.

- 많은 클라우드 중에서 AWS로  EC2를 사용하기!

 

 

 

4. AWS

- 아마존 웹 서비스 (클라우드)

- 인스턴스 생성하기 → 우분투가 설치된 컴퓨터를 만든것과 같아!!!!

 

- EC2 : 하나의 컴퓨터라고 생각하면된다!

- ROUTE 53 : 호스팅영역을 이용해서 도메인과 아이피를 연결해준다.

- Ubunut : LTS(버그가 잡혀있고 오래 서비스를 할거라는??)

- 64비트 (x86)

- 키페어 : 윈도우는 ppk사용, 맥은 pem사용 guniee22 키파일 잃어버리않게 파일 보관잘하기!

- HTTP 트래픽 허용 : 80포트를 열어주겠다는것 HTTPS는 443

 

- 인스턴스 ID

- 퍼블릭 IPv4 주소 (외부주소)

- 퍼블릭 DNS (도메인네임서버)

- VPC ID, 서브넷 ID : 인스턴스 만들면서 자동으로 할당된 ID (따로 건드릴필요X)

- IAM 역할 : 권한과 관련된 서비스

- Auto Scaling 그룹 이름 : 자동으로 인스턴스를 생성해서 늘리거나 줄일때 사용, 로드 밸런싱과 같이 사용하게된다.

   (접속량이 많을때 인스턴스를 생성하고 다시 줄이는)

- 보안에서 인바운드규칙, 아웃바운드 규칙 

  - 인바운드 규칙 : 서버기준으로 요청이 들어왔을때 (하나하나 조절해주기)

  - 아웃바운드 규칙 : 외부요청 보낼때 규칙

 

★ Mac의 경우 (터미널에서 이대로입력)

1. SSH 클라이언트를 엽니다.
2. 프라이빗 키 파일을 찾습니다. 이 인스턴스를 시작하는 데 사용되는 키는 guniee22.pem입니다.
3. 필요한 경우 이 명령을 실행하여 키를 공개적으로 볼 수 없도록 합니다.
4. 퍼블릭 DNS을(를) 사용하여 인스턴스에 연결:

 

★ Window의 경우 putty를 실행해서 퍼블릭 주소입력, 키파일로 연결하기

 

 

 

5. PuTTY

 

- PUTTY는 열어두는동안 계속 실행이 된다.

 

- sudo apt update : 최신버전의 로그를 다운받는것

- sudo apt upgrade : 업그레이드는 최신버전 로그를 기준으로 설치를 하는것!

- sudo apt install apache2 : apache2 설치

 

 

 

6. FileZilla

- 파일질라를 다운받고 사이트 관리자 열고 주소, 키파일 

- 권한에 -rw-r--r-- 읽는것밖에 안되는 상황

    - chmod read, write, execute

    - 소유자, 그룹, 그외 사용자가 있다.

       - 소유자/ 그룹은 root (최상위)

       - 나는 그 외사용자 others (ubuntu)

- chmod   /var/www/html index.html

- sudo chmod 777 html -R  을 입력해줘서 권한을 수정하고 파일을 올릴수가있다.

 

- apache로 웹페이지를 배포함!

- 라이브서버처럼 apache라는 프로그램이 파일을 받아서 응답을 해준것

- sudo service apache2 stop, start : 백그라운드에서 하는것을 멈추고 실행하게 할수있다

- apache2 폴더에서 sites-evailable, ports.conf  포트관련된 내용들이 담겨있다. 

 

 


 오늘의 포인트와 남겨두기 ★

 

키 페어 키파일 관리 잘하기!!!

    (해킹당하거나 잃어버리면 다른사람이 내 서버를 사용할수가있게되고 비용이 발생할수도있음)

 

※ 생성한 인스턴스 : 1GiB, 하드디스크 8GiB

 

※ 도커 : 백그라운드에서 돌아가고있는것  (도커라는 프로그램은 VM)

 VM 버츄얼머신 (os안에 os를 실행하는, 컴퓨터에서 핸드폰을 실행시키는)  -  docker (도커)

 

  참고하기

https://recipes4dev.tistory.com/175

 

리눅스 chmod 명령어 사용법. (Linux chmod command) - 리눅스 파일 권한 변경.

1. 리눅스 파일 사용 권한 리눅스에서, 파일(File)을 사용해 할 수 있는 작업은 크게 세 가지로 나눌 수 있습니다. 파일에 저장된 데이터를 읽기. (r = read). 파일에 데이터를 쓰기. (w = write). 파일 실

recipes4dev.tistory.com

 

nginx : apache와 대비되는 최신배포 

 

 ip 주소는 숫자.숫자.숫자.숫자로 이루어져있다. (255.255.255.255)

- IP IPv4,  IP IPv6

 

※ certbot / python3-certbot-apache

 

※ 포트포워딩

 

OS

- window, linux, mac os, android, unix, tizen, ios

- window는 커널이 달라서 winAPI를 사용한다.

- 리눅스는 유닉스 기반, 우분투는 리눅스 기반, red hat/ centOS도 리눅스 기반

- 리눅스(우분투)를 쓰는 이유 : GUI가 없어 가볍기 때문에(마우스 포인터 사용X)

 

※ 도메인 만들기

https://www.gabia.com/

 

웹을 넘어 클라우드로. 가비아

그룹웨어부터 멀티클라우드까지 하나의 클라우드 허브

www.gabia.com