기술 가이드

Debian Etch에 ImpressCMS 1.0 Final 설치하기

4 min read 서버 설치 업데이트됨 21 Sep 2025
Debian Etch에 ImpressCMS 1.0 설치 가이드
Debian Etch에 ImpressCMS 1.0 설치 가이드

간단요약: 이 가이드는 Debian Etch 최소 설치 환경에 ImpressCMS 1.0 Final을 설치하는 실무형 단계별 안내입니다. Apache, PHP, MySQL 설치와 설정, 가상호스트 구성, 파일 권한 설정, 설치 마법사 사용 및 설치 후 점검 체크리스트를 포함합니다.

중요: 이 문서는 실무 가이드이며 이론적 배경을 다루지 않습니다. 제공된 명령과 경로는 예시이므로 실제 환경에 맞게 조정하세요.

버전 및 저자

버전: 1.0
저자: Oliver Meyer

이 문서는 Debian Etch에 ImpressCMS 1.0 Final을 설치하는 방법을 설명합니다. ImpressCMS는 동적 웹 사이트를 쉽고 안전하게 구축·유지하기 위한 커뮤니티 개발 콘텐츠 관리 시스템입니다. 여기서는 한 가지 실무적 설치 방법을 제시합니다.

사전 준비

이 안내서는 네트워크 설치로 구성된 최소 Debian Etch 시스템으로 작성되었습니다. 예시 VM 구성:

  • 호스트명: server1.example.com
  • IP: 192.168.0.100
  • 게이트웨이: 192.168.0.2
  • 모든 비밀번호 예시: howtoforge

필요한 권한: 루트 또는 sudo 사용 권한이 필요합니다.

1 필요한 패키지 설치

다음 명령으로 Apache, PHP, MySQL 관련 패키지를 설치합니다.

apt-get install apache2 libapache2-mod-php5 php5-mysql mysql-server mysql-client

설치가 끝나면 서비스가 정상 기동하는지 확인하세요.

2 MySQL 구성

2.1 바인드 주소

MySQL 서버가 모든 네트워크 인터페이스에서 수신하도록 설정을 변경합니다.

vi /etc/mysql/my.cnf

다음 행을 찾아 주석 처리합니다.

bind-address = 127.0.0.1

변경 후:

# bind-address = 127.0.0.1

설정을 적용하려면 MySQL을 재시작합니다.

/etc/init.d/mysql restart

2.2 MySQL 루트 사용자 비밀번호 설정

루트 사용자 비밀번호를 설정합니다 (환경에 맞는 비밀번호로 교체).

mysqladmin -u root password %sql_root_password%
mysqladmin -h server1.example.com -u root password %sql_root_password%

2.3 ImpressCMS 데이터베이스 및 사용자 생성

ImpressCMS 전용 데이터베이스를 생성합니다.

mysqladmin -u root -p create impresscms

그 다음, 데이터베이스 사용자를 생성하고 권한을 부여합니다.

mysql -u root -p

MySQL 프롬프트에서:

GRANT CREATE, ALTER, INDEX, DROP, CREATE TEMPORARY TABLES, SELECT, INSERT, UPDATE, DELETE ON impresscms.* TO 'impresscms_admin'@'localhost' IDENTIFIED BY '%impresscms_admin_password%';
GRANT CREATE, ALTER, INDEX, DROP, CREATE TEMPORARY TABLES, SELECT, INSERT, UPDATE, DELETE ON impresscms.* TO 'impresscms_admin'@'localhost.localdomain' IDENTIFIED BY '%impresscms_admin_password%';
FLUSH PRIVILEGES;
quit;

중요: 위 명령에서 ‘%impresscms_admin_password%’는 실제 강력한 비밀번호로 교체하세요.

3 Apache 가상호스트(vhost) 설정

문서 루트와 트러스트 디렉터리를 생성합니다.

mkdir /var/www/impresscms/
mkdir /var/www/impresscms_trust/

가상호스트 설정 파일을 만듭니다.

vi /etc/apache2/sites-available/impresscms

예시 구성:

NameVirtualHost 192.168.0.100:80

    ServerName server1.example.com
    ServerAdmin [email protected]
    DocumentRoot /var/www/impresscms/
    LogLevel warn
    ErrorLog /var/log/apache2/impresscms_error.log
    CustomLog /var/log/apache2/impresscms_access.log combined

새 사이트를 활성화하고 Apache를 재시작합니다.

a2ensite impresscms
/etc/init.d/apache2 restart

4 ImpressCMS 다운로드 및 파일 배치

항상 최신 버전을 확인하세요: http://www.impresscms.org/modules/mastop_publish/?tac=Download

예시 (문서 작성 시 버전 1.0):

cd /tmp/
wget http://downloads.sourceforge.net/impresscms/impresscms_1.0_final.tar.gz
tar xvfz impresscms_1.0_final.tar.gz

압축을 푼 후 htdocs의 내용을 가상호스트 문서 루트로 복사합니다.

