容量(プール)!容量(プール)!容量(プール)!容量(プール)!
大容量を!一心不乱に大容量を!!
・・・とまぁ少佐な感じは置いといて、
クラウドストレージ、いろんなところがやってますね。
DropBox、OneDrive(SkyDrive)、Google Drive等々。
無制限ストレージなんてのもありますが、出ては消えていくのを繰り返している感があります。
トレンドマイクロ・・・BitCasa・・・無制限ストレージ・・サービス終了・・・
ウッ頭が・・・
で、個人的にはいつサービス終了されるかわからないクラウドストレージより
自前で作ればいいんじゃね?ってことで、OwnCloudというアプリケーションを使い
プライベートクラウドストレージを作った記録です。
以前も作っていたんですが、NAS復旧に合わせて再構築したので
今度こそ構築メモとして残しておきます。
● 目標
- NAS上でクラウドストレージを立ち上げ、自分(身内)専用のストレージ領域として使う
- 手持ちのWinマシン、スマホ(Android)から出先で利用できるようにする
- Surface Pro3のドキュメントフォルダのバックアップに使う
- オンラインストレージを上回る容量にする
- 外からはドメイン名でアクセスできるようにする
- ファイル転送を暗号化するためにSSL証明書を使用し、HTTPS通信を行う
●作業環境
- Nas4Free:9.3系(9.3.0.2.1480)
- Lighttpd:1.3系(1.3.45、上記Nas4Freeにインストールされているもの)
- OwnCloud:8.0系(8.0.3)
- 自宅のWAN側IPをDDNS連携し、DNS名でアクセスできるように設定する
- ルータ上で、OwnCloudで利用するポートに穴を開ける
以下が実際の作業手順です。
●OwnClowdのインストール
1)アップロードディレクトリ(/mnt/zfs-Mgmt/OwnCloud-upload)、OwnCloud自身のインストール領域(/mnt/zfs-Mgmt/owncloud)をZFSから切り出し
ZFSのストレージプールからアップロード用ディレクトリと、OwnCloud自身をインストールする領域を切り出します。
アップロードはとりあえずの領域として200GBほど確保しました。
OwnCloudはUSBメモリの空き領域上に作っても良いのですが、前回USBメモリがリードエラー起こした際にめんどくさい状態になったので、今回は自動でマウントされるZFSのストレージプール上に確保しました。
2)OwnCloud実行ファイルの展開
ZFS上で確保したインストール領域のマウントポイント(/mnt/zfs-Mgmt/owncloud)へ
OunCloud公式からダウンロードしたtar.bz2を展開します。
3)Nas4Free上でWebServerの設定
ひとまずセットアップを完了させるため、以下の設定でWebServerを稼働させます。
- HTTP(ポートは任意)
- Document Root:2)で展開したOunCloudのディレクトリ(/mnt/zfs-Mgmt/owncloud)
- Upload Directory:アップロードディレクトリ(/mnt/zfs-Mgmt/OwnCloud-upload)
- 追加パラメータで以下を設定
どうでもいいですが、9.3系のWebserver設定画面最下部にある注意書き、
タイポしてますね。。。
Nas4Freeに搭載されているLighttpdの設定ファイルは、/var/etc/websrv.confですが、
WebUIはwersrv.confになってますね。
でアクセスすると、初期設定画面が表示されるので
管理者アカウントを設定します。
●HTTPSで利用するための証明書を生成
OpenSSLを用いて証明書を作成します。
外部のCAからSSL証明書を発行できればいいのですが、
コスト見合いで宅内ADのCA局(ADCS)から発行の形式にします。
今回は作業用PCの都合でWindowsバイナリを用いて作業しています。
まずは秘密鍵を作成します。
>openssl.exe rand -out seed.dat 1024
>openssl.exe genrsa -rand seed.dat -out server.key -aes256 2048
その後、CSRを生成するのですが、
この際、証明書のCN以外のホスト名でアクセスする可能性がある場合、
別名(Alternative Name)を証明書に設定します。
openssl.cfg内に
[req]に
req_extensions = v3_req
を追加、
[v3_req]に
subjectAltName = @alt_names
を追記し、CSRを作成します。
>openssl.exe req -new -sha256 -config openssl.cfg -key server.key -out nas4free.pem
Enter pass phrase for server.key:
Loading 'screen' into random state - done
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:JP
State or Province Name (full name) [Some-State]:Tokyo
Locality Name (eg, city) :
Organization Name (eg, company) [Internet Widgits Pty Ltd]:home
Organizational Unit Name (eg, section) :
Common Name (e.g. server FQDN or YOUR name) :<FQDN>
Email Address :Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password :
An optional company name :
各フィールドは適宜設定。
2015/11/03追記:ここでChrome等の証明書警告を出さないためなのと、昨今のSSLの流れに従い、署名アルゴリズムをSHA256にしてCSRを出力させます。
作成したCSRをADCSで署名し、ダウンロードするのですが、
・Nas4Freeへインポート
作成した証明書と秘密鍵をNas4Free上へインポートするのですが、
このままだとWebServer起動時にキー入力画面で止まってしまうので、
パスフレーズを解除しておきます。
openssl rsa -in server.key -out server.key
その後、作成した証明書と秘密鍵をメモ帳で開き、
そのままNas4Freeの証明書、秘密鍵のフィールドに入れればOKです。
(ProtocolをHTTPSに変更するとフィールドが現れます)
・HTTPS+FQDNでアクセスし、問題がないことを確認する
HTTPSでアクセスし、問題なくアクセスできているかを確認します。
それが終わればアカウントの設定、クライアントアプリの設定をすればOKです。
折角なので、Androidアプリも購入して、どの端末からでも参照できるように利用します。
ownCloud - Google Play の Android アプリ
参考:
Installation Wizard — ownCloud Server Administration Manual 8.0 documentation
NAS4Free 9.1.0.1 で ownCloud を使う。ついでに Active Directory も対応してみる。 | 環境さんぷる
エスブレイン » CSR発行手順(openssl、Apache標準)
openssl で、ユニファイド コミュニケーション証明書用の CSR を作成
【Amazon.co.jp限定】TOSHIBA 3TB 3.5インチ内蔵 SATAハードディスクドライブ MD04ACA300/N 【フラストレーションフリーパッケージ】
- 出版社/メーカー: 東芝
- 発売日: 2015/01/17
- メディア: Personal Computers
- この商品を含むブログを見る
玄人志向 HDDスタンド USB3.0接続 KURO-DACHI/CLONE/U3 パソコンなしでHDDのまるごとコピー機能付き
- 出版社/メーカー: 玄人志向
- 発売日: 2012/04/25
- メディア: Personal Computers
- 購入: 7人 クリック: 30回
- この商品を含むブログを見る