外からownCloudへアクセスする

家の中ではアクセスできるようになったownCloud。
当然外からもアクセスしたい。そのためにDMZ帯にたてたのだし。

また, 外にさらすのでポート番号は変えたい。(例えば8080等)

ssl.conf  を編集。

/etc/httpd/conf.d/ssl.conf
・・・
Listen 8080
・・・
<VirtualHost _default_:8080>

※ 事前にブロードバンドルータ側でGlobal IP AddressとサーバのIP AddressのNAT設定はしておく

大雑把な構成はこんな

httpdを再起動してアクセスすると, ポート番号は変わったものの外からのアクセスができない。
できないというか, SSLの確立でダメになっているみたい。
パケットのアドレスは変換されるが, SSLのヘッダに組み込まれたアドレスが外のGlobal IP Addressになっていて, 宛先違うじゃないのーって感じでサーバ側から拒否られているんだろう。(多分・・・)

調べてみるとtrusted_domainという設定が効いているらしく, ここも手を加えないと外からアクセス出来ない。
/var/www/html/owncloud/config 配下にある config.php を編集する。

/var/www/html/owncloud/config/config.php
<?php
$CONFIG = array (
・・・
・・・
  ‘trusted_domains’ =>
  array (
    0 => ‘192.168.2.50’, ‘globalIPAddress’,   /**  これを追記 **/
  ),
  ‘datadirectory’ => ‘/home/owncloud’,
  ‘overwrite.cli.url’ => ‘http://192.168.30.10/owncloud’,
 ・・・
・・・
  ‘loglevel’ => 1,
);

ついでにユーザデータのディレクトリの指定もここで変えられるから変えた。
※ これはパーティションの都合・・・

ここを変えた後はもとのファイルの移行をやっておく。

cp -rfa   /var/www/html/owncloud/data/*  /home/owncloud 

で, 改めてhttpdを再起動して完了。

今度はうまく行った。

うまく行ったといっても, クライアント側でアカウントを外用/中用と2つ作ってイチイチ切り替えなくてはならない。
なんかいい方法あるのかな。まぁ, タダだし文句は言うまい。