このチュートリアルでは、LAMPスタックを使用してDebian9にNextCloudをインストールする方法を紹介します。 NextCloudは、無料のオープンソースのセルフホストクラウドストレージソリューションであり、Dropboxなどのサードパーティのクラウドストレージサービスに代わるものを提供します。
前提条件
このチュートリアルに従うには、次のものが必要です。
- Debian 9 VPS(仮想プライベートサーバー)またはローカルDebianコンピューター
- Debian9にインストールされたLAMPスタック。
- ドメイン名。
ステップ1:NextCloudをダウンロードする
次のコマンドを使用して、NextCloudサーバーのzipアーカイブをDebian9システムにダウンロードします。この記事の執筆時点では、最新の安定バージョンは12.0.2です。
wget https://download.nextcloud.com/server/releases/nextcloud-12.0.2.zip
このチュートリアルに従うと、新しいバージョンが存在する可能性があります。 https://nextcloud.com/install
にアクセスします ダウンロードボタンをクリックして、最新バージョンを確認してください。 NextCloudのダウンロードリンクを取得するには、Download NextCloud
を右クリックするだけです。 ボタンをクリックして、Copy Link Location
を選択します 下のスクリーンショットに示すように。
/var/www/
に抽出します unzip
のあるディレクトリ 。
sudo apt install unzip sudo unzip nextcloud-12.0.2.zip -d /var/www/
次に、www-data
を作成します (Apacheユーザー)/var/www/nextcloud/
の所有者として 。
sudo chown www-data:www-data /var/www/nextcloud -R
ステップ2:MariaDBでデータベースとユーザーを作成する
次のコマンドを使用してMariaDBデータベースサーバーにログインします。
sudo mariadb -u root
次に、以下のMariaDBコマンドを使用してNextCloudのデータベースを作成します。このチュートリアルでは、データベースにnextcloud
という名前を付けます 。好きな名前を使うことができます。最後にセミコロンを省略しないでください。
create database nextcloud;
次に、別のユーザーを作成します。この場合も、このユーザーの好みの名前を使用できます。 your-password
を置き換えます ご希望のパスワードを使用してください。
grant all privileges on nextcloud.* to nextclouduser@localhost identified by 'your-password';
上記のコマンドは、ユーザーを作成し、すべての特権を付与します。次に、MariaDB特権をフラッシュして終了します。
flush privileges; exit;
ステップ3:MariaDBでバイナリロギングを有効にする
MariaDB構成ファイルを編集します。
sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf
[mysqld]
に次の3行を追加します セクション。
log-bin = /var/log/mysql/mariadb-bin log-bin-index = /var/log/mysql/mariadb-bin.index binlog_format = mixed
バイナリログの形式はmixed
である必要があります 。ファイルを保存して閉じます。次に、MariaDBサービスを再起動します。
sudo systemctl restart mariadb
これで、MariaDBでバイナリログが有効になります。
ステップ4:Nextcloud用のApache仮想ホストファイルを作成する
nextcloud.conf
を作成します /etc/apache2/sites-available
のファイル ディレクトリ。
sudo nano /etc/apache2/sites-available/nextcloud.conf
次の行をコピーしてファイルに貼り付けます。赤いテキストを実際のドメイン名に置き換えます。また、ドメイン名がDNS内のDebian9サーバーのIPアドレスを指すようにする必要があります。
<VirtualHost *:80> DocumentRoot "/var/www/nextcloud" ServerName nextcloud.your-domain.com ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined <Directory /var/www/nextcloud/> Options +FollowSymlinks AllowOverride All <IfModule mod_dav.c> Dav off </IfModule> SetEnv HOME /var/www/nextcloud SetEnv HTTP_HOME /var/www/nextcloud Satisfy Any </Directory> </VirtualHost>
ファイルを保存して閉じます。次に、以下のコマンドを使用してこの仮想ホストを有効にします。
sudo a2ensite nextcloud
また、いくつかのApacheモジュールを有効にする必要があります。
sudo a2enmod rewrite headers env dir mime setenvif ssl
必要なPHPモジュールをインストールします。
sudo apt install php7.0-common php7.0-mysql php7.0-gd php7.0-json php7.0-curl php7.0-zip php7.0-xml php7.0-mbstring
上記のApacheおよびPHPモジュールをロードできるように、Apacheを再起動します。
sudo systemctl restart apache2
ステップ5:HTTPSを有効にする
これで、Nextcloudインストールのドメイン名を入力して、ブラウザでNextcloudWebインストールウィザードにアクセスできます。
nextcloud.your-domain.com
機密情報を入力する前に、Nextcloudで安全なHTTPS接続を有効にする必要があります。 Let’sEncryptから無料のTLS証明書を取得できます。
Debian 9リポジトリからcertbot(Let’s Encrypt)クライアントをインストールします。
sudo apt install certbot python-certbot-apache
次に、次のコマンドを発行して、無料のTLS/SSL証明書を取得します。赤い色のテキストを実際のデータに置き換えます。
sudo certbot --apache --agree-tos --redirect --hsts --email your-email-address -d nextcloud.your-domain.com
説明:
- –apache :apacheプラグインを使用してください。
- –同意する :利用規約に同意します。
- –リダイレクト :すべてのHTTPトラフィックをHTTPSに自動的にリダイレクトします。
- –hsts :Strict-Transport-Securityヘッダーを追加します。
数秒以内に、以下のようなメッセージが表示されます。これは、TLS証明書が正常に取得およびインストールされたことを意味します。 TLS構成はSSLテストでAを獲得します。
Webブラウザへのインストールを完了します
次に、WebブラウザのアドレスバーにNextCloudドメイン名を入力します。 httpsに自動的にリダイレクトされることがわかります。
nextcloud.your-domain.com
管理者アカウントを作成する必要があります。データフォルダは、ユーザーのファイルが保存される場所です。セキュリティ上の理由から、 / var / www / nextcloud-dataなどのNextcloudWebルートの外部にデータディレクトリを配置することをお勧めします 。次のコマンドで作成できます:
sudo mkdir /var/www/nextcloud-data/
次に、Apacheユーザー(www-data
)データディレクトリへの書き込み権限があります。
sudo chown www-data:www-data /var/www/nextcloud-data -R
次に、NextcloudをMariaDBデータベースに接続するために、前に作成したデータベースのユーザー名、データベース名、およびパスワードを入力します。
完了すると、NextcloudのWebインターフェースが表示されます。おめでとうございます!これで、プライベートクラウドストレージとしての使用を開始できます。
このチュートリアルが、LAMPスタックを備えたDebian9にNextCloudをインストールするのに役立つことを願っています。いつものように、この投稿が役に立った場合は、無料のニュースレターを購読して新しいチュートリアルを入手してください。