기술 가이드

CentOS 7에 OTRS 5 설치 및 구성 가이드

7 min read 서버 가이드 업데이트됨 19 Oct 2025
CentOS 7에 OTRS 5 설치 및 구성
CentOS 7에 OTRS 5 설치 및 구성

개요

OTRS(Open-source Trouble Ticket System)는 고객 지원, 헬프데스크, 콜센터 운영을 개선하기 위해 널리 사용되는 오픈소스 티켓 관리 시스템입니다. OTRS는 Perl로 작성되었고 다음과 같은 주요 기능을 제공합니다:

  • 고객은 포털, 이메일, 전화, 팩스 등을 통해 티켓을 생성하고 상호작용할 수 있습니다. 큐별로 담당자(Attendants/Technicians)에게 할당됩니다.
  • 티켓은 우선순위, 할당, 전송, 후속조치로 관리됩니다. 티켓 분할, 병합, 일괄 처리, 상호 연결 및 알림 설정이 가능합니다. 서비스 카탈로그를 통해 서비스 구성도 가능합니다.
  • 자동 회신 이메일, 텍스트 템플릿, 서명 설정으로 팀의 생산성을 높일 수 있습니다. 티켓에 노트와 첨부파일을 지원합니다.
  • 통계 및 보고(CSV/PDF), SLA 등 운영에 필요한 다양한 기능을 제공합니다.

중요 용어 한 줄 정의:

  • 티켓: 고객 요청을 추적하는 단위입니다.
  • 큐: 비슷한 유형의 티켓을 모아 처리하는 논리적 그룹입니다.

사전 준비 및 환경

이 문서는 다음 환경을 기준으로 작성되었습니다:

  • 가상 머신: VirtualBox
  • 운영체제: CentOS 7 Minimal
  • 메모리: 2GB
  • 디스크: 8GB
  • 네트워크: host-only 및 NAT 2개 인터페이스

사전 요구사항 요약:

  • 루트 또는 sudo 권한
  • 인터넷 연결 (패키지 다운로드 및 저장소 접근)
  • 적절한 호스트명 및 DNS/호스트 파일 설정

중요: 운영 환경에서는 SELinux를 완전히 비활성화하는 대신, 정책을 조정하여 최소 권한으로 운영하는 것을 권장합니다. 이 가이드는 설치 편의를 위해 비활성화를 안내합니다.

준비 단계: 시스템 업데이트 및 기본 패키지

새로운 CentOS 7 Minimal 설치라면 먼저 시스템을 업데이트하고 필요한 패키지를 설치하세요.

yum update

업데이트 예시 출력(대화형 확인 필요):

Transaction Summary ================================================================================
Install 1 Package Upgrade 39 Packages Total download size: 91 M Is this ok [y/d/N]: y

편집기 설치(VIM 예시):

yum install -y vim

wget 설치:

yum install -y wget

네트워크 설정 편집(NMTUI):

nmtui

네트워크 설정 스크린샷

네트워크 변경 적용:

service networks restart

네트워크 정보 확인:

ip addr

예시 출력(개인 시스템에 따라 다름):

1: lo:  mtu 65536 qdisc noqueue state UNKNOWN qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp0s3:  mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 08:00:27:67:bc:73 brd ff:ff:ff:ff:ff:ff
    inet 10.0.2.15/24 brd 10.0.2.255 scope global dynamic enp0s3
       valid_lft 84631sec preferred_lft 84631sec
    inet6 fe80::9e25:c982:1091:90eb/64 scope link 
       valid_lft forever preferred_lft forever
3: enp0s8:  mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 08:00:27:68:88:f3 brd ff:ff:ff:ff:ff:ff
    inet 192.168.56.101/24 brd 192.168.56.255 scope global dynamic enp0s8
       valid_lft 1044sec preferred_lft 1044sec
    inet6 fe80::a00:27ff:fe68:88f3/64 scope link 
       valid_lft forever preferred_lft forever 

SELinux 설정

설치 편의를 위해 SELinux를 비활성화하려면 다음 파일을 편집합니다:

vim /etc/selinux/config

파일 내용 중 SELINUX 값을 “disabled”로 변경한 뒤 서버를 재부팅하세요.

SELinux 상태 확인:

getenforce

출력 예시:

Disabled

중요: 운영 환경에서는 SELinux 비활성화 대신 필요한 포트와 정책을 허용하는 것을 권장합니다.

MariaDB 설치 및 초기 보안 설정

MariaDB 설치:

yum -y install mariadb-server

MySQL 설정 파일 추가: /etc/my.cnf.d/zotrs.cnf 를 생성하고 다음을 입력합니다:

max_allowed_packet = 20M
query_cache_size = 32M
innodb_log_file_size = 256M

서비스 시작:

systemctl start mariadb

