前書き
クラウドの採用が増加すると、ますます多くのデータがリモートに保存されます。 音楽から写真、個人文書まで、多くの人が管理していないサーバーにファイルをアップロードしています。 制御するサーバーにファイルを保存したい場合は、https://pydio.com/ [Pydio](以前のAjaXplorer)を使用して、独自のDropboxのようなファイル共有サーバーをホストできます。
Pydioは、他のファイル同期サービスと同じ機能の多くを提供します。Webインターフェース、Mac、Windows、およびLinuxのネイティブクライアント、iOSおよびAndroidのモバイルクライアント、および他のPydioユーザーまたは一般ユーザーとファイルを共有する機能です。
目標
この記事では、強力なハードウェアがなくても正常に動作する簡単なPydioインストールを立ち上げます。 多くのエンタープライズレベルのオープンソースプロジェクトと同様に、Pydioにはコミュニティエディションとエンタープライズエディションがあります。 コミュニティエディションをインストールします。
ソフトウェアスタックに関しては、メールサポートにPostfixを使用します。デフォルトでは、PHPはメールを送信できません。 より軽いソリューションが必要な場合は、 `+ ssmtp +`をインストールできますが、このセットアップではPostfixを使用します。PHPをサポートするために最小限の調整が必要なためです。 メールサポートを有効にする必要はありませんが、物事がはるかに簡単になることに注意してください。これがないと、Pydioはパスワードリセットメールやウェルカムメールを送信できません。
また、WebサーバーとしてApache(単純化のため)およびSQLiteデータベース(MySQLではなく、可動部分が少ない)に固執します。 この設定は、Pydioを使用するグループが大きくない場合、または大量のデータを同時にサーバーにプッシュしない場合に最適です。 ただし、もう少し強力なものが必要な場合は、結論にパフォーマンスを改善する方法に関するガイドラインがあります。
前提条件
このチュートリアルに従うには、次のものが必要です。
-
sudo non-root userを持つUbuntu 14.04ドロップレット。
-
Apacheがインストールされています。これはhttps://www.digitalocean.com/community/tutorials/how-to-install-linux-apache-mysql-php-lamp-stack-on-ubuntu-14-04#stepに従って実行できます-1-install-apache [このLAMPチュートリアルのステップ2]。
-
FQDN(完全修飾ドメイン名)。これはhttps://www.digitalocean.com/community/tutorials/how-to-set-up-a-host-name-with-digitalocean [このホスト名前チュートリアル]。
-
https://www.digitalocean.com/community/tutorials/how-to-install-and-setup-postfix-on-ubuntu-14-から「Configure Postfix」の手順に従ってセットアップできるPostfixがインストールされている04 [このPostfixインストールチュートリアル]。 インストール中にプロンプトが表示されたら、インターネットサイト*構成を選択し、ドメイン名を入力します(例:
++
)*システムメール名。
また、Let’s Encryptを使用してドメインのSSL証明書を設定します。 https://www.digitalocean.com/community/tutorials/how-to-secure-apache-with-let-s-encrypt-on-ubuntu-14-04 [このApacheの暗号化チュートリアル]をフォローします。 、ただし、セットアップを簡素化するために、ステップ3でPydioがインストールされるまでセットアップを行いません。
SSL / TLS証明書の機能の詳細については、https://www.digitalocean.com/community/tutorials/openssl-essentials-working-with-ssl-certificates-private-keys-andをご覧ください。 -csrs [このOpenSSLの基本記事]。
ステップ1-Pydioのインストール
このステップでは、Pydioの依存関係とPydio自体をインストールします。
まず、パッケージインデックスを更新します。
sudo apt-get update
次に、PHPをインストールします。
sudo apt-get install php5 libapache2-mod-php5
次に、Pydio tarファイルをダウンロードして、Webサーバーで解凍する必要があります。 Pydioのダウンロードは、http://sourceforge.net/projects/ajaxplorer/files/pydio/stable-channel/ [SourceForge]でホストされています。 クリックして地理的に最も近いミラーを見つけるか、下のリンクを使用して英国のミラーを使用することができます。
公開時点で、Pydioはバージョン6.2.2です。 Pydioが更新されているかどうかを確認し、更新されている場合はSourceForgeから最新バージョンを取得できます。
Pydio tarファイルをホームディレクトリにダウンロードします。
wget -P ~/
tarballを解凍します。
tar -xvzf ~/pydio-core-.tar.gz
次に、Ubuntuサーバー上のWebサイトのデフォルトの場所である `+ / var / www +`に移動します。
sudo mv ~/pydio-core- /var/www/pydio
ディレクトリを配置したら、Apacheがデータを保存して構成ファイルを更新できるように、そのアクセス許可を変更する必要があります。
sudo chown -R www-data:www-data /var/www/pydio
ステップ2-PHPモジュールのセットアップ
Pydioを配置したら、Pydioを正しく動作させるためにいくつかの依存関係をインストールして設定する必要があります。 このステップでは多くの変更を行い、各ステップの後にApacheを再起動するように求められます。 必要に応じてこれを行うことができますが、ここでは、すべてのセットアップの最後まで待って、Apacheを1回再起動します。
まず、必要な追加のPHPモジュールをインストールして有効にします。
sudo apt-get install php5-mcrypt php5-gd php5-sqlite
これらのPHPモジュールの1つである `+ mcrypt `は、デフォルトでは有効になっていません。 ` phpenmod +`を使用して有効にできます。
sudo php5enmod mcrypt
一部のPHPモジュールをインストールして有効にすることに加えて、 + a2enmod +
Apacheモジュールを有効にする必要があります。有効にしないと、同期クライアントが機能しません。
sudo a2enmod rewrite
PHPが完全にインストールされたので、 `+ php.ini `ファイルでいくつかの編集を行う必要があります。 更新する必要がある3行があります。 ` nano `などの好みのエディターを使用して、 ` php.ini`ファイルを編集します。
sudo nano /etc/php5/apache2/php.ini
「+ output_buffering = 4096+」の行を見つけて、「+ 4096+」を「+ Off +」に変更します。
更新された/etc/php5/apache2/php.ini
; Default Value: Off
; Development Value: 4096
; Production Value: 4096
; http://php.net/output-buffering
output_buffering =
次に、「+ upload_max_filesize = 2M 」を見つけて、「 2M 」を「 1G +」などの任意の大きな数値に変更します。 (MはMBの略、GはGBの略です。)
更新された/etc/php5/apache2/php.ini
; Maximum allowed size for uploaded files.
; http://php.net/upload-max-filesize
upload_max_filesize =
最後に、「+ post_max_size = 8M 」を見つけて、「 upload_max_filesize +」以上の数値に変更します。 複数の大規模なアップロードを同時に行ったり、複数のユーザーが一度にシステムを使用したりする場合は、より大きな数でアップロードできます。
更新された/etc/php5/apache2/php.ini
; Maximum size of POST data that PHP will accept.
; Its value may be 0 to disable the limit. It is ignored if POST data reading
; is disabled through enable_post_data_reading.
; http://php.net/post-max-size
post_max_size =
`+ / etc / php5 / apache2 / php.ini`を保存して閉じることができます。 これはApacheの「+ php.ini」ファイルです。次に、コマンドラインにアクセスして、「+ / etc / php5 / cli / php.ini 」にある「 php.ini」ファイルにアクセスします。
sudo nano /etc/php5/cli/php.ini
このファイルで上記と同じ3つの変更を行い、保存して閉じます。
ステップ3-Apacheの構成
このステップでは、Apache構成をカスタマイズします。
まず、お気に入りのテキストエディタで「+ pydio.conf +」という新しいファイルを作成して開きます。
sudo nano /etc/apache2/sites-available/pydio.conf
次のApache設定は、ドキュメントルートファイルやログファイルなど、この特定のPydioのインストール用にコメントが削除され、いくつかの追加ブロックが追加された `+ 000-default +`設定ファイルのコピーです。
/etc/apache2/sites-available/pydio.conf
<VirtualHost *:80>
ServerAdmin @
ServerName
DocumentRoot /var/www/pydio
ErrorLog ${APACHE_LOG_DIR}/pydio-error.log
CustomLog ${APACHE_LOG_DIR}/pydio-access.log combined
<Directory /var/www/pydio/>
AllowOverride All
</Directory>
</VirtualHost>
これをコピーして `+ pydio.conf +`に貼り付ける前に、その中身を見てみましょう。
-
`+ <VirtualHost *:80> +`は_virtual host_を定義します。これにより、単一のサーバーで複数のサイトをホストできます。 この行は、この仮想ホストをこのサーバーのデフォルトサイトとして明確に定義し、ポート80を介して接続します。
-
`+ ServerAdmin +`は、エラー処理がそのように設定されている場合、エラーを送信するApacheの電子メールアドレスを定義します。
-
`+ ServerName `は、PydioサーバーまたはサーバーのIPのDNS名です。 IPから始めて後で変更する場合は、そのIPをそのままにして、新しいDNS名で「 ServerAlias +」行を追加できます。両方とも機能します。
-
`+ DocumentRoot +`は、Apacheがサーバーを起動する必要のあるDroplet上のWebサイトが保存されている場所です。
-
`+ ErrorLog `と ` CustomLog +`はApacheログを保存する場所を定義します。 非常にカスタムのログ設定が必要な場合、これらのログオプションはかなり複雑になる可能性がありますが、これらのデフォルトは目的に合わせて機能します。
この構成をファイルに貼り付け、保存して閉じます。 Apache設定ファイルを配置したら、デフォルトのApache設定を無効にする必要があります。
sudo a2dissite 000-default
次に、2つの構成ファイルを有効にします。
sudo a2ensite pydio
前提条件で、Let’s EncryptをセットアップしてSSL / TLS暗号化を有効にすることを述べました。 これにより、ローカルネットワークまたはインターネット経由でパケットを傍受できる人からログイン情報とデータを保護します。 ApacheをWebサーバーとして使用しているため、Let’s EncryptはApacheを自動的に構成するためのサポートを提供しています。 作業を簡単にするために、SSLを使用しないApacheをセットアップしたため、自動Let’s Encryptスクリプトを実行すると、すべて自動でセットアップされます。
https://www.digitalocean.com/community/tutorials/how-to-secure-apache-with-let-s-encrypt-on-ubuntu-14-04 [Apacheで暗号化するチュートリアル]をフォローする時間です。 。 Let’s Encryptのセットアップ中に選択したFQDNを使用すると、インストーラースクリプトがApache構成を確認し、SSLバージョンを作成します。
どの仮想ホストを選択するか尋ねられたら、必ず「+ pydio.conf +」を選択してください。 接続を常に安全にしたいので、Let’s Encryptスクリプトが要求したときに、必ず[* Secure-すべてのリクエストを安全なHTTPSアクセスにリダイレクトする]を選択してください。
最後に、変更を有効にするためにApacheを再起動できます。
sudo service apache2 restart
ステップ4-PHPメーラーサポートのカスタマイズ
Postfixは前提条件からインストールする必要があります。 次に、ローカルアプリ以外が使用できないように簡単な変更を加えます。
この変更を行うには、Postfix設定ファイル `+ / etc / postfix / main.cf +`を編集する必要があります。
sudo nano /etc/postfix/main.cf
「+ inet_interfaces」行を検索し、「+ all」から「+ localhost」に更新します。
/etc/postfix/main.cf
. . .
recipient_delimiter = +
inet_interfaces =
inet_protocols = all
. . .
次に、Postfixサービスを再起動して、変更を有効にします。
sudo service postfix restart
ステップ5-Pydioセットアップの完了
Pydioがインストールされています。このステップでは、設定を完了します。
お気に入りのブラウザで「+ https:// +」にアクセスします。 最初に表示されるページには、* Pydio Diagnostic Tool というラベルが付けられます。 そのページのリストで、一番上の項目は Server charset encoding に関する警告です。 すぐに修正します。 それが唯一の警告であり、残りの項目が OK である限り、ボタンをクリックして PYDIOに進むにはここをクリックします*。
プロンプトが表示されたら、[*ウィザードを開始> *]ボタンをクリックします。 *メインオプション*の最初のページで、フィールドに入力します。
-
アプリケーションのタイトル。ブラウザのタイトルバーに表示されます
-
ようこそメッセージ、ログイン画面に表示されます
-
管理者ログイン、管理者ユーザー名
-
管理者表示名
-
管理者パスワード
すべてを記入したら、右下の赤い* >> *ボタンを押します。
image:https://assets.digitalocean.com/articles/pydio/H6sSWHv.png [Pydioインストーラーのメインオプション]
-
Database Connexion の2ページ目で、 Database プルダウンメニューから Sqlite 3 を選択します。 SQLiteデータベースが保存されるファイル行を変更しないでください。 * Test Connection *ボタンをクリックして、すべてが機能していることを確認します。 テストが成功すると、画面の下部に緑色のボックスが表示されます。 その後、 >> *ボタンをクリックして続行します。
*詳細オプション*のステージ3では、ほとんどのものが自動的に検出されるため、それらが正しいことを確認するだけです。 必要なことの1つは、メールサポートを有効にすることです。
-
*メールを有効にする*の場合、プルダウンメニューから*はい*を選択します
-
* Php Mailer の場合、 Mail *を選択します
-
*管理者のメールアドレス*のメールアドレスを入力してください
[設定されたデータを含むメールを送信してみてください]ボタンをクリックして、すべてが機能していることを確認します。
最後に、[Pydioのインストール]ボタンをクリックしてインストールを完了します。
ステップ6-Pydioの使用
Pydioがインストールされたので、カスタムウェルカムメッセージが表示されたログイン画面になります。 これで、前の手順で定義した管理ユーザーでログインできます。
ログインすると、左側に* Common Files と My Files の2つのオプションが表示されます。 これらの2つのオプションは_workspaces_と呼ばれ、基本的にはファイルを保存できるファイル共有またはフォルダーです。 * My Files *はあなた専用で、 Common Files *はこのPydioインストールのすべてのユーザーの共有フォルダーです。
他のワークスペースを作成し、希望する人と共有できます。 Pydioがインストールされたら、クリックして動作を確認し、他のユーザーを招待してファイルを保存してもらいます。
ウェブインターフェースは便利で、データをアップロード、ダウンロード、整理、共有できますが、おそらくネイティブクライアントから直接Pydioでファイルをアップロードします。 https://pydio.com/en/products/downloads/pydiosync-desktop-app [デスクトップクライアントはこちら](Mac / Win / Linux)、https://itunes.apple.com/fr/appをダウンロードできます。 / pydio / id709275884 [ここにiOSクライアント]およびhttps://play.google.com/store/apps/details?id=com.pydio.android.Client [ここにAndroidクライアント]。
同期クライアントをインストールした状態で、Pydio Syncを起動し、ウィザードに従って最初のワークスペースをローカルで同期します。
画像:https://assets.digitalocean.com/articles/pydio/uljFNvX.png [Pydio Syncウィザード]
Let’s Encryptの代わりに自己署名証明書を使用することを選択した場合、証明書に関するエラーが表示されます。 その場合は、警告の後に表示される下部の[SSL証明書を信頼する]ボックスをオンにし、[接続]ボタンをもう一度クリックします。
アカウントのすべてのコンテンツを同期する他のファイル共有ツールとは異なり、Pydioでは各ワークスペースを個別に同期することを選択できます。 クライアントを初めて実行するときに、ローカルで同期するワークスペースを選択できます。 最初の同期が設定されたら、職場の同期を追加できます。
結論
Pydioを使用すると、データを制御でき、すべての主要なデスクトップおよびモバイルプラットフォーム上のネイティブクライアントを使用して、必要なときにいつでもデータにアクセスできます。 しかし、Pydioはファイルをホストするだけではありません。 機能を拡張するためのhttps://pydio.com/en/docs/references/plugins[plugins]のコレクションがあります。
このセットアップでのPydioのパフォーマンスがユースケースに対して少し遅すぎる場合、それを改善するためのヒントをいくつか紹介します。
-
PydioをSqliteではなくMySQLまたはPostgreSQLバックエンドと結合します。
-
Apacheの代わりにhttps://www.digitalocean.com/community/tutorials/how-to-install-nginx-on-ubuntu-14-04-lts[Nginx]をWebサーバーとして使用します。
-
サーバーをアップグレードして、RAMとCPUを増やします
-
サーバー上のhttps://pydio.com/en/docs/v6/setup-webdav-server-access[WebDAVアクセスを有効にする]で、WebDAV対応のサードパーティアプリの同期を行うこともできます。