본문 바로가기
컴퓨터 활용(한글, 오피스 등)/기타

LibreOffice를 Nextcloud와 통합하는 방법

by 3604 2026. 4. 9.
728x90

LibreOffice를 Nextcloud와 통합하는 방법

이 페이지에서

오랫동안 리브레오피스(LibreOffice)는 리눅스 환경에서 최고의 생산성 도구로 자리매김해 왔습니다. 하지만 독립형으로 제공되는 리브레오피스 클라이언트는 온라인 협업, 구글 생산성 도구 및 구글 드라이브 스타일의 협업 기능 측면에서 다소 제한적입니다.

바로 이러한 점을 보완하기 위해 콜라보라(Collabora)가 등장했습니다. 콜라보라는 리브레오피스 온라인(Libre Office Online)의 수정 버전으로, 여러 독점적인 인터넷 오피스 도구에 견줄 만한 다양한 기능을 제공합니다. 특히, 이 소프트웨어는 많은 자체 호스팅  클라우드 솔루션에 직접 통합될 수 있다는 장점을 가지고 있습니다. 다음은 리브레오피스를 넥스트클라우드(NextCloud)와 통합하는 방법에 대한 설명입니다.

콜라보라 소프트웨어를 설정하는 과정은 다소 복잡할 수 있지만, 특히 리눅스 환경에서 자체 오피스 솔루션을 구축하고자 하는 사용자에게는 충분히 가치 있는 노력입니다.

참고: 콜라보라 소프트웨어를 사용하려면 유효한 SSL 인증서를 갖춘 도커(Docker) 기반의 넥스트클라우드 서버가 필요합니다. 스냅(Snap) 방식으로 설치된 넥스트클라우드 서버는 작동하지 않는다는 점을 유의해 주십시오.

우분투 서버에서 넥스트클라우드 설정하기

넥스트클라우드에서 콜라보라를 사용하기 위한 첫 번째 단계는 도커 방식으로 넥스트클라우드 서버를 설정하는 것입니다. 이를 위해 도커를 설치하고 도커 허브(Docker Hub)에서 최신 넥스트클라우드 컨테이너를 가져와야 합니다.

콜라보라 설정을 위해서는 우분투 서버 환경이 가장 적합하므로, 이 튜토리얼에서는 우분투 서버를 중심으로 설명합니다. 하지만 우분투 서버를 사용하지 않는 경우에도 대부분의 시스템에서 설정 과정이 거의 동일하므로, 안내에 따라 진행하시면 됩니다.

sudo docker pull undeadhunter/nextcloud-letsencrypt

넥스트클라우드 도커 컨테이너를 가져오는 과정은 스냅 설치와 매우 유사하며, 특별한 설정이나 구성이 필요하지 않습니다. 대신, 루트 권한을 종료하고 일반 사용자 권한으로 전환하면 됩니다.

참고: LAN 외부에서 콜라보라에 접근하려면 넥스트클라우드 및 도커에 SSL을 설정해야 합니다. 이를 설정하는 방법에 대한 자세한 내용은 공식 문서를 참조하시기 바랍니다.

sudo docker run -it --name nextcloud --hostname nextcloud-letsencrypt -e CERTBOT_DOMAIN="nextcloud-letsencrypt" -e CERTBOT_EMAIL="email" -p 80:80 -p 443:443 undeadhunter/nextcloud-letsencrypt

명령어가 성공적으로 실행되면 넥스트클라우드가 실행 중일 것입니다. 웹 브라우저를 통해 다음 주소로 접근할 수 있습니다.

https://ip.address:8080

도커 컨테이너 내에서 넥스트클라우드 설치 단계를 완료한 후, 새 탭을 열어 렛츠인크립트(LetsEncrypt)를 사용하여 새로운 SSL 인증서를 생성하십시오.

sudo docker exec -it nextcloud-crypt /certbot.sh

콜라보라 설정

이제 넥스트클라우드 도커 서버가 실행 중입니다. 다음 단계로, 넥스트클라우드 및 콜라보라 오피스 플러그인과 상호 작용할 수 있도록 콜라보라 서버를 설정해야 합니다.

넥스트클라우드와 마찬가지로, 콜라보라 소프트웨어도 도커 이미지 내에서 실행되어야 합니다. `docker pull` 명령을 사용하여 최신 버전의 콜라보라 서버 소프트웨어를 가져옵니다.

sudo docker pull collabora/code

콜라보라가 정상적으로 작동하려면 넥스트클라우드와 함께 실행되어야 합니다. `docker run` 명령을 사용하여 서버를 시작합니다. 명령을 편집하여 필요에 맞게 "nextcloudserveraddress"를 변경해야 합니다.

참고: 백슬래시 기호를 제거하지 마십시오!

