CentOS 7にNextCloud 9をインストールする方法

NextCloudは、その名前が示すように、別のオープンソースファイルホスティングソリューションOwnCloudの有望な代替手段です。

この記事では、Vultr CentOS 7サーバーインスタンスにNextCloudをインストールする方法を紹介します。

前提条件

  • 新しく作成されたVultr CentOS 7サーバーインスタンス。
  • ログイン用のsudoユーザー

ステップ1:システムを更新する

CentOS 7システムにsudoユーザーとしてログインし、システムを最新の安定したステータスに更新します。

sudo yum install epel-release -y
sudo yum update -y
sudo shutdown -r now

再起動後も、同じsudoユーザーを使用してログインします。

ステップ2:Apacheをインストールする

NextCloudのWebサーバーとしてApacheをインストールします。

sudo yum install httpd -y

事前設��されたApacheウェルカムページを無効にします。

sudo sed -i 's/^/#&/g' /etc/httpd/conf.d/welcome.conf

セキュリティ上の理由から、ApacheがWebルートディレクトリのコンテンツを表示しないようにします/var/www/html

sudo sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/httpd/conf/httpd.conf

NextCloudの必要に応じて、ApacheがWebDAVモジュールをロードしないようにします。

sudo sed -i 's/^/#&/g' /etc/httpd/conf.modules.d/00-dav.conf

Apacheサービスを開始し、ブート時に開始します。

sudo systemctl start httpd.service
sudo systemctl enable httpd.service

ステップ3:PHPと必要なPHP拡張機能をインストールする

NextCloudでは、PHP 5.6の使用を推奨しています。ここでは、IUS YUM��ポジトリを使用して、PHP 5.6および必要なPHP拡張機能をインストールできます。

IUS YUMリポジトリをインストールします。

cd
wget https://centos7.iuscommunity.org/ius-release.rpm
sudo rpm -Uvh ius-release.rpm

IUS YUMリポジトリを使用して、PHP 5.6と必要な拡張機能をインストールします。

sudo yum install php56u php56u-common php56u-xml php56u-gd php56u-mbstring php56u-process php56u-mysqlnd php56u-intl php56u-mcrypt php56u-imap php56u-cli -y

アップロードファイルのサイズを適切な値、たとえば50 MBに増やします。

sudo cp /etc/php.ini /etc/php.ini.bak
sudo sed -i "s/post_max_size = 8M/post_max_size = 50M/" /etc/php.ini
sudo sed -i "s/upload_max_filesize = 2M/upload_max_filesize = 50M/" /etc/php.ini

上記の変更を適用するには、Apacheを再起動します。

sudo systemctl restart httpd.service

ステップ4:MariaDBをインストールし、NextCloudのデータベースをセットアップする

MariaDBをインストールします。

sudo yum install mariadb mariadb-server -y

MariaDBサービスを開始し、起動時に開始します。

sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

安全なMariaDBインストール:

sudo /usr/bin/mysql_secure_installation

プロセス中に、以下のように1つずつ質問に回答してください。

Enter current password for root (enter for none): Enter
Set root password? [Y/n]: Y
New password: <your-password>
Re-enter new password: <your-password>
Remove anonymous users? [Y/n]: Y
Disallow root login remotely? [Y/n]: Y
Remove test database and access to it? [Y/n]: Y
Reload privilege tables now? [Y/n]: Y

次に、NextCloudのデータベースをセットアップします。

mysql -u root -p

ログイン用に以前に設定したMariaDBルートパスワードを入力します。

MySQLシェルでは、データベースとデータベースユーザーを作成し、このデータベースユーザーに権限を付与する必要があります。

次のコマンドを使用して作業を完了します。すべてのコマンドで、データベース名「nextcloud」、データベースユーザー名「nextclouduser」、およびデータベースユーザーパスワード「yourpassword」を独自のものに置き換えてください。

CREATE DATABASE nextcloud;
CREATE USER 'nextclouduser'@'localhost' IDENTIFIED BY 'yourpassword';
GRANT ALL PRIVILEGES ON nextcloud.* TO 'nextclouduser'@'localhost' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;

ステップ5:NextCloudをインストールする

公式WebサイトからNextCloudの最新の安定バージョンをダウンロードします。執筆時点では、最新の安定バージョン番号は9.0.53です。

cd
wget https://download.nextcloud.com/server/releases/nextcloud-9.0.53.zip

NextCloudアーカイブを解凍します。

sudo yum install unzip -y
unzip nextcloud-9.0.53.zip

すべてのNextCloudファイルをWebルートディレクトリに移動し、適切な権限を付与します。

