기술 가이드

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
저자
편집

유사한 자료

Clonezilla로 CentOS 7 디스크 이미지 생성 및 암호화
시스템 백업

Clonezilla로 CentOS 7 디스크 이미지 생성 및 암호화

직장 바꾸지 않고 연봉 인상 받는 10가지 팁
커리어

직장 바꾸지 않고 연봉 인상 받는 10가지 팁

Office 2016·2019 지원 종료 후 0Patch로 무료 제로데이 패치 받기
보안

Office 2016·2019 지원 종료 후 0Patch로 무료 제로데이 패치 받기

Debian Etch에 ImpressCMS 1.0 설치 가이드
서버 설치

Debian Etch에 ImpressCMS 1.0 설치 가이드

프로페셔널 iPad 액세서리 가이드
기술 가이드

프로페셔널 iPad 액세서리 가이드

Armoury Crate 팬 속도 미표시 문제 해결
Troubleshooting

Armoury Crate 팬 속도 미표시 문제 해결