CentOS7でFileRunとファイルを共有する方法
FileRunからの記事
序章
FileRun は、ファイルへのアクセス、整理、表示、編集を支援するPHPファイルマネージャーおよびファイル共有アプリケーションです。 オフィスのドキュメント、写真、音楽、およびWebサーバーに保存する可能性のあるその他の種類のファイルで使用できます。 このチュートリアルでは、FileRunをCentOS7サーバーにインストールします。
前提条件
このチュートリアルに従うには、次のものが必要です。
- sudo非rootユーザーを持つ1台のCentOS7サーバー。これは、この初期サーバーセットアップチュートリアルに従ってセットアップできます。
- サーバーにインストールされているApacheとMariaDB。これは、CentOS7チュートリアルのこのLAMPのステップ1と2に従ってセットアップできます。
FileRunはリソースに優しいアプリケーションであるため、ほとんどの場合、512MBのメモリで十分です。 ディスク容量に関しては、FileRunとそれに必要なすべてのサードパーティソフトウェアは2GBを超えて使用することはありません。
ステップ1—FileRunのデータベースを設定する
FileRunは、MariaDBを使用して、アプリケーション設定、ユーザー設定、およびファイルに関する情報を保持するデータベースを管理します。 まず、このデータベースとそれにアクセスするユーザーアカウントを作成します。
開始するには、サーバーのrootアカウントでMariaDBにログインします。
mysql -u root -p
サーバーのインストール時にMariaDBrootユーザーに設定したパスワードを入力します。
FileRunには、データを格納するための別個のデータベースが必要です。 このデータベースは好きなように呼び出すことができます。 ここでは、filerunという名前を使用しています。
CREATE DATABASE filerun;
次に、新しく作成されたデータベースと対話する別のMariaDBユーザーアカウントを作成します。 管理とセキュリティの観点から、1つの機能を持つデータベースとアカウントを作成することをお勧めします。
データベースに名前を付けるのと同じように、任意のユーザー名を選択できます。 ここでは、ユーザー名sammyを使用しています。 強力なデータベースパスワードを選択してください。
GRANT ALL ON filerun.* to 'sammy'@'localhost' IDENTIFIED BY 'your_database_password';
ユーザーにデータベースへのアクセスを割り当てたら、付与テーブルを更新して、MariaDBの実行中のインスタンスが最近の特権の割り当てを認識していることを確認します。
FLUSH PRIVILEGES;
これで、MariaDBを終了できます。
exit
データベース名filerun、ユーザー名 sammy 、および選択したパスワードをメモしておきます。この情報はまもなく必要になります。
ステップ2—PHPのセットアップ
PHP-FPM(FastCGI Process Manager)は、忙しいサイトに役立ついくつかの追加機能を備えた代替のPHPFastCGI実装です。 ここでは、人気のあるmod_php
よりも優れた選択肢です。これは、他の利点の中でも、PHPスクリプトによって作成されたファイルがWebサーバーによって所有されないためです。 これは、FTPまたは他の方法で同時にそれらにアクセスできることを意味します。
FileRunには、PHPバージョン5.5以降が必要です。 CentOS 7はデフォルトで古いPHPバージョン5.4のみを提供するため、最初にyum
リポジトリを更新する必要があります。
sudo rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
次に、PHP5.6をインストールします。
sudo yum install php56w-fpm
次に、PHP-FPMのシステム起動リンクを作成して起動します。
sudo systemctl enable php-fpm.service sudo systemctl start php-fpm.service
PHP-FPMは、ポート9000
でFastCGIサーバーを実行するデーモンプロセス(initスクリプト/etc/init.d/php-fpm
を使用)です。 ApacheをPHP-FPMで動作させるために、PHP-FPMを使用する必要がある各vhost
でProxyPassMatch
ディレクティブを使用できます。 これを行うには、Apache構成ファイルを編集します。
sudo vi /etc/httpd/conf/httpd.conf
このブロックをIncludeOptional conf.d/*.conf
行の前の最後に追加します。
httpd.confに追加するセクション
<IfModule proxy_module> ProxyPassMatch ^/(.*\.php(/.*)?)$ fcgi://127.0.0.1:9000/var/www/html/$1 </IfModule>
次のようになります。
/etc/httpd/conf/httpd.conf
. . . #EnableMMAP off EnableSendFile on <IfModule proxy_module> ProxyPassMatch ^/(.*\.php(/.*)?)$ fcgi://127.0.0.1:9000/var/www/html/$1 </IfModule> # Supplemental configuration # # Load config files in the "/etc/httpd/conf.d" directory if any. IncludeOptional conf.f/*.conf
次に、同じファイルの上位で、DirectoryIndex
ディレクティブを見つけて、それにindex.php
を追加します。
/etc/httpd/conf/httpd.conf
. . . # # DirectoryIndex: sets the file that Apache will serve if a directory # is requested. # <IfModule dir_module> DirectoryIndex index.html index.php </IfModule> . . .
Apacheを再起動して、PHPのインストールを完了します。
sudo systemctl restart httpd.service
FileRunには、次の追加のPHPモジュールも必要です。
php56w-mbstring
。これにより、FileRunはマルチバイト文字を処理できます。php56w-pdo
およびphp56w-mysql
。これにより、FileRunはMySQL/MariaDBデータベースを利用できるようになります。php56w-mcrypt
、FileRunに暗号化機能を提供します。php56w-gd
。これはオプションですが、FileRunでユーザーアバター、QRコード、およびその他の小さな類似画像を生成できます。php56w-opcache
、これもオプションですが、PHPのパフォーマンスが大幅に向上します。
次のコマンドを使用して、上記のすべてをインストールできます。
sudo yum install php56w-mbstring php56w-mcrypt php56w-opcache php56w-pdo php56w-mysql php56w-gd
yum
リポジトリに含まれていない最後に必要なモジュールは、ionCube
です。 ionCubeは、保護されたPHPコードを実行して、Webサイトのセキュリティを強化し、マルウェアをブロックし、パフォーマンスを向上させるために広く使用されているPHP拡張機能です。
最新のionCubeバージョンを/usr/lib64/php/modules
ディレクトリにダウンロードします。
sudo wget -P /usr/lib64/php/modules http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz
次に、そのディレクトリ内のファイルを解凍します。
sudo tar xvfz /usr/lib64/php/modules/ioncube_loaders_lin_x86-64.tar.gz -C /usr/lib64/php/modules
次に、PHPによって構成に自動的に追加されるファイルを作成しましょう。 これには、FileRun固有の設定が含まれます。
sudo vi /etc/php.d/filerun.ini
作成したファイル内に以下を貼り付けます。
date.timezone = "UTC" zend_extension = "/usr/lib64/php/modules/ioncube/ioncube_loader_lin_5.6.so"
これにより、タイムゾーンが設定され、PHPがionCube拡張機能をロードします。 ここでは、UTCタイムゾーンを選択しましたが、独自のを選択できます。
注:ここでFileRunが推奨するすべてのPHP設定を確認できます。 ディレクティブは/etc/php.d/filerun.ini
ファイルに追加できます。
最後に、変更を有効にするためにPHP-FPMサービスを再起動する必要があります。
sudo systemctl restart php-fpm.service
これでサーバーはすべての要件を満たし、FileRunのインストールを続行できます。
ステップ3—FileRunのインストール
Webサーバーのルートフォルダー(/var/www/html/
)にFileRunをダウンロードします。
cd /var/www/html/ sudo wget -O FileRun.zip http://www.filerun.com/download-latest
FileRunインストーラーを抽出するには、unzip
ユーティリティが必要です。
sudo yum install unzip
次に、FIleRunアーカイブを解凍します。
sudo unzip FileRun.zip
PHPがFileRunをインストールできるように、Apacheをディレクトリの所有者にします。
sudo chown -R apache:apache /var/www/html/
ブラウザを開き、http://your_server_ip
をポイントします。 ここからは、Webインストーラーに従うだけで、数回クリックするだけでFileRunを実行できます。
最初のWelcometo FileRun!画面で、右下の青いNextボタンをクリックして続行します。 次のページのサーバー要件チェックを確認して、赤いエラーメッセージが表示されていないことを確認してから、次へをもう一度クリックします。
次のページでは、データベース接続を設定します。 次のようにフィールドに入力します。
- MySQLホスト名はlocalhostである必要があります。
- データベース名は、このチュートリアルのステップ2で使用した名前である必要があります。 この例では、filerunを使用しました。
- MySQLユーザーは、このチュートリアルのステップ2で使用した名前である必要があります。 この例では、sammyを使用しました。
- Password は、手順2で選択したパスワードである必要があります。
これらを入力したら、次へをクリックします。 All done!という画面が表示されます。これは、FileRunが正常にインストールされたことを意味します。
注:この画面にユーザー名と(ランダムに生成された)パスワードが表示されます。 必ずコピーしてください! 後で必要になります。
次へをクリックしてFileRunを開きます。 ログインページが表示されます。 フォームは事前に入力しておく必要があるため、サインインをクリックするだけです。
すべてログインしています。 次に、インストールが安全であることを確認しましょう。
ステップ4—FileRunインストールの保護
FileRunにサインインするとすぐに、パスワードを変更するように求められます。 自動生成されたパスワードは非常に安全ですが、独自のパスワードを設定することをお勧めします。
警告: FileRunスーパーユーザーは、ブルートフォースログイン攻撃から保護されていない唯一のアカウントであるため、コンピューターが推測するのが非常に難しいパスワードを設定することが非常に重要です。 大文字、数字、記号を含む長いパスワードを設定します。
FileRunアプリケーションファイルのアクセス許可は、PHP(または他のWebサーバーアプリケーション)がそれらに変更を加えることを許可するべきではないので、今すぐ更新してください。
sudo chown -R root:root /var/www/html
/var/www/html/system/data
FileRunフォルダーは、PHPが書き込みアクセスを必要とする唯一のフォルダーなので、それも更新します。
sudo chown -R apache:apache /var/www/html/system/data
デフォルトでは、スーパーユーザーのホームフォルダーは/var/www/html/system/data/
内にあります。 FileRunコントロールパネルからユーザーアカウントを編集し、Webサーバーのパブリックエリアの外にあるフォルダーを指すホームフォルダーパスを設定することが重要です(つまり、 /var/www/html
の外側)。
簡単な解決策は、/files
というディレクトリを作成し、そこにすべてのFileRunファイルを保存することです。
sudo mkdir /files sudo chown apache:apache /files
次に、MariaDBサーバーに再度接続します。
mysql -u root -p
構成されたMariaDBユーザーアカウントを更新し、ALTER
およびDROP
特権を削除します。
REVOKE ALTER, DROP ON filerun.* FROM 'sammy'@'localhost'; FLUSH PRIVILEGES;
次に、CTRL+D
と入力してMariaDBを終了します。
注:将来FileRunソフトウェアの更新をインストールする前に、これらの権限を追加し直す必要があります。 これを行うには、データベースサーバーに再度接続し、GRANT ALTER, DROP ON filerun.* TO 'sammy'@'localhost';
を実行してからFLUSH PRIVILEGES;
を実行します。
これで、FileRunのインストールは安全になり、使用できるようになりました。 必要に応じて、さまざまなファイルタイプのサムネイルをサポートするオプションのパッケージをインストールできるようになりました。
ステップ5—サムネイルサポートの追加(オプション)
画像ファイル、写真ファイル、PDFドキュメントのサムネイルを生成するには、ImageMagickをインストールする必要があります。
sudo yum install ImageMagick*
次に、コントロールパネルのシステム構成>ファイル>イメージプレビューセクションで、パス/usr/bin/convert
を使用して、FileRun内で有効にします。
ビデオファイルのサムネイルを生成するには、ATrpmsパッケージリポジトリで利用可能なffmpegをインストールする必要があります。
sudo rpm --import http://packages.atrpms.net/RPM-GPG-KEY.atrpms sudo rpm -ivh http://dl.atrpms.net/el6-x86_64/atrpms/stable/atrpms-repo-6-7.el6.x86_64.rpm
最後に、それをインストールします。
sudo yum install ffmpeg
同様に、システム構成>ファイル>イメージプレビューセクションで、パス/usr/bin/ffmpeg
を使用して、コントロールパネルからFileRun内で有効にします。
今すぐブラウザでFileRunにアクセスすると、ファイルのサムネイルが表示されます。
結論
これで、FileRunを独自の安全なプライベートサーバーに正常に展開できました。 ファイル、写真、音楽、または作業ドキュメントをアップロードして、共有を開始します。
ここからできることは他にもたくさんあります。 たとえば、このホスト名チュートリアルに従って、ドメイン名をサーバーにポイントできます。
SSLを設定することもできます。 SSL証明書は、ブラウザとFileRunインストール間の通信を暗号化します。 データのプライバシーとセキュリティが大幅に向上するだけでなく、FileRun無料のAndroidアプリを使用してファイルにアクセスできるようになります。
無料のSSL証明書をインストールするには、このLet'sEncryptチュートリアルに従ってください。 ドメイン名がなく、この構成をテストまたは個人的な使用のみに使用している場合は、代わりに自己署名証明書を使用できます。 Apacheの自己署名SSLガイドに従って設定してください。
FileRunの機能と設定の詳細については、公式ドキュメントにアクセスしてください。