article thumbnail image
Published 2021. 7. 7. 22:39

1. 인스턴스 생성


2. 탄력적 IP 주소 할당

 

$ find / -name RC1_server
$ cd ~/.ssh
$ cp /Users/seon-uchan/Downloads/RC1_server.pem ./

 


3. 서버 접속

$ cd ~/.ssh
$ sudo ssh -i "RC1_server.pem" ubuntu@ec2-13-124-93-100.ap-northeast-2.compute.amazonaws.com

 


4. nginx 설치, 연결

$ sudo apt update
$ sudo apt-get install nginx
$ sudo service nginx start
$ sudo netstat -ntlp

 

구동 확인

 

주소창

ec2-13-124-93-100.ap-northeast-2.compute.amazonaws.com

입력


5. IP 접속

13.124.93.100

탄력적 ip 주소도 접근 성공


6. php 설치

$ sudo apt install php-fpm

 

/etc/nginx/sites-available/default 파일을 열고 다음 코드를 찾는다.

#location ~ \.php$ {
#	include snippets/fastcgi-php.conf;
#
#	# With php-fpm (or other unix sockets):
#	fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
#	# With php-cgi (or other tcp sockets):
#	fastcgi_pass 127.0.0.1:9000;
#}

 

아래와 같이 변경한다.

location ~ \.php$ {
  include snippets/fastcgi-php.conf;
#
#	# With php-fpm (or other unix sockets):
  fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
#	# With php-cgi (or other tcp sockets):
#	fastcgi_pass 127.0.0.1:9000;
}

 

php를 자동 인식하게 하기

index index.html index.htm index.nginx-debian.html;

 

아래와 같이 변경 : index.php 추가

index index.html index.htm index.nginx-debian.html index.php;

 

다시 로드해야 적용된다.

$ service nginx reload

 

/var/www/html/ 디렉토리에 phpinfo.php를 만들고 다음 코드를 입력하고 저장

$ sudo vim phpinfo.php

<?php phpinfo(); ?>


7. mysql 설치

$ sudo apt install mysql-server
$ sudo mysql -u root -p mysql

 

차례로 입력

use mysql;
update user set plugin='' where user='root';
flush privileges;
quit;

 

$ sudo ufw allow out 3306/tcp

 

7.1 Workbench 연결

 

Ref : https://abc1211.tistory.com/287

 

 

7.2 phpmyadmin 접속

https://www.woobi.net/board2/4298


8. 도메인 연결 - 가비아

서버의 IP 주소도 파악하였고, 도메인도 등록하였으니 이제 이 둘을 연결하는 일만 남았다. 이는 DNS 서버 셋팅을 통해 가능하다.

앞서 여러분이 사용했던 가비아 서비스에서는 도메인 호스팅과 더불어 DNS 서버 역시 기본적으로 제공한다.

앞서 자신의 도메인 정보가 나왔던 화면으로 다시 이동하자. 초기 화면에서 다음 그림과 같이 ‘도메인’ 링크를 클릭한다:

 

AWS IPV4, IPV6에 대한 80번, 443번 포트 열기

8.1 DNS 호스트 설정

 

 


9. HTTPS 적용

Let’s Encrypt SSL 인증서

Let’s Encrypt는 무료이며 자동화된 개방형 인증 기간이라고 사이트에서 소개하고 있다.

Let’s Encrypt에서는 HTTPS 프로토콜에 사용하는 SSL(TLS) 인증서를 무료로 발급해 주는 기관이다.

루트 도메인, 서브 도메인, 와일드카드 서브 도메인 인증서 등 다양하게 무료로 발급이 가능하다.

 

발급된 인증서는 유효기간이 90일이며 만료 30일 전부터 갱신할 수 있고 갱신 가능 횟수는 무제한이다.

 

9.1 Repository 수정

$ sudo apt-get install letsencrypt

 

let's encrypt 패키지 명이 certbot으로 변경되었다.

letsencrypt 패키지를 설치할 때 ppa:certbot/certbot 저장소를 추가해야 한다.

$ sudo add-apt-repository ppa:certbot/certbot

 

9.2 python-certbot-nginx 설치

$ sudo apt-get install python-certbot-nginx

 

9.3 SSL 인증서 생성하고 적용하기

$ sudo certbot --nginx www.5eon3ooch4n.shop

 

이메일 주소 입력

Agree

Y

도메인 입력 : 5eon3ooch4n.shop

 

9.4 Redirection 설정

 

 

인증서 만료일 확인

$ sudo certbot certificates

 

인증서 자동 갱신 

$ sudo certbot renew --dry-run

 

 

 

'🚦 Server > AWS' 카테고리의 다른 글

REST API  (0) 2021.10.06
AWS RDS 구축  (0) 2021.07.09
Bitnami local 서버 구축, 포트포워딩  (0) 2021.07.07
nginx  (0) 2021.07.02
APM 자동 설치  (0) 2021.06.28
복사했습니다!