sudo docker run -t -d -p 127.0.0.1:9980:9980 -e 'domain=nextcloudserveraddress' --restart always --cap-add MKNOD collabora/code

아파치 리버스 프록시 설정

콜라보라 소프트웨어가 효과적으로 작동하려면 리버스 프록시(Reverse Proxy)가 필요합니다. 리버스 프록시를 실행하려면 아파치2(Apache2)가 필요하므로, 서버에 이미 설치되어 있어야 합니다. 우분투에서 아파치2 서버는 다음 명령을 사용하여 쉽게 설치할 수 있습니다.

sudo apt install lamp-server^

아파치2가 설정되면 `a2enmod`를 사용하여 프록시 모듈을 활성화합니다. 이러한 모듈은 중요하며, 리버스 프록시는 이러한 모듈 없이는 작동하지 않습니다.

sudo a2enmod proxy
sudo a2enmod proxy_wstunnel
sudo a2enmod proxy_http
sudo a2enmod ssl

모듈이 활성화되면, 새로운 가상 호스트 파일을 생성해야 합니다. 터미널에서 `touch` 명령을 사용하여 새 구성 파일을 만듭니다.

sudo touch /etc/apache2/sites-available/your-collabora-site.com.conf

콜라보라는 소프트웨어와 함께 프록시를 실행하기 위해 SSL 인증서가 필요합니다. 가장 빠른 방법은 렛츠인크립트 도구를 사용하는 것입니다. 다음 명령을 터미널에서 실행하여 아파치2용 렛츠인크립트를 설치합니다.

sudo apt install letsencrypt python-letsencrypt-apache
sudo letsencrypt --apache --agree-tos --email email-address -d collabora-server-ip-or-domain.com

나노(Nano) 편집기를 사용하여 새 가상 호스트 파일을 엽니다.

sudo nano /etc/apache2/sites-available/your-collabora-site.conf

다음 코드를 나노 편집기에 붙여넣습니다.


<가상 호스트 *:443>
서버 이름 office.your-domain.com

SSLCertificateFile /etc/letsencrypt/live/collabora-server-ip-or-domain.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/collabora-server-ip-or-domain.com/privkey.pem
/etc/letsencrypt/options-ssl-apache.conf 포함

# 인코딩된 슬래시를 허용해야 합니다.
AllowEncodedSlashes NoDecode

# 컨테이너는 고유한 서명되지 않은 인증서를 사용합니다.
SSLProxyEngine 켜기
SSLProxy확인 없음
SSLProxyCheckPeerCN 끄기
SSLProxyCheckPeerName 꺼짐

# 호스트를 유지
ProxyPreserveHost 켜기

# loolwsd에서 제공하는 정적 html, js, 이미지 등
# loleaflet은 LibreOffice Online의 클라이언트 부분입니다.
ProxyPass /loleaflet https://127.0.0.1:9980/loleaflet 재시도=0
ProxyPassReverse /loleaflet https://127.0.0.1:9980/loleaflet

# WOPI 검색 URL
ProxyPass /hosting/discovery https://127.0.0.1:9980/hosting/discovery 재시도=0
ProxyPassReverse /hosting/discovery https://127.0.0.1:9980/hosting/discovery

# 메인 웹소켓
ProxyPassMatch “/lool/(.*)/ws$” wss://127.0.0.1:9980/lool/$1/ws nocanon

# 관리 콘솔 웹 소켓
ProxyPass /lool/adminws wss://127.0.0.1:9980/lool/adminws

# 다른 이름으로 다운로드, 전체 화면 프레젠테이션 및 이미지 업로드 작업
ProxyPass /lool https://127.0.0.1:9980/lool
ProxyPassReverse /lool https://127.0.0.1:9980/lool

 

Ctrl + O를 눌러 문서를 저장한 다음 다음 명령을 사용하여 아파치2를 다시 시작합니다.

sudo sytemctl restart apache2

리브레오피스를 넥스트클라우드와 통합하기

콜라보라를 실행하는 데 필요한 모든 설정이 완료되었습니다. 이제 남은 것은 리브레오피스를 넥스트클라우드와 통합하는 것입니다. 통합을 활성화하려면 넥스트클라우드 웹 인터페이스를 열고 톱니바퀴 아이콘을 선택한 다음 "앱" 버튼을 클릭합니다.

"Collabora" 앱 섹션을 찾아 설치 버튼을 클릭하여 설치합니다. 그런 다음 넥스트클라우드 관리 인터페이스로 돌아가 "관리"를 클릭하고 "콜라보라 온라인"을 클릭합니다.

관리자 인터페이스의 "콜라보라 온라인" 섹션에서 콜라보라 온라인 서버의 IP 주소를 입력하고 "적용" 버튼을 클릭하여 설정을 저장합니다.

이제 모든 사용자가 넥스트클라우드 웹 인터페이스를 통해 모든 PC에서 넥스트클라우드 콜라보라에 접근하여 사용할 수 있습니다.

