๐ซง AWS์ Nginx๋ฅผ ์ค์นํ์ฌ https ์ ์ฉ์ ํด์ค๋ค
1. nginx ์ค์น
sudo apt-get install -y nginx nginx-common nginx-full
2. ์ธ์ฆ์ ๋ฐ๊ธ
apt-get update -y
apt-get install software-properties-common -y
3. certbot ์ค์น
apt-get install certbot -y
sudo certbot certonly -d [๋๋ฉ์ธ ์ฃผ์] --manual --preferred-challenges dns
๋ง์ฝ์ ๋๋ฉ์ธ ์ฃผ์๊ฐ ๋๊ฐ๋ผ๋ฉด ๋ค์ -d [๋๋ฉ์ธ์ฃผ์] ๋ฅผ ์ถ๊ฐํด์ฃผ๋ฉด ๋๋ค!!
์ฌ๊ธฐ์ ์ด์ ์ด๋ฉ์ผ์ ์์ฑํ๊ณ ์ฝ๊ด ๋์๊ฐ ๋์ค๋๋ฐ ๋ ๋ค ๋์ํ๋ค!!!
4. nginx.conf ์ค์
sudo vi /etc/nginx/nginx.conf
user www-data;
worker_processes auto;
pid /run/nginx.pid;
include /etc/nginx/modules-enabled/*.conf;
events {}
http {
upstream app {
server 127.0.0.1:8080;
}
server {
listen 80;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
ssl_certificate /etc/letsencrypt/live/[๋๋ฉ์ธ ์ฃผ์]/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/[๋๋ฉ์ธ ์ฃผ์]/privkey.pem;
# Disable SSL
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_ciphers ECDH+AESGCM:ECDH+AES256:ECDH+AES128:DH+3DES:!ADH:!AECDH:!MD5;
add_header Strict-Transport-Security "max-age=31536000" always;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 10m;
location / {
proxy_pass http://app;
}
}
}
80ํฌํธ(http)๋ก ์ ์ํ๋ฉด 443ํฌํธ(https)๋ก ๋ฆฌ๋ค์ด๋ ํธ ํ๋ค๋ ์ฝ๋์.
์คํ๋ง ํฌํธ๋ฒํธ๋ 8080์ด๊ธฐ ๋๋ฌธ์ ec2๋ด๋ถ์ 8080ํฌํธ๋ก ์ฐ๊ฒฐํด์ค๋ค๋ ์๋ฏธ์ด๋ค!!!
๐ ์ด๋ ๊ฒ ํ๋ฉด ๋๋ฉ์ธ ์ด๋ฆ์ ํตํด ์ ์ํ ๊ฒฝ์ฐ ๋ณด์ ์ ์ฉ์ด ์ ๋๋ ๊ฒ์ ํ์ธํ ์ ์๋ค.
๐ช ์ค์ํ ์
ec2์ 443ํฌํธ๋ฅผ ๊ฐ๋ฐฉํด์ผ ๋๋ค!!!! (์ธ๋ฐ์ด๋ ๊ท์น ํธ์ง์์)
๐ซง Let's Encrypt ์๋ ์ธ์ฆ์ ๊ฐฑ์
sudo vi /etc/crontab
์๋ ์ฝ๋๋ฅผ ์ถ๊ฐํด์ค๋ค.
15 3 * * * certbot renew --quiet --renew-hook "/etc/init.d/nginx reload"
'AWS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
AWS EC2์ Redis ์ค์นํ๊ธฐ | EC2 ๋ด๋ถ์ ์ค์นํ๊ธฐ (0) | 2023.02.14 |
---|