서버 설치 · 5 min read · Sep 26, 2025

우분투 24.04 서버에 Nextcloud 설치하는 방법

Nextcloud는 공용 및 개인 파일 저장을 위한 오픈 소스 소프트웨어입니다. Dropbox, Google Drive 또는 Mega.nz와 같은 자체 호스팅 서비스를 만들 수 있습니다. 처음에는 원래 Owncloud 개발자인 Frank Karlitschek에 의해 만들어졌습니다. 2016년, 그는 Owncloud 프로젝트를 포크하여 “Nextcloud”라는 새로운 이름의 프로젝트를 만들었습니다.

Nextcloud 프로젝트는 빠르게 성장하고 있으며 파일 호스팅 소프트웨어 이상의 기능을 갖추고 있습니다. 파일 동기화 및 콘텐츠 협업 플랫폼에 더 가깝습니다. 많은 플러그인으로 지원되는 Nextcloud는 강력한 협업 소프트웨어가 되었습니다. 프로젝트 관리, 화상 회의, 공동 편집, 메모 작성, 이메일 클라이언트 등을 위한 플러그인을 설치할 수 있습니다.

이 튜토리얼에서는 우분투 24.04 서버에 Nextcloud를 설치하는 방법을 배웁니다. LAMP 스택으로 Nextcloud를 설치한 후 Certbot과 Letsencrypt를 통해 HTTPS로 Nextcloud를 보호합니다.

전제 조건

시작하기 전에 다음 사항을 확인하세요:

  • 우분투 24.04 서버
  • 관리자 권한이 있는 비루트 사용자
  • 서버 IP 주소를 가리키는 도메인 이름
  • UFW(간단한 방화벽)가 실행 중이어야 함

의존성 설치

이 섹션에서는 Nextcloud의 패키지 의존성을 설치합니다. LAMP 스택을 사용하여 Nextcloud를 실행하고, curl을 사용하여 Nextcloud 소스 코드를 다운로드한 후, Certbot과 Letsencrypt를 사용하여 Nextcloud를 HTTPS로 보호합니다.

시작하기 전에 아래 명령어를 실행하여 우분투 패키지 인덱스를 업데이트하세요.

sudo apt update

update repo

이제 다음 apt install 명령어로 Nextcloud 의존성을 설치합니다. 이 명령어는 LAMP 스택(리눅스, 아파치, MySQL/MariaDB 및 PHP), curl, unzip, ImageMagick 및 certbot을 설치합니다.

sudo apt install apache2 mariadb-server php php-curl php-cli php-mysql php-gd php-common php-xml php-json php-intl php-pear php-imagick php-dev php-common php-mbstring php-zip php-soap php-bz2 php-bcmath php-gmp php-apcu libmagickcore-dev php-redis php-memcached curl unzip imagemagick certbot python3-certbot-apache

설치를 확인하려면 Y를 입력하세요.

install deps

설치 후 아래 명령어를 사용하여 아파치 웹 서버 상태를 확인하세요. 아파치 웹 서버가 실행 중이고 활성화되어 있는 것을 볼 수 있습니다.

sudo systemctl is-enabled apache2  
sudo systemctl status apache2

test apache2

이제 다음 명령어로 MariaDB 서버 상태를 확인하세요. MariaDB가 실행 중이라는 비슷한 출력을 얻을 수 있어야 합니다.

sudo systemctl is-enabled mariadb  
sudo systemctl status mariadb

test mariadb

마지막으로 아래 명령어를 실행하여 시스템의 PHP 버전을 확인하세요. PHP 8.3이 설치되어 있는 것을 볼 수 있습니다.

php -v

test php

PHP 구성

의존성을 설치한 후, php.ini 파일을 편집하여 PHP를 구성합니다. 최대 메모리 제한 및 최대 업로드 크기와 같은 몇 가지 옵션에 대해 PHP 구성을 조정할 수 있습니다.

nano 편집기로 /etc/php/8.3/apache2/php.ini 파일을 엽니다.

sudo nano /etc/php/8.3/apache2/php.ini

