서버 설치 · 10 min read · Feb 10, 2026

완벽한 서버 - Ubuntu 14.04 (nginx, BIND, MySQL, PHP, Postfix, Dovecot 및 ISPConfig 3) - 페이지 6

21 SquirrelMail 설치

SquirrelMail 웹메일 클라이언트를 설치하려면 다음을 실행하십시오.

apt-get install squirrelmail

그런 다음 SquirrelMail을 구성하십시오:

squirrelmail-configure

SquirrelMail에 Dovecot-IMAP/-POP3를 사용하고 있다고 알려야 합니다:

SquirrelMail 구성 : 읽기: config.php (1.4.0)

메인 메뉴 –

  1. 조직 기본 설정
  2. 서버 설정
  3. 폴더 기본값
  4. 일반 옵션
  5. 테마
  6. 주소록
  7. 오늘의 메시지 (MOTD)
  8. 플러그인
  9. 데이터베이스
  10. 언어

D. 특정 IMAP 서버에 대한 미리 정의된 설정 설정

C 색상 켜기
S 데이터 저장
Q 종료

명령 >> <– D

SquirrelMail 구성 : 읽기: config.php

SquirrelMail을 구축하는 동안, 우리는 일부 서버에서 더 잘 작동하는 몇 가지 기본 설정을 발견했습니다.
IMAP 서버를 선택하면 이 옵션이 해당 서버에 대한 몇 가지 미리 정의된 설정을 설정합니다.

모든 것이 올바른지 확인해야 합니다.
이것은 모든 것을 변경하지 않습니다.
이것이 변경할 설정은 몇 가지에 불과합니다.

IMAP 서버를 선택하십시오:
bincimap = Binc IMAP 서버
courier = Courier IMAP 서버
cyrus = Cyrus IMAP 서버
dovecot = Dovecot 보안 IMAP 서버
exchange = Microsoft Exchange IMAP 서버
hmailserver = hMailServer
macosx = Mac OS X 메일 서버
mercury32 = Mercury/32
uw = 워싱턴 대학교 IMAP 서버
gmail = Google 메일(Gmail) 계정에 대한 IMAP 액세스

quit = 아무것도 변경하지 않음
명령 >> <– dovecot

SquirrelMail 구성 : 읽기: config.php

SquirrelMail을 구축하는 동안, 우리는 일부 서버에서 더 잘 작동하는 몇 가지 기본 설정을 발견했습니다.
IMAP 서버를 선택하면 이 옵션이 해당 서버에 대한 몇 가지 미리 정의된 설정을 설정합니다.

모든 것이 올바른지 확인해야 합니다.
이것은 모든 것을 변경하지 않습니다.
이것이 변경할 설정은 몇 가지에 불과합니다.

IMAP 서버를 선택하십시오:
bincimap = Binc IMAP 서버
courier = Courier IMAP 서버
cyrus = Cyrus IMAP 서버
dovecot = Dovecot 보안 IMAP 서버
exchange = Microsoft Exchange IMAP 서버
hmailserver = hMailServer
macosx = Mac OS X 메일 서버
mercury32 = Mercury/32
uw = 워싱턴 대학교 IMAP 서버
gmail = Google 메일(Gmail) 계정에 대한 IMAP 액세스

quit = 아무것도 변경하지 않음
명령 >> dovecot

imap_server_type = dovecot
default_folder_prefix =
trash_folder = 휴지통
sent_folder = 보낸 편지
draft_folder = 초안
show_prefix_option = false
default_sub_of_inbox = false
show_contain_subfolders_option = false
optional_delimiter = detect
delete_folder = false

계속하려면 Enter 키를 누르십시오… <– ENTER

SquirrelMail 구성 : 읽기: config.php (1.4.0)

메인 메뉴 –

  1. 조직 기본 설정
  2. 서버 설정
  3. 폴더 기본값
  4. 일반 옵션
  5. 테마
  6. 주소록
  7. 오늘의 메시지 (MOTD)
  8. 플러그인
  9. 데이터베이스
  10. 언어