LibreOffice를 Nextcloud와 통합하는 방법

이 페이지에서

오랫동안 리브레오피스(LibreOffice)는 리눅스 환경에서 최고의 생산성 도구로 자리매김해 왔습니다. 하지만 독립형으로 제공되는 리브레오피스 클라이언트는 온라인 협업, 구글 생산성 도구 및 구글 드라이브 스타일의 협업 기능 측면에서 다소 제한적입니다.

바로 이러한 점을 보완하기 위해 콜라보라(Collabora)가 등장했습니다. 콜라보라는 리브레오피스 온라인(Libre Office Online)의 수정 버전으로, 여러 독점적인 인터넷 오피스 도구에 견줄 만한 다양한 기능을 제공합니다. 특히, 이 소프트웨어는 많은 자체 호스팅  클라우드 솔루션에 직접 통합될 수 있다는 장점을 가지고 있습니다. 다음은 리브레오피스를 넥스트클라우드(NextCloud)와 통합하는 방법에 대한 설명입니다.

콜라보라 소프트웨어를 설정하는 과정은 다소 복잡할 수 있지만, 특히 리눅스 환경에서 자체 오피스 솔루션을 구축하고자 하는 사용자에게는 충분히 가치 있는 노력입니다.

참고: 콜라보라 소프트웨어를 사용하려면 유효한 SSL 인증서를 갖춘 도커(Docker) 기반의 넥스트클라우드 서버가 필요합니다. 스냅(Snap) 방식으로 설치된 넥스트클라우드 서버는 작동하지 않는다는 점을 유의해 주십시오.

우분투 서버에서 넥스트클라우드 설정하기

넥스트클라우드에서 콜라보라를 사용하기 위한 첫 번째 단계는 도커 방식으로 넥스트클라우드 서버를 설정하는 것입니다. 이를 위해 도커를 설치하고 도커 허브(Docker Hub)에서 최신 넥스트클라우드 컨테이너를 가져와야 합니다.

콜라보라 설정을 위해서는 우분투 서버 환경이 가장 적합하므로, 이 튜토리얼에서는 우분투 서버를 중심으로 설명합니다. 하지만 우분투 서버를 사용하지 않는 경우에도 대부분의 시스템에서 설정 과정이 거의 동일하므로, 안내에 따라 진행하시면 됩니다.

sudo docker pull undeadhunter/nextcloud-letsencrypt

넥스트클라우드 도커 컨테이너를 가져오는 과정은 스냅 설치와 매우 유사하며, 특별한 설정이나 구성이 필요하지 않습니다. 대신, 루트 권한을 종료하고 일반 사용자 권한으로 전환하면 됩니다.

참고: LAN 외부에서 콜라보라에 접근하려면 넥스트클라우드 및 도커에 SSL을 설정해야 합니다. 이를 설정하는 방법에 대한 자세한 내용은 공식 문서를 참조하시기 바랍니다.

sudo docker run -it --name nextcloud --hostname nextcloud-letsencrypt -e CERTBOT_DOMAIN="nextcloud-letsencrypt" -e CERTBOT_EMAIL="email" -p 80:80 -p 443:443 undeadhunter/nextcloud-letsencrypt

명령어가 성공적으로 실행되면 넥스트클라우드가 실행 중일 것입니다. 웹 브라우저를 통해 다음 주소로 접근할 수 있습니다.

https://ip.address:8080

도커 컨테이너 내에서 넥스트클라우드 설치 단계를 완료한 후, 새 탭을 열어 렛츠인크립트(LetsEncrypt)를 사용하여 새로운 SSL 인증서를 생성하십시오.

sudo docker exec -it nextcloud-crypt /certbot.sh

콜라보라 설정

이제 넥스트클라우드 도커 서버가 실행 중입니다. 다음 단계로, 넥스트클라우드 및 콜라보라 오피스 플러그인과 상호 작용할 수 있도록 콜라보라 서버를 설정해야 합니다.

넥스트클라우드와 마찬가지로, 콜라보라 소프트웨어도 도커 이미지 내에서 실행되어야 합니다. `docker pull` 명령을 사용하여 최신 버전의 콜라보라 서버 소프트웨어를 가져옵니다.

sudo docker pull collabora/code

콜라보라가 정상적으로 작동하려면 넥스트클라우드와 함께 실행되어야 합니다. `docker run` 명령을 사용하여 서버를 시작합니다. 명령을 편집하여 필요에 맞게 "nextcloudserveraddress"를 변경해야 합니다.

참고: 백슬래시 기호를 제거하지 마십시오!

sudo docker run -t -d -p 127.0.0.1:9980:9980 -e 'domain=nextcloudserveraddress' --restart always --cap-add MKNOD collabora/code

아파치 리버스 프록시 설정

