본문 바로가기
공학

Ubuntu 서버에 Nginx 설치 및 보안 설정 가이드 – 2025년 최신 기준

by 댐쇼 2025. 5. 12.

Ubuntu 서버에 Nginx 설치 및 보안 설정 가이드 – 2025년 최신 기준

Nginx는 빠르고 가벼우며 안정성이 뛰어난 웹 서버 소프트웨어로, 전 세계에서 가장 많이 사용되는 웹서버 중 하나입니다. 이 글에서는 Ubuntu 서버에 Nginx를 설치하고, 보안 설정까지 마치는 전 과정을 상세히 안내합니다. AWS, GCP, Azure 등 어떤 클라우드 환경에서도 동일하게 적용할 수 있습니다.

1. 서버 사전 준비

Ubuntu 22.04 LTS 이상 버전의 서버 인스턴스가 준비되어 있어야 하며, SSH 접속이 가능한 상태여야 합니다.

ssh -i "my-key.pem" ubuntu@서버IP

2. Nginx 설치

APT 패키지 관리자를 사용하여 간단히 설치할 수 있습니다.

sudo apt update
sudo apt install nginx -y

설치 완료 후 웹 브라우저에서 서버의 퍼블릭 IP를 입력하면 기본 Nginx 환영 페이지가 표시됩니다.

3. Nginx 서비스 관리

sudo systemctl start nginx   # Nginx 시작
sudo systemctl enable nginx  # 부팅 시 자동 실행
sudo systemctl status nginx  # 상태 확인

4. UFW 방화벽 설정 (Ubuntu 기본 보안 기능)

UFW 방화벽을 활성화하여 필수 포트만 개방합니다.

sudo ufw allow OpenSSH
sudo ufw allow 'Nginx Full'
sudo ufw enable
sudo ufw status

이 설정은 포트 22(SSH), 80(HTTP), 443(HTTPS)를 허용합니다.

5. Nginx 설정 파일 위치 및 구조

  • /etc/nginx/nginx.conf – 전체 설정 파일
  • /etc/nginx/sites-available/ – 개별 사이트 설정
  • /etc/nginx/sites-enabled/ – 실제 적용되는 설정

기본 설정 파일 편집 시:

sudo nano /etc/nginx/sites-available/default

6. HTTPS 보안 인증서 적용 (Let’s Encrypt)

Let's Encrypt를 통해 무료 SSL 인증서를 설정할 수 있습니다.

sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d example.com -d www.example.com

도메인 연결이 되어 있어야 하며, DNS 설정 완료 후 위 명령어를 실행합니다.

인증서 자동 갱신 설정:

sudo systemctl status certbot.timer

자동 갱신이 설정된 상태인지 확인 가능합니다.

7. 보안 강화를 위한 추가 설정

  • 디렉터리 접근 제한: autoindex off
  • 버전 숨기기: server_tokens off;
  • DDoS 완화: 요청 제한 설정
  • 파일 업로드 제한: client_max_body_size 설정

예시:

server {
    ...
    server_tokens off;
    client_max_body_size 10M;
    ...
}

8. 설정 적용 및 테스트

sudo nginx -t        # 설정 문법 검사
sudo systemctl reload nginx  # 변경사항 적용

맺음말

Nginx는 설치와 설정이 비교적 간단하지만, 보안은 별도로 반드시 강화해야 합니다. 특히 UFW 방화벽 설정과 HTTPS 적용은 최소한의 필수 조치입니다. 위 과정을 차근히 따라 하시면 안전하고 효율적인 리눅스 웹 서버 환경을 구축할 수 있습니다.

이제 여러분의 서버는 외부 공격에 대비된, 안전한 웹 서비스 운영 환경이 되었습니다.

 

2025.05.02 - [분류 전체보기] - Ubuntu vs CentOS – 서버 운영체제의 차이점

 

Ubuntu vs CentOS – 서버 운영체제의 차이점

Ubuntu vs CentOS – 서버 운영체제의 차이점과 선택 기준 (2025년 최신)리눅스 서버를 구축할 때 가장 많이 고민하게 되는 것이 어떤 배포판을 사용할 것인가입니다. 대표적으로 사용되는 두 가지는

infopeople.kr