초기 보안 스크립트 실행:

/usr/bin/mysql_secure_installation

프롬프트에 따라 루트 암호 설정, 익명 계정 제거, 원격 root 비허용, 테스트 DB 제거, 권한 재로딩 등을 수행하세요.

부팅 시 자동 시작 설정:

systemctl enable mariadb.service

데이터베이스 및 계정 생성(설치 중 웹 인스톨러가 자동으로 생성하지만 수동으로 생성하려면):

CREATE DATABASE otrs CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'otrs'@'localhost' IDENTIFIED BY 'StrongPassword';
GRANT ALL PRIVILEGES ON otrs.* TO 'otrs'@'localhost';
FLUSH PRIVILEGES;

보안 팁: 비밀번호는 운영 환경에 맞는 강력한 값으로 대체하세요. 외부 접근이 필요한 경우 방화벽 규칙과 SSL/TLS를 적용하세요.

OTRS 다운로드 및 EPEL 저장소 설치

OTRS 패키지 다운로드(예시):

wget http://ftp.otrs.org/pub/otrs/RPMS/rhel/7/otrs-5.0.15-01.noarch.rpm

EPEL 설치(예시 미러 사용):

yum -y install http://mirror.globo.com/epel/7/x86_64/e/epel-release-7-9.noarch.rpm

OTRS 설치

OTRS 설치 명령:

yum install -nogpgcheck otrs-5.0.15-01.noarch.rpm

의존성 패키지(예: Apache 등)가 자동으로 설치됩니다. 설치 중 Y를 눌러 진행하세요.

Apache 시작 및 부팅 시 활성화:

systemctl start httpd.service
systemctl enable httpd.service

Apache SSL 설정(자체 서명 인증서)

mod_ssl 설치:

yum -y install mod_ssl

인증서 작업 디렉터리로 이동:

cd /etc/pki/tls/certs/

개인키 생성(예시 파일명 centos7.key):

make centos7.key

개인키 암호 제거 및 PEM 변환:

openssl rsa -in centos7.key -out centos7.key

CSR 생성:

make centos7.csr

질문에 따라 주체(Subject) 정보를 입력하세요. 테스트용이며, 운영에서는 CA에서 발급받은 인증서를 사용하는 것이 권장됩니다.

자체 서명 인증서 생성:

openssl x509 -in centos7.csr -out centos7.crt -req -signkey centos7.key

원본 ssl.conf 백업 및 편집:

cp /etc/httpd/conf.d/ssl.conf /etc/httpd/conf.d/ssl.conf.old
vim /etc/httpd/conf.d/ssl.conf

다음 항목을 적절히 변경합니다:

SSLCertificateKeyFile /etc/pki/tls/certs/centos7.key
SSLCertificateFile /etc/pki/tls/certs/centos7.csr
SSLProtocol -All +TLSv1 +TLSv1.1 +TLSv1.2
ServerName centos7.local:443

참고: 운영에서는 TLS 1.2 이상을 권장합니다. TLSv1 및 TLSv1.1은 취약점이 알려져 있으므로 가능하면 비활성화하세요.

Apache 재시작:

systemctl restart httpd

HTTP 요청을 HTTPS로 강제 리다이렉트하려면 zzz_otrs.conf에 Rewrite 규칙을 추가합니다:

vim /etc/httpd/conf.d/zzz_otrs.conf

추가할 내용:

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

그리고 Apache 재시작:

systemctl restart httpd

필수 Perl 모듈 설치 및 확인

OTRS의 확장 기능을 사용하려면 여러 Perl 모듈이 필요합니다. 예시 설치 명령:

yum -y install "perl(Text::CSV_XS)" "perl(Crypt::Eksblowfish::Bcrypt)" "perl(YAML::XS)" "perl(JSON::XS)" "perl(Encode::HanExtra)" "perl(Mail::IMAPClient)" "perl(ModPerl::Util)"

OTRS 제공 모듈 검사 도구 실행:

cd /opt/otrs/bin
./otrs.CheckModules.pl

출력 예시(설치된 모듈 목록과 상태 표시). 필요한 모듈이 빠져 있으면 yum으로 추가 설치하세요.

OTRS 데몬 시작 및 크론 설정

OTRS 데몬을 otrs 사용자로 시작:

su -c "/opt/otrs/bin/otrs.Daemon.pl start" -s /bin/bash otrs

CentOS 방화벽 비활성화(테스트용):

systemctl stop firewalld
systemctl disable firewalld.service

운영 환경에서는 특정 포트(80, 443, 3306 등)만 허용하는 방화벽 규칙을 구성하세요.

OTRS 크론잡 시작 예시:

su -c "/opt/otrs/bin/otrs.Daemon.pl start" -s /bin/bash otrsCron.sh

크론에 OTRS 등록(otrs 사용자로 변경 후):