D. 특정 IMAP 서버에 대한 미리 정의된 설정 설정

C 색상 켜기
S 데이터 저장
Q 종료

명령 >> <– S

SquirrelMail 구성 : 읽기: config.php (1.4.0)

메인 메뉴 –

  1. 조직 기본 설정
  2. 서버 설정
  3. 폴더 기본값
  4. 일반 옵션
  5. 테마
  6. 주소록
  7. 오늘의 메시지 (MOTD)
  8. 플러그인
  9. 데이터베이스
  10. 언어

D. 특정 IMAP 서버에 대한 미리 정의된 설정 설정

C 색상 켜기
S 데이터 저장
Q 종료

명령 >> <– Q

이제 /usr/share/squirrelmail/ 디렉토리에서 SquirrelMail을 찾을 수 있습니다.

ISPConfig 3을 설치한 후, 다음과 같이 SquirrelMail에 접근할 수 있습니다:

nginx의 포트 8081에서 ISPConfig 앱 vhost는 SquirrelMail 구성을 제공하므로 http://server1.example.com:8081/squirrelmail 또는 http://server1.example.com:8081/webmail을 사용하여 SquirrelMail에 접근할 수 있습니다.

웹사이트에서 사용할 수 있는 /webmail 또는 /squirrelmail 별칭을 사용하려면, 이는 Apache보다 약간 더 복잡합니다. nginx는 전역 별칭(즉, 모든 vhost에 대해 정의할 수 있는 별칭)을 지원하지 않기 때문입니다. 따라서 SquirrelMail에 접근하려는 vhost에 대해 이러한 별칭을 정의해야 합니다.

이를 위해 ISPConfig의 웹사이트 옵션 탭의 nginx 지시어 필드에 다음을 붙여넣으십시오:

