Ubuntu 22.04에서 Nextcloud 설치 및 구성 방법

Ubuntu 22.04에서 Nextcloud 설치 및 구성 방법

2022-05-31 last update

11 minutes reading Storage Ubuntu 22.04 Applications Ubuntu

소개


Nextcloud는 ownCloud의 한 지점으로 파일 공유 서버로 개인 내용 (예를 들어 문서와 그림) 을 Dropbox처럼 집중된 위치에 저장할 수 있습니다.Nextcloud와의 차이점은 모든 기능이 오픈되어 있다는 것이다.또한 민감한 데이터의 제어와 안전을 귀하에게 되돌려 주어 제3자 클라우드 관리 서비스에 대한 사용을 없앴습니다.
이 강좌에서는 Ubuntu 22.04 서버에 Nextcloud 실례를 설치하고 설정합니다.

선결 조건


이 안내서의 단계를 완료하려면 다음이 필요합니다.
  • 서버에 설정된 비root sudo 사용자와 방화벽: sudo 권한이 있는 사용자를 만들고 Initial Server Setup with Ubuntu 22.04 기본 방화벽을 설정할 수 있습니다.
  • (선택 사항) 서버에 대한 도메인 이름: TLS/SSL을 사용하여 Nextcloud에 설치된 연결을 보호합니다.서버에 도메인 이름이 있으면 Nextcloud에서 무료로 신뢰할 수 있는 SSL 인증서를 설정하고 관리할 수 있습니다.없으면, Nextcloud는 암호화 연결을 위해 SSL 인증서를 설정할 수 있지만, 웹 브라우저에서 기본적으로 신뢰할 수 없습니다.Digital Ocean을 사용하는 경우 Let's Encrypt를 사용하려면 계정에 도메인을 추가하고 DNS 레코드를 관리하는 방법에 대해 알아보기 위해 Dell의 Let’s Encrypt을 참조하십시오.위 단계를 완료한 후 서버에서 Nextcloud를 설정하는 방법을 계속 학습합니다.

    1단계 – Nextcloud 설치


    포장 시스템을 사용하여 Nextcloud를 설치합니다.기본적으로 Ubuntu 22.04에서는 소프트웨어와 관련된 모든 의존항과 설정을 하나의 독립된 단원에 묶고 자동으로 업데이트할 수 있도록 이 패키지 시스템을 제공합니다.이것은 웹과 데이터베이스 서버를 설치하고 설정하는 것이 아니라 패키지를 설치하고 자동으로 처리하며 Nextcloud 응용 프로그램을 실행할 수 있다는 것을 의미한다.
    Nextcloud snap 패키지를 다운로드하여 시스템에 설치하려면 다음을 입력합니다.
    1. sudo snap install nextcloud
    Nextcloud 패키지가 서버에 다운로드되어 설치됩니다.스냅샷과 연관된 변경 사항을 나열하여 설치 프로세스가 성공했는지 확인할 수 있습니다.
    1. snap changes nextcloud
    Output
    ID Status Spawn Ready Summary 4 Done today at 16:12 UTC today at 16:12 UTC Install "nextcloud" snap
    상태 및 요약은 설치가 완료되었으며 문제가 없음을 나타냅니다.

    Nextcloud 스냅샷에 대한 추가 정보 얻기


    Nextcloud 스냅샷에 대한 자세한 내용을 보려면 명령을 사용하십시오.snap 명령은 설명, 사용 가능한 Nextcloud 관리 명령, 설치된 버전 및 추적 중인 스냅샷 채널을 표시합니다.
    1. snap info nextcloud
    스냅샷은 지원하는 연결을 정의할 수 있습니다. 이 연결은 슬롯과 플러그로 구성되어 있으며, 이 슬롯과 플러그가 연결되어 있을 때 스냅샷은 특정한 기능이나 액세스 수준에 접근할 수 있습니다.예를 들어, 네트워크 클라이언트를 충당해야 하는 스냅샷에는 snap info 연결이 있어야 합니다.이 스냅에 정의된 스냅network을 보려면 다음을 입력합니다.
    1. snap connections nextcloud
    Output
    Interface Plug Slot Notes network nextcloud:network :network - network-bind nextcloud:network-bind :network-bind - removable-media nextcloud:removable-media - -
    이 스냅샷이 제공하는 모든 특정 서비스와 응용 프로그램에 대해 알아보려면 다음 내용을 입력하여 스냅샷 정의 파일을 볼 수 있습니다.
    1. cat /snap/nextcloud/current/meta/snap.yaml
    디버그 도움말이 필요하면 스냅샷에 포함된 구성 요소를 볼 수 있습니다.

    2단계 – 관리 계정 구성


    여러 가지 방법으로 Nextcloud 스냅샷을 구성할 수 있습니다.이 안내서에서 우리는 웹 인터페이스를 통해 관리 사용자를 만들지 않고 명령줄에 관리 사용자를 만들어서 작은 창이 생기지 않도록 합니다. 이 창에서 서버 IP 주소나 도메인 이름에 접근하는 모든 사람이 관리자 등록 페이지에 접근할 수 있습니다.
    새 관리자 계정을 사용하여 Nextcloud를 구성하려면 connections 명령을 사용합니다.사용자 이름과 암호를 매개 변수로 입력해야 합니다.
    1. sudo nextcloud.manual-install sammy password
    다음 메시지는 Nextcloud가 올바르게 구성되었음을 나타냅니다.
    Output
    Nextcloud was successfully installed
    현재 Nextcloud가 설치되어 있습니다. Nextcloud가 서버의 도메인 이름이나 IP 주소를 사용하여 요청에 응답할 수 있도록 신뢰할 수 있는 도메인을 조정해야 합니다.

    3단계 – 신뢰할 수 있는 도메인 조정


    명령줄에서 설치할 때 Nextcloud 제한 인스턴스가 응답하는 호스트 이름입니다.기본적으로 이 서비스는 "localhost"호스트 이름에 대한 요청만 울립니다.서버의 도메인 이름이나 IP 주소를 통해 Nextcloud에 접근할 것이므로 이 설정을 조정하여 이러한 요청을 받아들여야 합니다.
    쿼리nextcloud.manual-install 배열의 값을 사용하여 현재 설정을 볼 수 있습니다.
    1. sudo nextcloud.occ config:system:get trusted_domains
    Output
    localhost
    현재 trusted_domains 만 그룹의 첫 번째 값으로 존재합니다.서버의 도메인 이름 또는 IP 주소를 입력하여 항목을 추가할 수 있습니다.
    1. sudo nextcloud.occ config:system:set trusted_domains 1 --value=example.com
    Output
    System config value trusted_domains => 1 set to string example.com
    신뢰할 수 있는 도메인을 다시 검색하면 다음과 같은 두 가지 항목이 표시됩니다.
    1. sudo nextcloud.occ config:system:get trusted_domains
    Output
    localhost example.com
    다른 액세스 Nextcloud 인스턴스를 추가하려면 인덱스 번호 증가localhost 명령(첫 번째 명령의 "1")을 다시 실행하고 조정config:system:set을 통해 다른 도메인이나 주소를 추가할 수 있습니다.

    4단계 – SSL을 사용하여 Nextcloud 웹 인터페이스 보호


    Nextcloud를 사용하기 전에 웹 인터페이스를 보호해야 합니다.
    Nextcloud 서버와 연결된 도메인 이름이 있다면, Nextcloud 스냅샷은 DNS documentation 에서 신뢰할 수 있는 SSL 인증서를 가져오고 설정하는 데 도움을 줄 수 있습니다.Nextcloud 서버에 도메인 이름이 없으면, Nextcloud는 자체 서명 인증서를 설정할 수 있습니다. 이 인증서는 웹 데이터를 암호화하지만 웹 브라우저에서 자동으로 신뢰하지 않습니다.
    이 점을 고려하여 아래 장면과 일치하는 부분을 따르십시오.

    옵션 1: Let's Encrypt를 사용하여 SSL 설정


    Nextcloud 서버와 연결된 도메인 이름이 있다면, 웹 인터페이스를 보호하는 최선의 선택은 Let's Encrypt SSL 인증서를 가져오는 것입니다.
    먼저 방화벽의 포트를 열어 도메인 소유권을 검증하기 위해 암호화합니다.이렇게 하면 Nextcloud 로그인 페이지에 공개적으로 액세스할 수 있지만 관리자 계정이 구성되어 있기 때문에 설치를 납치할 수 있는 사람은 없습니다.
    1. sudo ufw allow 80,443/tcp
    다음을 입력하여 Let's Encrypt 인증서를 요청합니다.
    1. sudo nextcloud.enable-https lets-encrypt
    먼저 서버가 Let's Encrypt 서비스에서 인증서를 요청하는 데 필요한 조건을 충족하는지 묻습니다.
    Output
    In order for Let's Encrypt to verify that you actually own the domain(s) for which you're requesting a certificate, there are a number of requirements of which you need to be aware: 1. In order to register with the Let's Encrypt ACME server, you must agree to the currently-in-effect Subscriber Agreement located here: https://letsencrypt.org/repository/ By continuing to use this tool you agree to these terms. Please cancel now if otherwise. 2. You must have the domain name(s) for which you want certificates pointing at the external IP address of this machine. 3. Both ports 80 and 443 on the external IP address of this machine must point to this machine (e.g. port forwarding might need to be setup on your router). Have you met these requirements? (y/n)
    계속--value을 입력합니다.
    다음에는 복구 작업에 사용할 전자 메일 주소가 필요합니다.
    Output
    Please enter an email address (for urgent notices or key recovery):
    전자 메일을 입력하고 y 를 눌러 계속합니다.
    마지막으로 Nextcloud 서버와 연관된 도메인 이름을 입력합니다.
    Output
    Please enter your domain name(s) (space-separated): example.com
    Let's Encrypt 인증서를 요청하고 문제가 해결되면 SSL을 즉시 실행하기 위해 내부 Apache 인스턴스를 다시 시작합니다.
    Output
    Attempting to obtain certificates... done Restarting apache... done
    이제 다음 단계로 넘어가서 Nextcloud에 처음 로그인할 수 있습니다.

    옵션 2: 자체 서명 인증서를 사용하여 SSL 설정


    Nextcloud 서버에 도메인 이름이 없으면 자체 서명 SSL 인증서를 생성하여 웹 인터페이스를 보호할 수 있습니다.이 인증서는 암호화 연결을 통해 웹 인터페이스에 접근할 수 있지만 서버의 신분을 검증할 수 없기 때문에 브라우저에 경고가 표시될 수 있습니다.
    자체 서명 인증서를 생성하고 Nextcloud를 사용하도록 구성하려면 다음을 입력합니다.
    1. sudo nextcloud.enable-https self-signed
    Output
    Generating key and self-signed certificate... done Restarting apache... done
    위의 출력은 Nextcloud가 자체 서명 인증서를 생성하고 활성화했음을 나타냅니다.
    현재 인터페이스가 안전합니다. 웹 인터페이스에 접근할 수 있도록 방화벽의 웹 포트를 열어 주십시오.
    1. sudo ufw allow 80,443/tcp
    이제 Nextcloud에 처음 로그인할 수 있습니다.

    5단계 – Nextcloud 웹 인터페이스 로그인


    이제 Nextcloud가 구성되었습니다. 웹 브라우저에서 서버의 도메인 이름이나 IP 주소에 액세스하십시오.
    https://example.com
    
    참고: 자체 서명 SSL 인증서를 설정한 경우 서버의 인증서가 인증되지 않은 인증서 발급 기관의 서명으로 인해 브라우저에 연결이 안전하지 않다는 경고가 표시될 수 있습니다.이것은 인증서에 서명할 예정이므로 경고를 눌러서 사이트에 계속 접근하십시오.
    명령줄에서 관리자 계정을 구성했기 때문에 Nextcloud 로그인 페이지로 이동합니다.관리 사용자를 위해 만든 자격 증명을 입력합니다.

    로그인 버튼을 클릭하여 Nextcloud 웹 인터페이스에 로그인합니다.
    첫 번째 입력 시 설명 텍스트와 Nextcloud 인스턴스에 액세스할 수 있는 다양한 Nextcloud 클라이언트에 대한 링크가 포함된 창이 표시됩니다.

    관심 있는 클라이언트를 다운로드하거나 오른쪽 상단의 X 를 클릭하여 창을 종료합니다.마스터 Nextcloud 인터페이스에 들어가서 파일을 업로드하고 관리할 수 있습니다.

    설치가 완료되고 보호되었습니다.새로운 시스템의 기능과 기능을 더욱 익히기 위해 이 인터페이스를 마음대로 훑어볼 수 있습니다.

    결론


    Nextcloud는 유행하는 제3자 클라우드 저장 서비스의 기능을 복제할 수 있다.컨텐츠는 사용자 간에 공유할 수도 있고 공통 URL을 통해 외부에서 공유할 수도 있습니다.Nextcloud의 장점은 정보를 제어하는 위치에 안전하게 저장하는 것입니다.
    추가 기능은 Snap 을 참조하여 서비스 확장을 위한 플러그인을 설치할 수 있습니다.