GNU/Linux >> Linux の 問題 >  >> Debian

Nextcloud15をDebian9にインストールする方法

NextCloudは無料のオープンソースであり、別のオープンソースファイルホスティングソリューションOwnCloudの代替手段です。 NextCloudとOwnCloudの主な違いは、NextCloudが完全にオープンソースであることです。 NextCloudは、連絡先、写真、個人用ドキュメントを一元化された場所から保存できる、自己ホスト型のファイル共有アプリケーションサーバーです。 NextCloudを使用すると、ドキュメントを保存するためにDropboxなどのサードパーティのクラウドホスティングソフトウェアを使用する必要がなくなります。

NextCloudには多くの機能があり、そのうちのいくつかを以下に示します:

  1. OpenIDまたはLDAPを使用してユーザーとグループを管理できるようにします。
  2. Dropbox、FTP、NASで既存のデータにアクセス、同期、共有できるようにします。
  3. 接続されているブラウザ/デバイスを個人設定ページに一覧表示します。ユーザーがブラウザ/デバイスを切断できるようにします。
  4. 2要素認証プラグインシステムをサポートします。
  5. 他のユーザーとファイルを共有したり、パスワードで保護されたパブリックリンクを作成して送信したりできるようにします。
  6. サーバー上の誰かがファイルを直接あなたと共有した場合は、電話とデスクトップで通知します。
  7. 監視機能、全文検索、Kerberos認証、および音声/ビデオ会議をサポートします。
  8. デスクトップクライアントおよびモバイルクライアントからNextcloudサーバーとファイルを同期します。

このチュートリアルでは、Debian 9にNextCloudをインストールして構成し、無料のLet'sEncryptSSL証明書で保護する方法を説明します。

要件
  • システム上でDebian9を実行しているサーバー。
  • システムでの静的IPアドレスの設定。
  • システムでのルートパスワードの設定。
  • Nextcloudに使用するドメイン名またはサブドメインは、Nextcloudで使用し、無料のLet's Encryption SSL証明書を取得するために、すでにIPアドレスを指している必要があります。
はじめに

まず、rootユーザーとしてサーバーにログインします。システムを最新の安定バージョンで更新することから始めましょう。これを行うには、次のコマンドを実行します。

apt-get update -y
apt-get upgrade -y

システムを更新した後、システムを再起動して次の変更を適用します。

reboot

次に、rootユーザーでログインし、次の手順に進みます。

1LAMPサーバーのインストール

NextCloudは、Apache、MySQL、およびPHPを使用して実行されます。したがって、これらすべてのコンポーネントをシステムにインストールする必要があります。

まず、次のコマンドを使用してApacheおよびMariaDBサーバーをインストールします。

apt-get install apache2 mariadb-server apt-transport-https -y

インストールが完了したら、ApacheおよびMariaDBサービスを開始し、次のコマンドを実行して起動時に開始できるようにします。

systemctl start apache2
systemctl enable apache2
systemctl start mariadb
systemctl enable mariadb

次に、PHPやその他の必要なモジュールをシステムにインストールする必要があります。 Ondrejリポジトリから最新のPHP7.2バージョンをインストールします。

OndrejDebianリポジトリを追加します:

wget -q https://packages.sury.org/php/apt.gpg -O- | apt-key add -
echo "deb https://packages.sury.org/php/ stretch main" | tee /etc/apt/sources.list.d/ondrej.list
apt-get update

次のコマンドを実行して、それらすべてをインストールできます。

apt-get install libapache2-mod-php php7.2 php7.2-xml php7.2-curl php7.2-gd php7.2 php7.2-cgi php7.2-cli php7.2-zip php7.2-mysql php7.2-mbstring wget unzip -y

すべてのパッケージをインストールしたら、php.iniファイルを開き、その中のいくつかの変更を加えます。

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

次の変更を行います:

