웹메일 설치 · 5 min read · Feb 09, 2026

Debian 8 (Jessie)에서 RoundCube 웹메일 설치

이 튜토리얼은 Debian 8에서 최신 RoundCube 웹메일 설치 방법을 보여줍니다. Roundcube는 IMAP 및 SMTP 지원을 갖춘 사용하기 쉬운 웹메일 클라이언트로, 플러그인으로 확장할 수 있습니다. Debian 7에서는 RoundCube가 .deb 패키지로 제공되었지만, 최신 버전은 아니었고 적어도 apt로 쉽게 설치할 수 있었습니다. 현재 Debian 릴리스에서는 더 이상 RoundCube 패키지가 제공되지 않으므로, 여기서 소스에서 설치하는 방법을 설명하겠습니다. 이 튜토리얼에는 RoundCube를 ISPConfig 3 호스팅 제어판과 연결하는 단계를 설명하는 선택적 장이 포함되어 있습니다.

필수 조건

  • Debian 8 운영 체제.
  • mod_php가 설치된 Apache 웹 서버. Apache가 아직 설치되지 않았다면, 적절한 환경을 설치하기 위해 LAMP 가이드나 Perfect Server 설정을 참조하세요.
  • Roundcube가 연결할 이메일 서버(SMTP + IMAP). 이는 로컬 서버(예: 완벽한 서버 설정 중 하나를 사용할 때) 또는 원격 서버일 수 있습니다.
  • 이 튜토리얼에서 사용할 서버 호스트 이름은 server1.example.com이며, IP 주소는 192.168.1.100입니다. 이를 귀하의 서버의 IP 및 호스트 이름으로 바꾸세요.

RoundCube 설치

RoundCube를 /opt/roundcube 디렉토리에 설치하여 이 설치가 Debian 시스템 패키지와 충돌하지 않도록 하겠습니다. 첫 번째 단계는 wget을 설치하고, /opt/roundcube 디렉토리를 생성한 후 wget을 사용하여 최신 RoundCube 버전을 이 디렉토리에 다운로드하는 것입니다. 현재 RoundCube 버전은 제가 이 튜토리얼을 작성하는 시점에서 1.1.3입니다. 사용 가능한 최신 버전을 확인하려면 RoundCube 웹사이트를 참조하세요.

서버의 셸에서 root 사용자로 로그인한 후 wget과 nano 편집기를 설치합니다:

apt-get install wget nano

디렉토리를 생성하고 “cd” 명령어로 해당 디렉토리로 이동합니다:

mkdir /opt/roundcube  
cd /opt/roundcube

RoundCube tar.gz 파일을 다운로드하고 압축을 풉니다:

wget https://downloads.sourceforge.net/project/roundcubemail/roundcubemail/1.1.3/roundcubemail-1.1.3-complete.tar.gz  
tar xfz roundcubemail-1.1.3-complete.tar.gz

RoundCube 파일이 이제 /opt/roundcube/roundcubemail-1.1.3 폴더에 있습니다. 다음 단계는 이 파일들을 /opt/roundcube로 한 단계 위로 이동하는 것입니다.

