티스토리 뷰

Develope/Server

linux에 openfire 설치하기

Jason park@ 2017. 1. 6. 14:09
반응형
5년전부터 사내 메신저로 spark를 커스트마이징해서 사용하고 있다.

업무특성상 사원정보 변동이 잦은편이었는데 spark로 바꾸고 나서부터  
 openfire에서 제공하는 rest api플러그인을 이용해서 사원정보를 자동으로 쉽게 관리될수있게 하니 정말 편리하다.

spark 라는 메신저가 제공하는 기능이 많지는 않으나 기본기에 충실하고 맥과 윈도우의 두 플랫폼에서 모두 사용가능하고  커스트마이징이 가능한점을 보면 충분히 매력적인 소프트웨어라고 생각된다.

최근 webrtc가 ofmeet이라는 플러그인으로 제공되면서 정말 쉽게 화상채팅을 구현할수 있게되었다.

대신 이 플러그인을 이용하려면 openfire 4버전 이상이어야 해서 업그레이드를 해야하는 상황이 오게되었다.

설치한지도 오래되었고 해서 다시 예전 기록들 보면서 정리를 해본다.

필자의 운영중인 서버는 centos7 / mysql 환경에서 구동중이라는점 참고!


openfire 설치 하기 

step.1 openfire.rpm 다운받기


64bit 환경 :
wget http://igniterealtime.org/downloadServlet?filename=openfire/openfire-4.1.1-1.x86_64.rpm

32bit 환경 :
wget http://igniterealtime.org/downloadServlet?filename=openfire/openfire-4.1.1-1.i686.rpm


step2. rpm 설치하기

yum install 받은파일.rpm


step3. service 시작하기

service openfire start


서비스 실행이 안되고 에러가 나는 경우

centos7 에서는 systemctl status openfire.service -l 로 자세한 내용을 살펴보면 되는데

Failed to start SYSV: Openfire is an XMPP server, which is a server that facilitates XML based communication

위와같은 에러인 경우에는 CPU 정보를 확인 해서 32비트 64비트 환경에 맞는 rpm 파일을 다시 받아서 설치하면 된다.


설치했던 openfire 를 삭제하는 방법은 다음과 같다.

  yum remove openfire


--------------------------------------------------------------

여기까지 설치를 잘 끝냈다면, 이제 openfire GUI 화면에서 환경설정을 진행하면 끝난다.


그전에 database 환경부터 미리 세팅을 하자.

1. DB에 openfire 관련 테이블들이 생성될수 있도록 스키마를 미리 만들어둔다.

(ex. openfire )

2. openfire 서비스가 DB에 접근할수 있도록 user 정보를 생성한다.(optional)

같은 서버내에 mysql을 사용중이라면 openfire@localhost 라는 사용자 정보로 

ALTER,CREATE,INSERT,UPDATE,DELETE,INDEX,DROP 등의 기본적인 권한을 부여한다.


이제 본격적으로 admin console 에 접속해보자. 


1. 브라우저에 다음 주소를 입력한다.

http://[설치한 서버의 IP 또는 도메인명]:9090 

( 접속이 안된다면 서비스가 잘 실행되었는지, 방화벽에 포트가 막히진 않았는지 확인한다. )

한국어는 기본적으로 지원이 안되니.. 다른 익숙한 언어를 선택한다.


2. 네트워크 설정

XMPP Domain Name : 서버 도메인 주소를 입력한다. ( ex : brtech.kr )

Server Host Name : 동일하게 서버 도메인 주소를 입력한다. 

클러스터링 할게 아니면 간단히 입력해도 무관하다. 


3. 데이터베이스 어떻게 접속할건지 선택

mysql, oracle, postgre 는 첫번째 옵션을 선택한다. 


4. DB 접속 정보 설정

데이터 베이스 종류를 선택하면 기본적인 항목은 자동입력되는데 

Database URL 은 꼭 편집을 해주어야 한다.

앞단계에서 미리 생성해둔 openfire 접속 정보로 다음과 같이 입력한다. 

jdbc:mysql://localhost:3306/openfire?rewriteBatchedStatements=true

접속중 에러가 나는 경우

tail -f /opt/openfire/logs/error.log 로 에러 원인을 분석한다.

org.jivesoftware.database.DbConnectionManager - Access denied for user 'openfire'@'127.0.0.1' (using password: YES)

java.sql.SQLException: Access denied for user 'openfire'@'127.0.0.1' (using password: YES)


이런 에러가 나는 경우 패스워드 에러이거나 host 정보 오류일수있다.

패스워드를 확인하고 openfire@localhost 를 openfire@127.0.0.1 로도 바꾸어보자~ 


5. 프로필 설정

유저와 그룹설정에 크게 보안을 신경쓸게 아니면 default를 선택하자!  


6. 관리자 정보입력부분이다. ( 필자는 재설치를 하기 때문에 아래처럼 나온다는것 참고! ) 



여기까지 설정이 끝나면 기본적인 openfire 설치가 끝이난다!


이후 유저만 추가하면 바로 XMPP client들로 메신저 접속이 바로 가능하다.


필요한경우 플러그인을 설치하고, 환경설정을 조금만 바꿔주면 더욱 유용한 메신저 서버를 만들수 있다.


아래 그림은 필자가 사용하고있는 플러그인들이다.


반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함