기본 구성을 다음과 같이 변경하고, memory_limit를 최대 메모리로, date.timezone을 서버 위치/시간대에 맞게 조정하세요.

date.timezone = Europe/Amsterdam  
memory_limit = 512M  
upload_max_filesize = 500M  
post_max_size = 600M  
max_execution_time = 300  
file_uploads = On  
allow_url_fopen = On  
display_errors = Off  
output_buffering = Off

완료되면 파일을 저장하고 편집기를 종료하세요.

이제 아래 systemctl 명령어를 실행하여 아파치 웹 서버를 재시작하고 새로운 PHP 구성을 적용하세요.

sudo systemctl restart apache2

MariaDB 서버 구성

이제 PHP를 구성했으므로 MariaDB 서버를 구성하고 Nextcloud를 위한 새로운 데이터베이스와 사용자를 생성합니다. mariadb-secure-installation 유틸리티로 MariaDB를 보호한 후, mariadb 클라이언트를 통해 새로운 데이터베이스와 사용자를 생성합니다.

MariaDB 서버를 보호하려면 아래 mariadb-secure-installation 명령어를 실행하세요.

sudo mariadb-secure-installation

과정 중에 다음 MariaDB 서버 구성에 대해 질문을 받게 됩니다:

  • MariaDB 루트 비밀번호를 요청할 때 ENTER를 누릅니다.
  • unix_socket 인증 방법에 대해 질문할 때 n을 입력합니다.
  • MariaDB 루트 사용자에 대한 새 비밀번호를 설정하려면 Y를 입력합니다. 그런 다음 새 비밀번호를 입력하고 반복합니다.
  • MariaDB에서 기본 익명 사용자를 제거하려면 Y를 입력합니다.
  • 그런 다음 MariaDB 루트 사용자의 원격 로그인을 비활성화하려면 Y를 다시 입력합니다.
  • MariaDB에서 기본 데이터베이스 테스트를 제거하려면 Y를 입력합니다.
  • 마지막으로 Y를 다시 입력하여 테이블 권한을 다시 로드하고 변경 사항을 적용합니다.

다음으로 아래 mariadb 클라이언트 명령어를 실행하여 MariaDB 서버에 로그인합니다. 프롬프트가 나타나면 루트 비밀번호를 입력하세요.

sudo mariadb -u root -p

다음 쿼리를 실행하여 새로운 데이터베이스 nextclouddb와 사용자 nextcloud@localhost, 비밀번호 passw0rd를 생성합니다. 데이터베이스 세부정보는 귀하의 정보로 조정할 수 있습니다.

CREATE DATABASE nextclouddb;  
CREATE USER nextcloud@localhost IDENTIFIED BY 'passw0rd';  
GRANT ALL PRIVILEGES ON nextclouddb.* to nextcloud@localhost;  
FLUSH PRIVILEGES;

create datbase and user

이제 아래 쿼리를 실행하여 사용자 nextcloud@localhost가 데이터베이스 nextclouddb에 접근할 수 있는지 확인합니다.

SHOW GRANTS FOR nextcloud@localhost;

다음과 같은 출력을 보게 될 것입니다:

show user privileges

quit를 입력하여 MariaDB 서버에서 나갑니다.

HTTP 및 HTTPS 포트 열기

이 섹션에서는 Nextcloud에 대한 접근을 허용하기 위해 HTTP 및 HTTPS 포트를 엽니다. 따라서 UFW가 우분투 서버에서 구성되고 활성화되어 있는지 확인해야 합니다.

우분투에서 HTTP 및 HTTPS 포트를 모두 열려면 아래 ufw 명령어를 실행하세요. Apache Full 프로파일을 사용하여 HTTP 및 HTTPS 포트에 대한 연결을 허용합니다.

sudo ufw allow 'Apache Full'  
sudo ufw reload

이제 아래 명령어로 UFW의 규칙 목록을 확인하세요. Apache Full 프로파일이 우분투 서버에서 활성화되어 있는지 확인합니다.

sudo ufw status

setup ufw

Nextcloud 다운로드

이제 PHP, MariaDB 및 UFW를 구성했으므로 Nextcloud 소스 코드를 다운로드하고 Nextcloud 설치를 위한 문서 루트 디렉토리를 설정합니다.