memory_limit = 512M
upload_max_filesize = 200M
max_execution_time = 360
post_max_size = 200M
date.timezone = Europe/Berlin

2MariaDBを構成する

デフォルトでは、MariaDBのインストールは安全ではないため、保護する必要があります。これを行うには、次のコマンドを実行します。

mysql_secure_installation

次のようにすべての質問に答えてください:

# mysql_secure_installation

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we'll need the current
password for the root user. If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none):
OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.

Set root password? [Y/n] y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
... Success!


By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] y
... Success!

Normally, root should only be allowed to connect from 'localhost'. This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] y
... Success!

By default, MariaDB comes with a database named 'test' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] y
- Dropping test database...
... Success!
- Removing privileges on test database...
... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] y
... Success!

Cleaning up...

All done! If you've completed all of the above steps, your MariaDB
installation should now be secure.

Thanks for using MariaDB!

MariaDBが保護されたら、次のコマンドを使用してMariaDBコンソールにログインします。

mysql -u root -p

プロンプトが表示されたらrootパスワードを入力し、Nextcloudのデータベースを作成します:

CREATE DATABASE nextclouddb;

次に、次のコマンドを使用してNextcloudのユーザー名とパスワードを作成します。

CREATE USER 'nextcloud'@'localhost' IDENTIFIED BY 'mypassword';

'mypassword'を独自の安全なパスワードに置き換えます。次に、次のコマンドを使用してNextcloudデータベースに特権を付与します:

GRANT ALL PRIVILEGES ON nextclouddb.* TO 'nextcloud'@'localhost';

次に、FLUSH PRIVILEGESコマンドを実行して、特権テーブルがMariaDBによって再ロードされるようにします。

FLUSH PRIVILEGES;

最後に、次のコマンドを使用してMariaDBシェルを終了します。

quit

データベースが適切に設定されたら、次のステップに進むことができます。

3NextCloudをインストール

簡単にインストールできるように、NextcloudWebインストーラーを使用します。まず、Nextcloudインストール用のディレクトリを作成する必要があります:

mkdir /var/www/nextcloud
chown www-data:www-data /var/www/nextcloud
chmod 750 /var/www/nextcloud

そして、Nextcloudがアップロードされたファイルを保存するデータディレクトリ。

mkdir -p /var/nextcloud/data
chown www-data:www-data /var/nextcloud/data
chmod 750 /var/nextcloud/data

次に、NextCloud用のApache仮想ホストファイルを作成する必要があります。次のようにnextcloud.confファイルを作成することでこれを行うことができます:

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

次の行を追加します:

<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "/var/www/nextcloud"
ServerName example.com
<Directory "/var/www/nextcloud/">
Options MultiViews FollowSymlinks
AllowOverride All Order allow,deny Allow from all </Directory> TransferLog /var/log/apache2/nextcloud_access.log ErrorLog /var/log/apache2/nextcloud_error.log </VirtualHost>

ドメイン名example.comを目的のドメイン名に置き換えます。ファイルを保存して閉じてから、次のコマンドでNextCloud仮想ホストファイルを有効にし、デフォルトの仮想ホストファイルを無効にします。

a2dissite 000-default
a2ensite nextcloud

Let's EncryptでSSLを有効にするために、Let'sEncryptcertbotクライアントをインストールします。

apt-get install certbot python3-certbot-apache -y

そして、次のコマンドでApacheSSLモジュールを有効にします。

a2enmod ssl

最後に、apacheサービスを再起動して、これらの変更を適用します。

systemctl restart apache2

これで、Let's Encryptから無料のSSL証明書を要求し、certbotプログラムにSSL用のapachevhostを構成させることができます。 Let's Encryptを使用するには、インターネットからインターネットドメイン名にアクセスでき、DNSAレコードが既に存在するサーバーを指している必要があることに注意してください。 certbotコマンドを実行して、新しいSSL証明書を要求します。

certbot -d example.com --apache --agree-tos -m [email protected]

