CTFd 구축 & 리버스 프록시로 https 세팅하기

d0razi·2025년 1월 1일

CTFd 설치

먼저 아래 명령어로 도커에 ctfd를 올려준다.

docker run -p 8000:8000 -itd ctfd/ctfd

리버스 프록시 구축

Let’s Encrypt를 사용해 HTTPS 인증서 발급

https는 인증서를 필요로 하기 때문에 사용자에게 무료로 TLS 인증서를 발급해주는 비영리기관인 Let's Encrypt를 사용하여 인증서를 발급 받는다.

sudo apt update
sudo apt install -y certbot python3-certbot-nginx

Nginx 설치 및 구성

설치

sudo apt install -y nginx

설정 파일

sudo vi /etc/nginx/sites-available/ctfd
server {
    listen 80;
    server_name your-domain.com;

    location / {
        proxy_pass http://localhost:8000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}
sudo ln -s /etc/nginx/sites-available/ctfd /etc/nginx/sites-enabled/
sudo nginx -t  # 설정 테스트
sudo systemctl reload nginx

HTTPS 설정

Certbot으로 HTTPS 인증서 발급 및 설정

sudo certbot --nginx -d your-domain.com
sudo systemctl reload nginx
profile
Discord : mete0r_mo

0개의 댓글