パーソナル Redmine をセキュアかつ低コストで構築


現在、ローカルマシンの Docker 上にて、自分専用の Redmine を試用中です。  
大変便利なので、外出先からも利用したくなりました。

そこで、いくつか方法を検討してみたのですが、全くの素人ゆえ、安全面や経済面での不安が拭えません。アドバイス等を頂ければ幸いです。

## 検討した方法

  1. VPS や PaaS をレンタルして構築

    * デメリット

      * 運用コストがかかる
      * 制限がある (特に PaaS
      * 海外のセービスを利用する場合は速度等が気になる
    * メリット

      * ある程度のセキュリティは保障される? (もちろんアプリケーション自体は自己責任だろうが
  2. 自宅鯖で構築・公開

    * au ひかり回線なので制約が多く、イレギュラーな設定をしなければならない
    * よって、経済的にも学習的にも高コストかもしれない
  3. 自宅鯖は公開せずに VPN で接続 (今のところ本命)

    * VPN 自体は、今回の件とは別にチャレンジしてみたいと以前から思っていたので好都合。
    * 2 と同様の問題点があるが、VPN でのアクセスなのでアプリケーション自体のセキュリティなどは、そんなに心配しなくても良い?

## 求めるもの

  1. どこからでもアクセスできる自分専用の Redmine

    * なるべく新しい Redmine を使いたい
    * できれば Docker 上で
  2. できるだけセキュアに

    * プライベートな情報を扱うので
  3. できるだけ低コストで

    * 初期投資は惜しみません
    * 運用コストはゼロに近づけたい
  4. 学習コストも低い方がありがたい

    * 今すぐにでも欲しいので... ＞＜

## 当方の知識・経験

  * Web アプリケーションをローカルや Docker 上で **とりあえず** 動かすことはできます。

    * e.g. gollum, media wiki, その他 Python 製の小規模なモノとか
    * 公開を前提とした Web アプリケーションの構築は未経験
    * よって、Web アプリケーションのセキュリティなどは知識ゼロ
  * ネットワーク関連の知識もほぼゼロ




どのような形であろうと公開サーバを運用するにはそれなりの知識が必要です。

それがないのであれば、VPSだろうとクラウドだろうと自宅サーバだろうとサーバの公開は選択肢になり得ません。

VPNがルータの機能で実現できるのであれば、よっぽどおかしなことをしない限り危険な状態にはなりにくいので、比較的ましな選択肢と言えるでしょう。ただし、VPNの公開もサーバの公開の一種ではあるので、十分に内容を理解しておこなってください。

追記  
上記で、「VPNが **ルータの機能で実現できるのであれば**
」と書いているのに注意してください。ソフトウェアによるVPNサーバの運用にはセキュリティ確保のために一定の知識が必要なので、それをやるぐらいであればRedmineを直接公開した方が遙かにましです。




どのような形であろうと公開サーバを運用するにはそれなりの知識が必要です。

それがないのであれば、VPSだろうとクラウドだろうと自宅サーバだろうとサーバの公開は選択肢になり得ません。

VPNがルータの機能で実現できるのであれば、よっぽどおかしなことをしない限り危険な状態にはなりにくいので、比較的ましな選択肢と言えるでしょう。ただし、VPNの公開もサーバの公開の一種ではあるので、十分に内容を理解しておこなってください。

追記  
上記で、「VPNが **ルータの機能で実現できるのであれば**
」と書いているのに注意してください。ソフトウェアによるVPNサーバの運用にはセキュリティ確保のために一定の知識が必要なので、それをやるぐらいであればRedmineを直接公開した方が遙かにましです。