콜라보라 소프트웨어가 효과적으로 작동하려면 리버스 프록시(Reverse Proxy)가 필요합니다. 리버스 프록시를 실행하려면 아파치2(Apache2)가 필요하므로, 서버에 이미 설치되어 있어야 합니다. 우분투에서 아파치2 서버는 다음 명령을 사용하여 쉽게 설치할 수 있습니다.

sudo apt install lamp-server^

아파치2가 설정되면 `a2enmod`를 사용하여 프록시 모듈을 활성화합니다. 이러한 모듈은 중요하며, 리버스 프록시는 이러한 모듈 없이는 작동하지 않습니다.

sudo a2enmod proxy
sudo a2enmod proxy_wstunnel
sudo a2enmod proxy_http
sudo a2enmod ssl

모듈이 활성화되면, 새로운 가상 호스트 파일을 생성해야 합니다. 터미널에서 `touch` 명령을 사용하여 새 구성 파일을 만듭니다.

sudo touch /etc/apache2/sites-available/your-collabora-site.com.conf

콜라보라는 소프트웨어와 함께 프록시를 실행하기 위해 SSL 인증서가 필요합니다. 가장 빠른 방법은 렛츠인크립트 도구를 사용하는 것입니다. 다음 명령을 터미널에서 실행하여 아파치2용 렛츠인크립트를 설치합니다.

sudo apt install letsencrypt python-letsencrypt-apache
sudo letsencrypt --apache --agree-tos --email email-address -d collabora-server-ip-or-domain.com

나노(Nano) 편집기를 사용하여 새 가상 호스트 파일을 엽니다.

sudo nano /etc/apache2/sites-available/your-collabora-site.conf

다음 코드를 나노 편집기에 붙여넣습니다.


<가상 호스트 *:443>
서버 이름 office.your-domain.com

SSLCertificateFile /etc/letsencrypt/live/collabora-server-ip-or-domain.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/collabora-server-ip-or-domain.com/privkey.pem
/etc/letsencrypt/options-ssl-apache.conf 포함

# 인코딩된 슬래시를 허용해야 합니다.
AllowEncodedSlashes NoDecode

# 컨테이너는 고유한 서명되지 않은 인증서를 사용합니다.
SSLProxyEngine 켜기
SSLProxy확인 없음
SSLProxyCheckPeerCN 끄기
SSLProxyCheckPeerName 꺼짐

# 호스트를 유지
ProxyPreserveHost 켜기

# loolwsd에서 제공하는 정적 html, js, 이미지 등
# loleaflet은 LibreOffice Online의 클라이언트 부분입니다.
ProxyPass /loleaflet https://127.0.0.1:9980/loleaflet 재시도=0
ProxyPassReverse /loleaflet https://127.0.0.1:9980/loleaflet

# WOPI 검색 URL
ProxyPass /hosting/discovery https://127.0.0.1:9980/hosting/discovery 재시도=0
ProxyPassReverse /hosting/discovery https://127.0.0.1:9980/hosting/discovery

# 메인 웹소켓
ProxyPassMatch “/lool/(.*)/ws$” wss://127.0.0.1:9980/lool/$1/ws nocanon

# 관리 콘솔 웹 소켓
ProxyPass /lool/adminws wss://127.0.0.1:9980/lool/adminws

# 다른 이름으로 다운로드, 전체 화면 프레젠테이션 및 이미지 업로드 작업
ProxyPass /lool https://127.0.0.1:9980/lool
ProxyPassReverse /lool https://127.0.0.1:9980/lool

 

Ctrl + O를 눌러 문서를 저장한 다음 다음 명령을 사용하여 아파치2를 다시 시작합니다.

sudo sytemctl restart apache2

리브레오피스를 넥스트클라우드와 통합하기

콜라보라를 실행하는 데 필요한 모든 설정이 완료되었습니다. 이제 남은 것은 리브레오피스를 넥스트클라우드와 통합하는 것입니다. 통합을 활성화하려면 넥스트클라우드 웹 인터페이스를 열고 톱니바퀴 아이콘을 선택한 다음 "앱" 버튼을 클릭합니다.

"Collabora" 앱 섹션을 찾아 설치 버튼을 클릭하여 설치합니다. 그런 다음 넥스트클라우드 관리 인터페이스로 돌아가 "관리"를 클릭하고 "콜라보라 온라인"을 클릭합니다.

관리자 인터페이스의 "콜라보라 온라인" 섹션에서 콜라보라 온라인 서버의 IP 주소를 입력하고 "적용" 버튼을 클릭하여 설정을 저장합니다.

이제 모든 사용자가 넥스트클라우드 웹 인터페이스를 통해 모든 PC에서 넥스트클라우드 콜라보라에 접근하여 사용할 수 있습니다.

출처: LibreOffice를 Nextcloud와 통합하는 방법

728x90