su otrs
crontab -e

예시 crontab 내용(메일 수신 및 데몬 상태 확인):

# Who gets the cron emails?
MAILTO="root@localhost"

# check OTRS daemon status
*/5 * * * *    $HOME/bin/otrs.Daemon.pl start >> /dev/null

웹 설치 마무리: OTRS 인스톨러 사용

웹 브라우저에서 다음 URL을 엽니다(호스트명 또는 IP 사용):

https://centos7.local/otrs/installer.pl

첫 화면에서 설치 단계(4단계)를 따라 진행합니다. 데이터베이스는 MySQL(MariaDB)을 선택하고 “Create a new database for OTRS” 옵션으로 진행하면 설치 프로그램이 데이터베이스를 생성합니다.

OTRS 설치 화면

라이선스 동의 화면에서 라이선스를 읽고 수락하세요.

라이선스 동의 화면

데이터베이스 설정 화면에서 MariaDB 사용자명, 비밀번호, 호스트를 입력하고 설정 확인을 클릭합니다.

데이터베이스 로그인 정보 입력 화면

설치 프로그램이 데이터베이스를 생성하면 다음과 같은 진행 화면을 볼 수 있습니다.

OTRS 데이터베이스 생성 진행 화면

생성 완료 화면 예시:

OTRS 데이터베이스 생성 완료

시스템 설정, 관리자 계정 및 이메일 설정을 완료합니다. 이메일 아웃바운드(예: SMTPS/TLS 포트 587)와 인바운드(POP3/IMAP) 설정은 실제 메일서버 환경에 맞춰 구성하세요.

개인 설정 입력 화면

OTRS 이메일 설정 화면

설치가 끝나면 관리자 계정 정보가 제공됩니다. 로그인 후 즉시 비밀번호를 변경하세요.

OTRS 관리자 계정 정보 화면

로그인 페이지 예시:

https://centos7.local/otrs/index.pl

OTRS 관리자 로그인 화면

OTRS가 설치되었으며, 이후 비즈니스 규칙과 워크플로우에 따라 세부 설정을 진행하세요.

운영 전 점검 체크리스트

  • SELinux 및 방화벽 설정이 정책에 맞게 구성되었는가?
  • MariaDB 백업 스케줄과 모니터링이 설정되었는가?
  • 웹서버 SSL이 유효하고, 강력한 프로토콜만 허용되는가?
  • OTRS 데몬 및 cron 작업이 정상 동작하는가?
  • 시스템 사용자 권한이 최소 권한 원칙을 따르는가?
  • 이메일 송수신 테스트(인바운드/아웃바운드)가 성공하는가?

역할별 빠른 체크리스트:

  • 시스템 관리자: 방화벽, SELinux, 패키지 업데이트, 백업 정책
  • 데이터베이스 관리자: MariaDB 성능 파라미터, 백업, 사용자 권한
  • 애플리케이션 관리자: OTRS 업그레이드 계획, 템플릿/트리거 점검

배포 및 롤아웃 미니 방법론

  1. 테스트 환경 구축: 별도의 VM에 동일한 설정으로 설치하고 기능검증
  2. 데이터 마이그레이션(있는 경우): 기존 티켓/사용자 데이터의 샘플 이관 테스트
  3. 사용자 수용 테스트(UAT): 대표 사용자 그룹으로 시나리오 테스트
  4. 프로덕션 롤아웃: 유지보수 창에 배포, 모니터링 강화
  5. 사후 점검: 초기 48시간 주요 지표(이메일 처리율, 응답시간) 확인

간단한 의사결정 흐름(Mermaid)

flowchart TD
  A[설치 시작] --> B{테스트 환경 필요?}
  B -- 예 --> C[테스트 VM에 설치]
  B -- 아니오 --> D[프로덕션에 설치]
  C --> E{테스트 성공?}
  E -- 예 --> D
  E -- 아니오 --> F[문제 수정 및 반복]
  D --> G[운영 점검 및 모니터링]

일반적인 문제와 해결책

  1. Apache가 시작되지 않음

    • 원인: 포트 충돌, SSL 설정 오류, 파일 권한 문제
    • 조치: journalctl -xe 및 /var/log/httpd/error_log 확인, ssl.conf의 경로/파일 권한 점검
  2. MariaDB 연결 오류

    • 원인: 잘못된 사용자/비밀번호, 호스트 접근 권한
    • 조치: MySQL 로그(/var/log/mysqld.log) 확인, 사용자 호스트 설정 확인
  3. Perl 모듈 누락

    • 원인: 의존성 미설치
    • 조치: ./otrs.CheckModules.pl 출력 확인 후 yum으로 개별 모듈 설치
  4. 웹 인스톨러에서 데이터베이스 생성 실패

    • 원인: 권한 부족 또는 잘못된 접속 정보
    • 조치: MariaDB에서 수동으로 데이터베이스와 사용자 생성 후 다시 시도