| location /squirrelmail { root /usr/share/; index index.php index.html index.htm; location ~ ^/squirrelmail/(.+\.php)$ { try_files $uri =404; root /usr/share/; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $request_filename; include /etc/nginx/fastcgi_params; fastcgi_param PATH_INFO $fastcgi_script_name; fastcgi_buffer_size 128k; fastcgi_buffers 256 4k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; fastcgi_intercept_errors on; } location ~* ^/squirrelmail/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/; } } location /webmail { rewrite ^/* /squirrelmail last; } |

http 대신 https를 사용하는 경우, SquirrelMail 구성에 fastcgi_param HTTPS on; 라인을 다음과 같이 추가해야 합니다:

| location /squirrelmail { root /usr/share/; index index.php index.html index.htm; location ~ ^/squirrelmail/(.+\.php)$ { try_files $uri =404; root /usr/share/; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_param HTTPS on; # <-- 이 줄을 추가하십시오 fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $request_filename; include /etc/nginx/fastcgi_params; fastcgi_param PATH_INFO $fastcgi_script_name; fastcgi_buffer_size 128k; fastcgi_buffers 256 4k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; fastcgi_intercept_errors on; } location ~* ^/squirrelmail/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/; } } location /webmail { rewrite ^/* /squirrelmail last; } |

http와 https를 모두 사용하는 경우, /etc/nginx/nginx.conf의 http {} 섹션에 다음 섹션을 추가해야 합니다(모든 include 라인 이전에). 이는 방문자가 http 또는 https를 사용하는지 감지하고 $fastcgi_https 변수를 설정합니다(이는 SquirrelMail 구성에서 사용할 것입니다):

vi /etc/nginx/nginx.conf

| [...] http { [...] ## HTTPS 사용 감지 map $scheme $fastcgi_https { default off; https on; } [...] } [...] |

그 후 nginx를 다시 로드하는 것을 잊지 마십시오:

service nginx reload

그런 다음 nginx 지시어 필드로 다시 가서 fastcgi_param HTTPS on; 대신 fastcgi_param HTTPS $fastcgi_https; 라인을 추가하여 http 및 https 요청 모두에 대해 SquirrelMail을 사용할 수 있도록 합니다:

| location /squirrelmail { root /usr/share/; index index.php index.html index.htm; location ~ ^/squirrelmail/(.+\.php)$ { try_files $uri =404; root /usr/share/; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_param HTTPS $fastcgi_https; # <-- 이 줄을 추가하십시오 fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $request_filename; include /etc/nginx/fastcgi_params; fastcgi_param PATH_INFO $fastcgi_script_name; fastcgi_buffer_size 128k; fastcgi_buffers 256 4k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; fastcgi_intercept_errors on; } location ~* ^/squirrelmail/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/; } } location /webmail { rewrite ^/* /squirrelmail last; } |

22 ISPConfig 3 설치

ISPConfig 설치를 시작하기 전에 Apache가 중지되어 있는지 확인하십시오(설치되어 있는 경우 - 설치된 패키지 중 일부가 Apache를 종속성으로 설치했을 가능성이 있습니다). 시스템에 Apache2가 이미 설치되어 있다면, 지금 중지하십시오…

service apache2 stop

… 그리고 Apache의 시스템 시작 링크를 제거하십시오:

update-rc.d -f apache2 remove

nginx가 실행 중인지 확인하십시오:

service nginx restart

(만약 Apache와 nginx가 모두 설치되어 있다면, 설치 프로그램이 어떤 것을 사용할지 묻습니다: Apache와 nginx가 감지되었습니다. ISPConfig에 사용할 서버를 선택하십시오: (apache,nginx) [apache]:

nginx를 입력하십시오. Apache 또는 nginx만 설치되어 있는 경우, 설치 프로그램이 자동으로 감지하며 질문이 없습니다.)

최신 릴리스 버전에서 ISPConfig 3을 설치하려면 다음을 수행하십시오:

cd /tmp  
wget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz  
tar xfz ISPConfig-3-stable.tar.gz  
cd ispconfig3_install/install/

다음 단계는 다음을 실행하는 것입니다:

php -q install.php

이것은 ISPConfig 3 설치 프로그램을 시작합니다. 설치 프로그램은 Postfix, SASL, Courier 등과 같은 모든 서비스를 자동으로 구성합니다. ISPConfig 2에 필요한 수동 설정(완벽한 설정 가이드)은 필요하지 않습니다.

root@server1:/tmp/ispconfig3_install/install# php -q install.php
PHP Deprecated: Comments starting with ‘#’ are deprecated in /etc/php5/cli/conf.d/ming.ini on line 1 in Unknown on line 0

——————————————————————————–
_ _ _ _
| / | \/ \ / () / \
| | | | --.| |_/ / | / \/ ___ _ __| |_ _ __ _ _/ / | | | |–.\ / | | / \| ‘ \ | |/ ` | | | |
| |
| |\
/ / | | _/\ () | | | | | | | (| | __\ \
_/__/_| _/\/|| |||||_, | __/ / |
|_
/
——————————————————————————–

>> 초기 구성
운영 체제: 14.04 UNKNOWN
다음은 기본 구성을 위한 몇 가지 질문이 있을 것입니다.
기본값은 [대괄호] 안에 있으며 로 수락할 수 있습니다.
“quit”(따옴표 없이)를 입력하여 설치 프로그램을 중지하십시오.

언어 선택 (en,de) [en]: <– ENTER
설치 모드 (standard,expert) [standard]: <– ENTER
서버의 전체 자격 호스트 이름 (FQDN), 예: server1.domain.tld [server1.example.com]: <– ENTER
MySQL 서버 호스트 이름 [localhost]: <– ENTER
MySQL 루트 사용자 이름 [root]: <– ENTER
MySQL 루트 비밀번호 []: <– yourrootsqlpassword
생성할 MySQL 데이터베이스 [dbispconfig]: <– ENTER
MySQL 문자 집합 [utf8]: <– ENTER
Apache와 nginx가 감지되었습니다. ISPConfig에 사용할 서버를 선택하십시오: (apache,nginx) [apache]: <– nginx
4096 비트 RSA 개인 키 생성 중
……………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………..++
……………………………………..++
‘smtpd.key’에 새 개인 키를 작성하고 있습니다.
—–
인증서 요청에 통합될 정보를 입력하라는 메시지가 표시됩니다.
입력할 내용은 ‘구별된 이름’ 또는 DN이라고 합니다.
여러 필드가 있지만 일부는 비워둘 수 있습니다.
일부 필드에는 기본값이 있습니다.
‘.’를 입력하면 필드가 비워집니다.
—–
국가 이름 (2자리 코드) [AU]: <– ENTER
주 또는 지방 이름 (전체 이름) [Some-State]: <– ENTER
지역 이름 (예: 도시) []: <– ENTER
조직 이름 (예: 회사) [Internet Widgits Pty Ltd]: <– ENTER
조직 단위 이름 (예: 섹션) []: <– ENTER
공통 이름 (예: 서버 FQDN 또는 귀하의 이름) []: <– ENTER
이메일 주소 []: <– ENTER
Jailkit 구성 중
Dovecot 구성 중
Spamassassin 구성 중
Amavisd 구성 중
Getmail 구성 중
Pureftpd 구성 중
BIND 구성 중
nginx 구성 중
Vlogger 구성 중
앱 vhost 구성 중
Bastille 방화벽 구성 중
Fail2ban 구성 중
ISPConfig 설치 중
ISPConfig 포트 [8080]: <– ENTER
ISPConfig 웹 인터페이스에 대한 보안(SSL) 연결을 원하십니까 (y,n) [y]: <– ENTER
4096 비트 길이의 RSA 개인 키 생성 중
…++
…………………………………………………………………………………….++
e는 65537 (0x10001)
인증서 요청에 통합될 정보를 입력하라는 메시지가 표시됩니다.
입력할 내용은 ‘구별된 이름’ 또는 DN이라고 합니다.
여러 필드가 있지만 일부는 비워둘 수 있습니다.
일부 필드에는 기본값이 있습니다.
‘.’를 입력하면 필드가 비워집니다.
—–
국가 이름 (2자리 코드) [AU]: <– ENTER
주 또는 지방 이름 (전체 이름) [Some-State]: <– ENTER
지역 이름 (예: 도시) []: <– ENTER
조직 이름 (예: 회사) [Internet Widgits Pty Ltd]: <– ENTER
조직 단위 이름 (예: 섹션) []: <– ENTER
공통 이름 (예: 서버 FQDN 또는 귀하의 이름) []: <– ENTER
이메일 주소 []: <– ENTER
다음 ‘추가‘ 속성을 입력하십시오.
인증서 요청과 함께 전송됩니다.
도전 비밀번호 []: <– ENTER
선택적 회사 이름 []: <– ENTER
RSA 키 작성 중
DBServer 구성 중
ISPConfig crontab 설치 중
root에 대한 crontab 없음
getmail에 대한 crontab 없음
서비스 재시작 중…
/etc/init.d를 통해 init 스크립트를 호출하는 대신, service(8) 유틸리티를 사용하십시오.
예: service mysql restart
시도하려는 스크립트가 Upstart 작업으로 변환되었으므로, stop(8) 및 start(8) 유틸리티를 사용할 수도 있습니다.
예: stop mysql ; start mysql.
restart(8) 유틸리티도 사용할 수 있습니다.
mysql 중지/대기 중
mysql 시작/실행 중, 프로세스 2783
Postfix 메일 전송 에이전트 postfix 중지 중
/usr/sbin/postconf: 경고: /etc/postfix/main.cf: 정의되지 않은 매개변수: virtual_mailbox_limit_maps
…완료.
Postfix 메일 전송 에이전트 postfix 시작 중
postconf: 경고: /etc/postfix/main.cf: 정의되지 않은 매개변수: virtual_mailbox_limit_maps
postconf: 경고: /etc/postfix/main.cf: 정의되지 않은 매개변수: virtual_mailbox_limit_maps
postconf: 경고: /etc/postfix/main.cf: 정의되지 않은 매개변수: virtual_mailbox_limit_maps
postconf: 경고: /etc/postfix/main.cf: 정의되지 않은 매개변수: virtual_mailbox_limit_maps
postconf: 경고: /etc/postfix/main.cf: 정의되지 않은 매개변수: virtual_mailbox_limit_maps
postconf: 경고: /etc/postfix/main.cf: 정의되지 않은 매개변수: virtual_mailbox_limit_maps
/usr/sbin/postconf: 경고: /etc/postfix/main.cf: 정의되지 않은 매개변수: virtual_mailbox_limit_maps
/usr/sbin/postconf: 경고: /etc/postfix/main.cf: 정의되지 않은 매개변수: virtual_mailbox_limit_maps
/usr/sbin/postconf: 경고: /etc/postfix/main.cf: 정의되지 않은 매개변수: virtual_mailbox_limit_maps
/usr/sbin/postconf: 경고: /etc/postfix/main.cf: 정의되지 않은 매개변수: virtual_mailbox_limit_maps
/usr/sbin/postconf: 경고: /etc/postfix/main.cf: 정의되지 않은 매개변수: virtual_mailbox_limit_maps
/usr/sbin/postconf: 경고: /etc/postfix/main.cf: 정의되지 않은 매개변수: virtual_mailbox_limit_maps
/usr/sbin/postconf: 경고: /etc/postfix/main.cf: 정의되지 않은 매개변수: virtual_mailbox_limit_maps
/usr/sbin/postconf: 경고: /etc/postfix/main.cf: 정의되지 않은 매개변수: virtual_mailbox_limit_maps
/usr/sbin/postconf: 경고: /etc/postfix/main.cf: 정의되지 않은 매개변수: virtual_mailbox_limit_maps
/usr/sbin/postconf: 경고: /etc/postfix/main.cf: 정의되지 않은 매개변수: virtual_mailbox_limit_maps
/usr/sbin/postconf: 경고: /etc/postfix/main.cf: 정의되지 않은 매개변수: virtual_mailbox_limit_maps
…완료.
amavisd 중지 중: amavisd-new.
amavisd 시작 중: amavisd-new.
ClamAV 데몬 clamd 중지 중
…완료.
ClamAV 데몬 clamd 시작 중
…완료.
/etc/init.d를 통해 init 스크립트를 호출하는 대신, service(8) 유틸리티를 사용하십시오.
예: service dovecot restart
시도하려는 스크립트가 Upstart 작업으로 변환되었으므로, stop(8) 및 start(8) 유틸리티를 사용할 수도 있습니다.
예: stop dovecot ; start dovecot.
restart(8) 유틸리티도 사용할 수 있습니다.
dovecot 중지/대기 중
dovecot 시작/실행 중, 프로세스 3929
PHP5 FastCGI 프로세스 관리자 php5-fpm 다시 로드 중
…완료.
nginx 구성 다시 로드 중
…완료.
ftp 서버 재시작 중: 실행 중: /usr/sbin/pure-ftpd-mysql-virtualchroot -l mysql:/etc/pure-ftpd/db/mysql.conf -l pam -A -b -u 1000 -D -H -Y 1 -E -8 UTF-8 -O clf:/var/log/pure-ftpd/transfer.log -B
설치 완료.
root@server1:/tmp/ispconfig3_install/install# 설치 프로그램은 모든 기본 서비스를 자동으로 구성하므로 수동 구성이 필요하지 않습니다. 이제 설치 프로그램이 ISPConfig 제어판에 대한 SSL vhost를 생성하도록 허용할 수 있는 가능성도 있습니다. 따라서 ISPConfig에 http:// 대신 https://를 사용하여 접근할 수 있습니다. 이를 달성하려면 다음 질문이 표시될 때 ENTER 키를 누르십시오: ISPConfig 웹 인터페이스에 대한 보안(SSL) 연결을 원하십니까 (y,n) [y]:. 그 후 http(s)://server1.example.com:8080/ 또는 http(s)://192.168.0.100:8080/에서 ISPConfig 3에 접근할 수 있습니다( http 또는 https는 설치 중 선택한 것에 따라 다릅니다). 사용자 이름 admin과 비밀번호 admin으로 로그인하십시오(첫 로그인 후 기본 비밀번호를 변경해야 합니다): 시스템이 이제 사용 준비가 완료되었습니다. #### 22.1 ISPConfig 3 매뉴얼 ISPConfig 3을 사용하는 방법을 배우기 위해 ISPConfig 3 매뉴얼을 다운로드하는 것을 강력히 권장합니다. 300페이지 이상에 걸쳐 ISPConfig의 개념(관리자, 리셀러, 클라이언트)을 다루고, ISPConfig 3을 설치하고 업데이트하는 방법을 설명하며, ISPConfig의 모든 양식 및 양식 필드에 대한 참조와 유효한 입력 예제를 포함하고, ISPConfig 3에서 가장 일반적인 작업에 대한 튜토리얼을 제공합니다. 또한 서버를 더 안전하게 만드는 방법을 설명하고 마지막에 문제 해결 섹션을 제공합니다. #### 22.2 ISPConfig 모니터 앱 (안드로이드) ISPConfig 모니터 앱을 사용하면 서버 상태를 확인하고 모든 서비스가 예상대로 실행되고 있는지 확인할 수 있습니다. TCP 및 UDP 포트를 확인하고 서버에 핑을 보낼 수 있습니다. 또한 이 앱을 사용하여 ISPConfig가 설치된 서버에서 세부 정보를 요청할 수 있습니다( ISPConfig 모니터 앱을 지원하는 최소 설치된 ISPConfig 3 버전은 3.0.3.3입니다!); 이러한 세부 정보에는 ISPConfig 제어판의 모니터 모듈에서 알고 있는 모든 것이 포함됩니다(예: 서비스, 메일 및 시스템 로그, 메일 큐, CPU 및 메모리 정보, 디스크 사용량, 쿼터, OS 세부 정보, RKHunter 로그 등), 그리고 물론 ISPConfig는 다중 서버를 지원하므로 ISPConfig 마스터 서버에서 제어되는 모든 서버를 확인할 수 있습니다. 다운로드 및 사용 지침은 http://www.ispconfig.org/ispconfig-3/ispconfig-monitor-app-for-android/를 방문하십시오. ### 23 추가 노트 #### 23.1 OpenVZ 이 튜토리얼에서 설정한 Ubuntu 서버가 OpenVZ 컨테이너(가상 머신)인 경우, 호스트 시스템에서 다음을 수행해야 합니다( OpenVZ 컨테이너의 ID가 101이라고 가정합니다 - 시스템에서 올바른 VPSID로 교체하십시오): VPSID=101 for CAP in CHOWN DAC_READ_SEARCH SETGID SETUID NET_BIND_SERVICE NET_ADMIN SYS_CHROOT SYS_NICE CHOWN DAC_READ_SEARCH SETGID SETUID NET_BIND_SERVICE NET_ADMIN SYS_CHROOT SYS_NICE do vzctl set $VPSID --capability ${CAP}:on --save done ### 24 링크 - Ubuntu: http://www.ubuntu.com/
- ISPConfig: http://www.ispconfig.org/

Share: X/Twitter LinkedIn

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

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