sudo mv nextcloud/* /var/www/html && sudo chown apache:apache -R /var/www/html

次のサンプルパラメータを使用して、コマンドラインインターフェイスからNextCloudをインストールします。必ず自分のものに交換してください。

  • データベース名:nextcloud
  • データベースユーザー:nextclouduser
  • database-pass:yourpassword
  • 管理者ユーザー:管理者
  • admin-pass nextcloudadminpassword

実行:

cd /var/www/html/
sudo -u apache php occ maintenance:install --database "mysql" --database-name "nextcloud"  --database-user "nextclouduser" --database-pass "yourpassword" --admin-user "admin" --admin-pass "nextcloudadminpassword"

すべてがうまくいけば、出力は次のようになります。

Nextcloud is not installed - only a limited number of commands are available
ownCloud was successfully installed

サーバーのIP(203.0.113.1など)とドメイン名(www.example.comなど)をNextCloudの信頼済みドメインリストに追加します。

sudo vi /var/www/html/config/config.php

行を見つけます:

0 => 'localhost',

そのすぐ下に次の2行を挿入します。

1 => '203.0.113.1',
2 => 'www.example.com',

保存して終了:

:wq!

セキュリティ上の目的で、インストール後に強力な権限をNextcloudファイルとディレクトリに設定する必要があります。

sudo find /var/www/html -type f -print0 | sudo xargs -0 chmod 0640
sudo find /var/www/html -type d -print0 | sudo xargs -0 chmod 0750
sudo chown -R root:apache /var/www/html
sudo chown -R apache:apache /var/www/html/apps
sudo chown -R apache:apache /var/www/html/config
sudo chown -R apache:apache /var/www/html/data
sudo chown -R apache:apache /var/www/html/themes
sudo chown -R apache:apache /var/www/html/updater
sudo chmod 0644 /var/www/html/.htaccess
sudo chown root:apache /var/www/html/.htaccess
sudo chmod 0644 /var/www/html/data/.htaccess
sudo chown root:apache /var/www/html/data/.htaccess

さらに、という名前で作成されていないディレクトリがあることを忘れないでください/var/www/html/assets。今後このディレクトリを作成する場合は、次のコマンドも実行する必要があります。

sudo chown -R apache:apache /var/www/html/assets

これらの設定は、NextCloudによる不正アクセスを防止するのに役立ちます。

注:今後NextCloudを更新する必要がある場合は、次のコマンドを使用して一時的に権限を緩めることができます。

sudo chown apache:apache -R /var/www/html

アップデート後も、上記のように強力な権限を設定します。

変更を有効にするためにApacheを再起動します。

sudo systemctl restart httpd.service

訪問者がアクセスできるようにファイアウォールルールを変更します。

sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --zone=public --permanent --add-service=https
sudo firewall-cmd --reload

それでおしまい。これで、Webブラウザでをポイントしhttp://203.0.113.1、NextCloud管理者アカウントを使用してログインできます。

読んでくれてありがとう。



Leave a Comment

CentOS 7にApacheをインストールする方法

CentOS 7にApacheをインストールする方法

CentOS 7サーバーにApache 2.4をインストールする方法を説明します。安定したウェブサーバーを構築するための前提条件と手順を解説します。

FreeBSD 11.1にBlacklistdをインストールする方法

FreeBSD 11.1にBlacklistdをインストールする方法

FreeBSD 11.1におけるBlacklistdのインストール方法について詳しく解説します。この方法を通じて、強力なセキュリティ対策を実装できます。

Windows Serverのサーバーマネージャーを使用した複数サーバーの管理

Windows Serverのサーバーマネージャーを使用した複数サーバーの管理

サーバーマネージャーを使用して、Windows Serverの管理が向上します。セキュリティリスクを軽減し、効率的な管理を実現します。

CentOS 7にSeafileサーバーをインストールする方法

CentOS 7にSeafileサーバーをインストールする方法

CentOS 7にSeafileサーバーをインストールする方法。Seafile(コミュニティバージョン)は、ownCloudに似た無料のオープンソースファイル同期および共有ソリューションです。

DebianでSnortを設定する方法

DebianでSnortを設定する方法

Snortは無料のネットワーク侵入検知システムです。最新の方法で、SnortをDebianにインストールし、設定する手順を紹介します。ネットワークのセキュリティを強化しましょう。

CentOS 7にGraylogサーバーをインストールする方法

CentOS 7にGraylogサーバーをインストールする方法

CentOS 7にGraylogサーバーをインストールし、ログ管理を行う方法を学びます。

WindowsでhMailServerを使用してメールサーバーを構築する

WindowsでhMailServerを使用してメールサーバーを構築する

WindowsサーバーでWebサイトを実行している場合、電子メールも受信できるようにするためにhMailServerを使用する方法を解説します。

Ubuntu 19.04にFiveMサーバーをインストールする方法

Ubuntu 19.04にFiveMサーバーをインストールする方法

FiveMサーバーをUbuntu 19.04にインストールするための詳細なガイド。必要条件からインストール、起動、トラブルシューティングまで、すべてのステップを含みます。

WsgiDAVを使用してDebian 10にWebDAVをデプロイする

WsgiDAVを使用してDebian 10にWebDAVをデプロイする

Debian 10にWebDAVをデプロイする方法を学び、WsgiDAVとSSL証明書で安全な接続を実現しましょう。

ヘルスケア2021における人工知能の影響

ヘルスケア2021における人工知能の影響

ヘルスケアにおけるAIは、過去数十年から大きな飛躍を遂げました。したがって、ヘルスケアにおけるAIの未来は、日々成長を続けています。