mv roundcubemail-1.1.3/* .  
mv roundcubemail-1.1.3/.htaccess .

두 명령어 끝의 점은 필수이며 명령의 일부입니다. 놓치지 마세요! 빈 디렉토리와 tar.gz 파일을 삭제합니다.

rmdir roundcubemail-1.1.3  
rm roundcubemail-1.1.3-complete.tar.gz

모든 파일의 소유자를 Apache 서버가 실행되는 사용자로 변경합니다.

chown -R www-data:www-data /opt/roundcube

RoundCube 데이터베이스 설치

Roundcube는 메일박스 설정, 연락처 등을 저장할 데이터베이스가 필요합니다. 여기서는 MySQL(또는 MariaDB)을 데이터베이스 백엔드로 사용하겠습니다. 이제 “roundcubemail”이라는 이름의 데이터베이스와 “roundcube”라는 이름의 사용자를 MySQL에서 생성하겠습니다.

다음 명령어로 MySQL 서버에 로그인합니다:

mysql --defaults-file=/etc/mysql/debian.cnf

그런 다음 MySQL 데이터베이스 셸에서 다음 명령어를 실행하여 데이터베이스와 데이터베이스 사용자를 생성합니다. 아래 명령어에서 “secretpassword”라는 단어를 원하는 비밀번호로 바꾸세요.

CREATE DATABASE roundcubemail;  
GRANT ALL PRIVILEGES ON roundcubemail.* TO roundcube@localhost IDENTIFIED BY 'secretpassword';  
flush privileges;  
quit

이제 RoundCube 테이블을 mysql.initial.sql 파일에서 새 데이터베이스로 가져옵니다.

Linux 셸에서 다음 명령어를 실행합니다:

mysql --defaults-file=/etc/mysql/debian.cnf roundcubemail < /opt/roundcube/SQL/mysql.initial.sql

RoundCube 및 Apache 구성

이 단계에서는 RoundCube에서 데이터베이스 세부정보를 구성하고 Apache에 RoundCube 구성 파일을 추가합니다.

먼저 RoundCube의 데이터베이스 구성을 시작하겠습니다. 다음 명령어를 실행하여 샘플 구성 파일을 기반으로 새 config.inc.php 파일을 생성하고 nano 편집기로 엽니다.

cd /opt/roundcube/config  
cp -pf config.inc.php.sample config.inc.php  
nano config.inc.php

$config[‘db_dsnw’]로 시작하는 데이터베이스 구성 줄을 찾아 다음 줄로 바꿉니다:

$config['db_dsnw'] = 'mysql://roundcube:secretpassword@localhost/roundcubemail';

“secretpassword”라는 단어는 데이터베이스에 대해 선택한 비밀번호로 바꿔야 합니다.

다음으로 “smtp_server” 줄을 찾아 여기에 SMTP 서버의 호스트 이름을 설정합니다. 제 경우에는 메일 서버가 로컬 서버이므로 서버를 “localhost”로 설정하겠습니다.

$config['smtp_server'] = 'localhost';

이제 Apache를 구성할 시간입니다. /etc/apache2/conf-available/ 폴더에 roundcube.conf라는 새 구성 파일을 생성하겠습니다.

nano /etc/apache2/conf-available/roundcube.conf

다음 줄을 파일에 추가하고 저장합니다.

Alias /roundcube /opt/roundcube  
Alias /webmail /opt/roundcube  
  
  
 Options +FollowSymLinks  
 # AddDefaultCharset UTF-8  
 AddType text/x-component .htc  
   
   
 AddType application/x-httpd-php .php  
 php_flag display_errors Off  
 php_flag log_errors On  
 # php_value error_log logs/errors  
 php_value upload_max_filesize 10M  
 php_value post_max_size 12M  
 php_value memory_limit 64M  
 php_flag zlib.output_compression Off  
 php_flag magic_quotes_gpc Off  
 php_flag magic_quotes_runtime Off  
 php_flag zend.ze1_compatibility_mode Off  
 php_flag suhosin.session.encrypt Off  
 #php_value session.cookie_path /  
 php_flag session.auto_start Off  
 php_value session.gc_maxlifetime 21600  
 php_value session.gc_divisor 500  
 php_value session.gc_probability 1  
   
  
   
 RewriteEngine On  
 RewriteRule ^favicon\.ico$ skins/larry/images/favicon.ico  
 # 보안 규칙:  
 # - 점이 없는 파일이나 점으로 시작하는 파일에 대한 접근 거부  
 # 설치 디렉토리를 제외한 모든 위치에서  
 RewriteRule ^(?!installer)(\.\?[^\.]+)$ - [F]  
 # - 일부 위치에 대한 접근 거부  
 RewriteRule ^/?(\.git|\.tx|SQL|bin|config|logs|temp|tests|program\/(include|lib|localization|steps)) - [F]  
 # - 일부 문서 파일에 대한 접근 거부  
 RewriteRule /?(README\.md|composer\.json-dist|composer\.json|package\.xml)$ - [F]  
   
  
   
 SetOutputFilter DEFLATE  
   
  
   
 ExpiresActive On  
 ExpiresDefault "access plus 1 month"  
   
  
 FileETag MTime Size  
  
   
 Options -Indexes  
   
  
 AllowOverride None  
 Require all granted  
  
  
  
 Options -FollowSymLinks  
 AllowOverride None  
 Require all denied  
  
  
  
 Options -FollowSymLinks  
 AllowOverride None  
 Require all denied  
  
  
  
 Options -FollowSymLinks  
 AllowOverride None  
 Require all denied  
  
  
  
 Options -FollowSymLinks  
 AllowOverride None  
 Require all denied  

첫 두 줄의 2개의 Alias는 RoundCube를 서버에서 /roundcube 및 /webmail로 사용할 수 있도록 만듭니다.

구성을 활성화하고 Apache를 다시 로드합니다:

a2enconf roundcube  
service apache2 reload

그게 전부입니다. RoundCube가 이제 서버에 완전히 설치되었으며, /roundcube 및 /webmail 별칭을 통해 서버 IP 및 호스트 이름에서 접근할 수 있습니다. 제 서버의 IP는 192.168.1.100입니다. 따라서 http://192.168.1.100/webmail로 RoundCube를 열 수 있습니다.

RoundCube 로그인 화면.

Roundcube - 첫 페이지.

ISPConfig RoundCube 플러그인 설치 (선택 사항)

서버에 iSPConfig 3가 설치되어 있다면, ISPConfig RoundCube 플러그인을 설치하는 것이 강력히 권장됩니다. 이를 통해 이메일 사용자는 RoundCube 내에서 자동 응답기, 이메일 필터 및 기타 메일박스 설정을 관리할 수 있습니다.

ISPConfig 3 RoundCube 플러그인은 ISPConfig 원격 API를 통해 ISPConfig 3에 연결됩니다. 이 API를 사용하려면 원격 사용자가 필요합니다.

“admin” 사용자로 ISPConfig에 로그인합니다.

이러한 사용자를 생성하려면 시스템 > 사용자 관리 > 원격 사용자로 이동하여 새 사용자 추가 버튼을 클릭합니다:

새 원격 사용자에 대한 사용자 이름과 비밀번호를 입력합니다. 저는 사용자 이름 “roundcube”와 비밀번호 “!fdWEacBOG1d”를 선택하겠습니다.

원격 사용자 설정은 세밀한 접근 제어를 허용합니다. 다음 기능을 활성화해야 합니다:

  • 서버 기능
  • 클라이언트 기능
  • 메일 사용자 기능
  • 메일 별칭 기능
  • 메일 스팸 필터 사용자 기능
  • 메일 스팸 필터 정책 기능
  • 메일 가져오기 기능
  • 메일 스팸 필터 화이트리스트 기능
  • 메일 스팸 필터 블랙리스트 기능
  • 메일 사용자 필터 기능

마지막으로 저장을 클릭합니다.

다음 단계는 서버의 셸에서 수행됩니다. root 사용자로 로그인합니다.

이제 ISPConfig SSL 인증서를 Debian의 SSL 인증서 저장소에 설치하겠습니다.

cp /usr/local/ispconfig/interface/ssl/ispserver.crt /usr/local/share/ca-certificates/  
update-ca-certificates

/etc/php5/cgi/php.ini 파일을 엽니다.

nano /etc/php5/apache2/php.ini

파일의 [openssl] 섹션까지 스크롤한 후 다음 줄을 추가합니다:

openssl.cafile=/etc/ssl/certs/ca-certificates.crt

그런 다음 Apache를 재시작합니다.

service apache2 restart

애드온을 다운로드하려면 먼저 Git 클라이언트를 설치합니다.

apt-get install git

RoundCube ISPConfig 플러그인의 최신 버전을 가져옵니다:

cd /tmp  
git clone https://github.com/w2c/ispconfig3_roundcube.git  
cd /tmp/ispconfig3_roundcube/

그리고 플러그인을 RoundCube 플러그인 디렉토리로 이동합니다.

mv ispconfig3_* /opt/roundcube/plugins  
cd /opt/roundcube/plugins

샘플 구성을 기반으로 플러그인에 대한 새 config.inc.php 파일을 생성하고 nano 편집기로 파일을 엽니다.

mv ispconfig3_account/config/config.inc.php.dist ispconfig3_account/config/config.inc.php  
nano ispconfig3_account/config/config.inc.php

원격 사용자 세부정보를 입력하고 파일을 저장합니다.

server1.example.com을 서버의 호스트 이름으로 바꿉니다. 원격 API 연결에 SSL(HTTPS)을 사용할 때는 RoundCube 구성의 호스트 이름이 ISPConfig 인터페이스의 SSL 인증서의 호스트 이름과 일치해야 합니다. 다음 명령어로 ISPConfig SSL 인증서의 호스트 이름을 확인할 수 있습니다:

openssl x509 -in /usr/local/share/ca-certificates/ispserver.crt -text -noout | grep Subject:

결과는 제 경우:

Subject: C=DE, ST=Niedersachsen, L=Lueneburg, O=ISPConfig UG, OU=IT, CN=server1.example.com/[email protected]

따라서 플러그인 구성 파일의 호스트 이름 “server1.example.com”은 SSL 인증서의 호스트 이름과 일치합니다.

이제 RoundCube에서 새 플러그인을 활성화하겠습니다. 편집기로 구성 파일을 엽니다:

nano /opt/roundcube/config/config.inc.php

그리고 파일 끝에 다음 줄을 추가합니다:

$rcmail_config['plugins'] = array("jqueryui", "ispconfig3_account", "ispconfig3_autoreply", "ispconfig3_pass", "ispconfig3_spam", "ispconfig3_fetchmail", "ispconfig3_filter");

이제 RoundCube에 로그인할 수 있으며, 새 옵션은 설정 > 계정 아래에서 찾을 수 있습니다.

일반 계정.

메일 필터 설정.

Fetchmail 설정.

링크

  • Debian
  • Roundcube
  • Roundcube ISPConfig 플러그인
Share: X/Twitter LinkedIn

새 게시물을 받은 편지함에서 받기

스팸은 없습니다. 언제든지 구독 해지 가능합니다.