cp -R /tmp/htdocs/* /var/www/impresscms/

파일 권한을 변경합니다.

chown -R www-data:www-data /var/www/impresscms/ /var/www/impresscms_trust/
chmod -R 755 /var/www/impresscms/uploads/ /var/www/impresscms/cache/ /var/www/impresscms/templates_c/ /var/www/impresscms/mainfile.php

참고: 위 코드 블록은 원문에 포함된 형태를 그대로 유지했습니다. 실제로는 다음과 같이 두 개의 명령으로 나누어 실행하는 것이 일반적입니다:

chown -R www-data:www-data /var/www/impresscms/ /var/www/impresscms_trust/
chmod -R 755 /var/www/impresscms/uploads/ /var/www/impresscms/cache/ /var/www/impresscms/templates_c/
chmod 444 /var/www/impresscms/mainfile.php  # 설치 후 권한 변경 예시

5 설치(웹 마법사)

브라우저에서 http://server1.example.com/ 를 열면 설치 마법사가 실행됩니다. 설치 과정 중 추가 언어 파일은 ImpressCMS SourceForge 페이지에서 확인할 수 있습니다.

스크립트가 서버 구성 체크를 수행하며 모든 항목이 초록색으로 표시되어야 합니다.

파일 및 디렉터리 권한을 확인합니다. 트러스트 경로를 “/var/www/impresscms_trust”로 설정하고 경로를 생성하세요.

데이터베이스 이름, 사용자, 비밀번호를 입력합니다(3.3절에서 생성한 값 사용).

계속 진행하면 설치 스크립트가 데이터베이스 테이블을 생성하고 초기 데이터를 삽입합니다.

관리자 계정 정보를 입력합니다 (예: admin).

설치가 완료되면 사이트 보기를 클릭합니다.

설치가 끝난 후, 보안을 위해 설치 디렉터리를 삭제하고 mainfile 권한을 변경합니다.

rm -Rf /var/www/impresscms/install/
chmod 444 /var/www/impresscms/mainfile.php

이제 설치 시 만든 관리자 계정으로 로그인할 수 있습니다.

6 설치 후 점검표(관리자 체크리스트)

  • 설치 디렉터리(/var/www/impresscms/install/) 삭제 여부 확인
  • mainfile.php 권한이 읽기 전용(444)인지 확인
  • uploads, cache, templates_c 디렉터리 소유자가 웹서버 사용자(www-data)인지 확인
  • MariaDB/MySQL의 루트 및 CMS 사용자 암호가 강력한지 확인
  • Apache 로그(/var/log/apache2/)에 에러가 없는지 확인
  • 웹사이트의 주요 페이지(공개 페이지, 로그인, 관리자 대시보드) 접속 확인

7 보안 권장사항

  • MySQL 원격 접속이 필요하지 않다면 bind-address를 로컬로 제한하세요.
  • SSL(HTTPS)을 적용하여 관리자 로그인과 데이터 전송을 보호하세요.
  • 주기적 백업(파일 + 데이터베이스)을 설정하세요.
  • PHP와 서버 패키지를 최신 보안 업데이트로 유지하세요.

8 문제 해결(간단한 런북)

  1. Apache가 시작하지 않음
    • /var/log/apache2/error.log 확인
    • 포트 충돌 확인: netstat -tulpen | grep :80
  2. PHP 에러(페이지가 비정상)
    • Apache에서 PHP 모듈이 활성화되었는지 확인: a2enmod php5 후 재시작
    • php.ini 설정(메모리 제한, 업로드 크기 등) 확인
  3. 데이터베이스 연결 실패
    • my.cnf의 bind-address 설정과 MySQL 재시작 확인
    • DB 사용자 및 권한(GRANT)이 정확한지 확인
  4. 파일 업로드 안됨
    • uploads 디렉터리 권한 및 소유자 확인

9 대안 및 확장

  • 운영 환경에서는 Debian Etch 대신 최신 안정화 배포판(Debian 안정 버전 또는 Ubuntu LTS)과 최신 ImpressCMS 버전을 사용하는 것을 권장합니다.
  • 데이터베이스로 MariaDB 사용 가능(호환성 확인).
  • 리버스 프록시(Nginx)를 앞단에 두고 PHP-FPM으로 구성하는 방법도 성능/보안 측면에서 유리합니다.

10 참고 링크


요약 및 마무리

이 가이드는 Debian Etch 환경에서 ImpressCMS 1.0 Final을 설치하는 전체 흐름을 다룹니다: 패키지 설치, MySQL 설정, 가상호스트 구성, 파일 배포, 설치 마법사 사용, 설치 후 보안 점검과 기본 문제 해결 방법까지 포함합니다. 실제 운영 환경에서는 패키지 버전, 보안 업데이트, SSL 적용 등을 추가로 고려하세요.

핵심 체크: 데이터베이스 사용자·비밀번호 설정, 문서 루트와 트러스트 디렉터리 권한, 설치 디렉터리 삭제 및 mainfile 권한 변경을 완료하면 기본 설치는 안전하게 마무리됩니다.

공유하기: X/Twitter Facebook LinkedIn Telegram
저자
편집

유사한 자료

Debian 11에 Podman 설치 및 사용하기
컨테이너

Debian 11에 Podman 설치 및 사용하기

Apt-Pinning 간단 소개 — Debian 패키지 우선순위 설정
시스템 관리

Apt-Pinning 간단 소개 — Debian 패키지 우선순위 설정

OptiScaler로 FSR 4 주입: 설치·설정·문제해결 가이드
그래픽 가이드

OptiScaler로 FSR 4 주입: 설치·설정·문제해결 가이드

Debian Etch에 Dansguardian+Squid(NTLM) 구성
네트워크

Debian Etch에 Dansguardian+Squid(NTLM) 구성

안드로이드 SD카드 설치 오류(Error -18) 완전 해결
안드로이드 오류

안드로이드 SD카드 설치 오류(Error -18) 완전 해결

KNetAttach로 원격 네트워크 폴더 연결하기
네트워킹

KNetAttach로 원격 네트워크 폴더 연결하기