/var/www 디렉토리로 이동하여 아래 curl 명령어로 Nextcloud 소스 코드를 다운로드합니다.

cd /var/www/  
sudo curl -o nextcloud.zip https://download.nextcloud.com/server/releases/latest.zip

다운로드가 완료되면 아래 unzip 명령어를 실행하여 Nextcloud를 추출합니다. 이렇게 하면 Nextcloud 루트 디렉토리가 /var/www/nextcloud로 설정됩니다.

sudo unzip nextcloud.zip

이제 아래 명령어를 실행하여 /var/www/nextcloud 디렉토리의 소유권을 사용자 www-data로 변경합니다.

sudo chown -R www-data:www-data /var/www/nextcloud

Nextcloud를 위한 아파치 가상 호스트 설정

Nextcloud를 다운로드한 후, Nextcloud를 위한 새로운 아파치 가상 호스트를 생성합니다. 그런 다음 SSL 인증서를 생성하고 Nextcloud를 HTTPS로 보호합니다.

다음 nano 편집기로 새로운 아파치 가상 호스트 구성 /etc/apache2/sites-available/nextcloud.conf를 생성합니다.

sudo nano /etc/apache2/sites-available/nextcloud.conf

아래 구성을 삽입하고 도메인 이름 nextcloud.howtoforge.local을 변경하세요.

  
 ServerName nextcloud.howtoforge.local  
 DocumentRoot /var/www/nextcloud/  
  
 # log files  
 ErrorLog /var/log/apache2/nextclouds.howtoforge.local-error.log  
 CustomLog /var/log/apache2/nextcloud.howtoforge.local-access.log combined  
  
   
 Options +FollowSymlinks  
 AllowOverride All  
  
   
 Dav off  
   
  
 SetEnv HOME /var/www/nextcloud  
 SetEnv HTTP_HOME /var/www/nextcloud  
   

완료되면 파일을 저장하고 편집기를 종료하세요.

이제 아래 명령어를 실행하여 가상 호스트 파일 nextcloud.conf를 활성화하고 아파치 구문을 확인하세요. 올바른 아파치 구문이 있으면 Syntax is OK라는 출력을 얻을 수 있습니다.

sudo a2ensite nextcloud.conf  
sudo apachectl configtest

다음으로 아래 systemctl 명령어를 실행하여 아파치 웹 서버를 재시작하고 변경 사항을 적용하세요.

sudo systemctl restart apache2

setup apache

아파치가 재시작되면 아래 certbot 명령어를 실행하여 SSL 인증서를 생성하고 Nextcloud 설치를 HTTPS로 보호하세요. 도메인 이름과 이메일 주소를 귀하의 정보로 변경하는 것을 잊지 마세요.

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d nextcloud.howtoforge.local

Nextcloud 설치

웹 브라우저를 열고 https://nexcloud.howtoforge.local/를 방문하세요. 구성이 성공적이라면 Nextcloud 설치 페이지가 표시됩니다.

Nextcloud 설치 페이지에서 다음을 구성하세요:

  • Nextcloud의 관리자 사용자 및 비밀번호 입력
  • 저장 경로를 기본 디렉토리로 선택
  • 생성한 Nextcloud 데이터베이스 세부정보 입력
  • 설치를 클릭하여 설치를 시작합니다.

install nextcloud

이제 몇 가지 Nextcloud 애플리케이션을 설치하거나 건너뛰기를 클릭할 수 있습니다.

skip apps installation

과정이 완료되면 다음 페이지가 표시됩니다:

nextcloud dashboard

결론

축하합니다! 우분투 24.04 서버에 Nextcloud 설치를 완료했습니다. Nextcloud는 LAMP 스택으로 실행 중이며 Certbot과 Letsencrypt를 통해 HTTPS로 보호되고 있습니다. 이제 새로운 사용자를 생성하고 Nextcloud에 파일을 업로드하거나 성능을 개선하기 위해 새로운 캐싱 방법을 추가할 수 있습니다.

Share: X/Twitter LinkedIn

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

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