ubuntu

Ubuntu Server Apache2 설치 및 기본 설정

BBB1004 2025. 2. 5. 15:35
728x90
반응형

📌 실제 Ubuntu 서버 기본 설치 후 Apache2 설정하기

1️⃣ Apache2 설치

sudo apt install apache2 -y

2️⃣ Apache2 서비스 관리

sudo service apache2 restart  # Apache2 재시작
sudo service apache2 status   # Apache2 상태 확인

3️⃣ 방화벽 설정 (HTTP 및 HTTPS 허용)

sudo ufw allow 80  # HTTP 포트 열기
sudo ufw allow 443 # HTTPS 포트 열기

🔍 Apache2 가상 호스트 설정 (기본 페이지 및 403 Forbidden 설정)

1️⃣ 현재 Apache2 가상 호스트 설정 확인

sudo apache2ctl -S

2️⃣ 기본 VirtualHost 설정 수정

sudo nano /etc/apache2/sites-available/000-default.conf

아래 내용을 수정:

<VirtualHost *:80>
    ServerAdmin <사용자 이메일>
    ServerName <사설IP 혹은 공인IP 등 반드시 기재>

    # 403 Forbidden 설정 (보안 강화 목적)
    DocumentRoot /var/www/html/<원하시는 폴더명>
    <Directory /var/www/html/<원하시는 폴더명>>
        Require all denied
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/default-80-error.log
    CustomLog ${APACHE_LOG_DIR}/default-80-access.log combined
</VirtualHost>

3️⃣ 403 Forbidden 디렉토리 생성 및 권한 설정 (보안 강화 목적)

403 Forbidden 디렉토리는 보안 강화를 위해 반드시 생성해야 합니다. 이 디렉토리는 기본 DocumentRoot로 설정되며, 외부 접근을 막아 불필요한 요청을 차단할 수 있습니다.

sudo mkdir -p /var/www/html/<원하시는 폴더명>
sudo chmod 755 /var/www/html/<원하시는 폴더명>

4️⃣ 기본 사이트 활성화 및 Apache2 재시작

sudo a2ensite 000-default.conf
sudo systemctl reload apache2

🔒 기본 SSL VirtualHost 설정 (HTTPS 보안 설정)

1️⃣ 기본 SSL VirtualHost 설정 파일 편집

sudo nano /etc/apache2/sites-available/000-default-ssl.conf

아래 내용을 추가 및 수정:

<VirtualHost *:443>
    ServerAdmin <사용자 이메일>
    ServerName <사설IP 혹은 공인IP 등 반드시 기재>

    # 403 Forbidden 설정 (보안 강화 목적)
    DocumentRoot /var/www/html/<원하시는 폴더명>
    <Directory /var/www/html/<원하시는 폴더명>>
        Require all denied
    </Directory>

    SSLEngine on
    SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
    SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key

    ErrorLog ${APACHE_LOG_DIR}/default-443-error.log
    CustomLog ${APACHE_LOG_DIR}/default-443-access.log combined
</VirtualHost>

2️⃣ 403 Forbidden 디렉토리 생성 및 권한 설정 (보안 강화 목적)

sudo mkdir -p /var/www/html/<원하시는 폴더명>
sudo chmod 755 /var/www/html/<원하시는 폴더명>

3️⃣ HTTP 및 HTTPS 기본 사이트 활성화

sudo a2ensite 000-default.conf
sudo a2ensite 000-default-ssl.conf
sudo systemctl reload apache2

4️⃣ Apache2 최종 재시작

sudo systemctl restart apache2

이제 Ubuntu Server에서 Apache2가 정상적으로 설치 및 설정되었습니다! 🚀

(이 글은 실제 블로그 주인의 성공 사례를 기반으로 작성되었습니다.)

728x90
반응형