보안 권고

  • 운영 환경에서는 SELinux를 가능한 활성화 상태로 운영하고, 필요한 정책만 허용하세요.
  • SSL 인증서는 공인 CA에서 발급받아 사용하세요. 자체 서명 인증서는 테스트 전용으로 한정하세요.
  • MariaDB 네트워크 접근은 내부 네트워크로 제한하고, 외부 접근이 필요한 경우 VPN이나 방화벽으로 보호하세요.
  • 정기적인 패치와 취약점 스캔을 실시하세요.

개인정보 및 규정 준수 노트

OTRS에 고객 개인정보(이름, 이메일, 통화 내용 등)를 저장하는 경우 다음을 고려하세요:

  • 최소한의 데이터만 수집하고 저장하세요.
  • 로그 보존 기간을 정책에 따라 설정하고 만료된 데이터는 안전하게 삭제하세요.
  • 접근 권한은 역할 기반으로 제한하세요.
  • GDPR/개인정보보호법 적용 지역에서는 사용자 동의 및 데이터 주체 권리(열람·삭제)를 보장하세요.

테스트 케이스 예시(간단)

  • 로그인: 관리자 계정으로 로그인 가능
  • 이메일 송수신: 인바운드 티켓 생성, 아웃바운드 응답 전송 확인
  • 티켓 워크플로우: 티켓 생성→할당→해결→종결까지 상태 전환
  • 백업 복원: DB 백업 생성 후 복원 테스트

수용 기준

  • 설치 후 웹 UI 접근 가능
  • 관리자 계정으로 로그인 성공
  • 이메일 송수신이 정상 동작
  • ot r s 데몬과 cron이 정상 실행

주요 숫자 요약 팩트 박스

  • 권장 메모리(최소): 2GB (소규모 테스트)
  • 권장 디스크: 최소 20GB 이상(로그/첨부파일 고려)
  • OTRS 버전: 5.x (이 가이드 기준)
  • 권장 TLS: 1.2 이상

1줄 용어집

  • OTRS: 오픈소스 티켓 관리 시스템
  • SLA: 서비스 수준 계약
  • CSR: 인증서 서명 요청

설치 SOP 핵심 단계(요약)

  1. 시스템 업데이트 및 기본 도구 설치
  2. 네트워크 및 호스트명 설정
  3. SELinux 및 방화벽 정책 검토
  4. MariaDB 설치 및 보안 설정
  5. OTRS 패키지 설치 및 Apache 구성
  6. SSL 인증서 생성 또는 배포
  7. Perl 모듈 설치 및 체크
  8. OTRS 데몬 및 cron 설정
  9. 웹 설치 마법사로 마무리
  10. 운영 전 점검 및 모니터링 설정

마이그레이션/호환성 노트

  • OTRS 5는 Perl 기반으로 향후 업그레이드 시 호환성 검토가 필요합니다. 기존 티켓 데이터를 다른 시스템으로 이전하려면 CSV/XML 추출 및 매핑 계획을 세우세요.

요약

이 가이드는 CentOS 7 환경에 OTRS 5를 설치하고 운영할 때 필요한 전체 흐름과 운영 전 점검, 보안 권고, 문제 해결 팁을 제공합니다. 테스트 환경에서 충분히 검증한 뒤 프로덕션에 배포하고, 보안·백업 정책을 반드시 수립하세요.

Important: 운영 환경에서는 테스트용 설정(SELinux 비활성화, 방화벽 전체 비활성화, 자체 서명 인증서 사용)을 그대로 두지 마십시오. 프로덕션에서는 최소 권한 원칙과 인증서 관리를 준수하세요.

끝으로, 설치 후 기본 동작을 확인하면 OTRS를 조직의 지원 프로세스에 맞춰 세부적으로 튜닝하세요.

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

유사한 자료

WhatsApp에 실제 번호 없이 가입하는 완전 가이드
프라이버시

WhatsApp에 실제 번호 없이 가입하는 완전 가이드

Windows 컨텍스트 메뉴에 Select 메뉴 추가하는 방법
Windows 가이드

Windows 컨텍스트 메뉴에 Select 메뉴 추가하는 방법

인스타그램 특정 메시지에 답장하는 방법
소셜 미디어

인스타그램 특정 메시지에 답장하는 방법

Microsoft 스토어 환불 요청 가이드
가이드

Microsoft 스토어 환불 요청 가이드

VMware Workstation 17 Player 업그레이드 및 설정 가이드
가상화

VMware Workstation 17 Player 업그레이드 및 설정 가이드

Windows 오류 126 해결 방법 — 전체 가이드
문제해결

Windows 오류 126 해결 방법 — 전체 가이드