example.comをNextcloudサーバー(vhost)のドメイン名またはサブドメイン名に置き換えます。

メールアドレスをEFFと共有する場合は、ここを選択してください。個人的にはメールを共有したくないので、ここでは「N」を選択しました。

NextcloudサーバーにHTTPSのみでアクセスできる場合(セキュリティ上の理由から推奨されます)、ここで「2」を選択します。 HTTPとHTTPSでNextcloudにアクセスできるようにする場合は、「1」を選択します。

無料のLet'sEncryptSSL証明書が正常に発行されました。

Nextcloud WebインストーラーをWebサイトのルートディレクトリにダウンロードし、ダウンロードしたファイルに適切な権限を設定します。

cd  /var/www/nextcloud
wget https://download.nextcloud.com/server/installer/setup-nextcloud.php
chown www-data:www-data setup-nextcloud.php

4NextCloudWebインターフェースにアクセス

すべてが適切に構成されたら、ポート80がUFWファイアウォールを通過できるようにする必要があります。

これを行うには、最初に次のコマンドを使用してufwをインストールします。

apt-get install ufw -y

次に、次のコマンドを使用して、UFWおよびポート22SSHを介してポート80と443を許可します。

ufw allow 80
ufw allow 443
ufw allow 22

必要に応じて、ファイアウォールでさらにポートを開きます。次に、ファイアウォールを有効にします。

ufw enable

コマンドでファイアウォールを有効にするかどうかを尋ねられたら、「y」を選択します。

最後に、Webブラウザーを開き、URLに移動します:

https://example.com/setup-nextcloud.php

example.comを独自のドメイン名に置き換えます。次の画面が表示されます。

nextcloudを現在のディレクトリにインストールして「次へ」ボタンを押すため、入力フィールドに「nextcloud」という単語をドット(。)に置き換えます。

>

最初のインストール手順が正常に完了しました。 [次へ]をクリックして続行します。

Nextcloud管理者ユーザーに必要なユーザー名とパスワードを入力し、データパスを「/ var / nextcloud/data」に設定します。

データベース名、データベースユーザー名、パスワードなどの必要な情報をすべて入力し、セットアップの完了をクリックします。 ボタン。次の画面にNextCloudダッシュボードが表示されます:

5NextCloudクライアントを構成する

ここでは、UbuntuデスクトップにNextCloudクライアントをインストールし、NextCloudサーバーに接続します。

NextCloudクライアントをインストールするには、NextCloudリポジトリをシステムに追加する必要があります。これを行うには、次のコマンドを実行します。

 add-apt-repository ppa:nextcloud-devs/client
apt-get update -y
apt-get install nextcloud-client -y

NextCloudクライアントがインストールされたら、Ubuntu Dashから起動すると、次の画面が表示されます。

ここで、サーバーアドレスを入力し、次へをクリックします ボタンをクリックすると、次の画面が表示されます。

NextCloudeサーバーのクレデンシャルを提供し、次へをクリックします ボタンをクリックすると、次の画面が表示されます。

次に、接続をクリックします ボタンをクリックすると、次の画面が表示されます。

ここで、ローカルフォルダをクリックします 、次の画面が表示されます:

おめでとう! NextCloudサーバーとクライアントがインストールおよび構成されています。これで、ローカルのNextCloudクライアントからNextCloudサーバーにデータを簡単に同期できます。

リンク
  • Nextcloud
  • Ubuntu

Debian
  1. Debian9にNextcloudをインストールする方法

  2. Debian10にGradleをインストールする方法

  3. Debian10にAnyDeskをインストールする方法

  1. Debian9にRをインストールする方法

  2. Debian9にWebminをインストールする方法

  3. NextCloud13をDebian9にインストールする方法

  1. Debian10にRをインストールする方法

  2. Debian11にNextcloudをインストールする方法

  3. Debian11にMonoをインストールする方法