仕事でRedmineを使ってタスク管理をしている方も多いかと思います。

僕は個人でWeb・アプリ開発をしているので、個人/共同プロジェクト管理や

勉強したことをまとめるためにRedmineを自宅サーバに建てたいと思います。

スポンサーリンク

 Bitnami Redmineのインストール

Redmineを簡単にインストール出来るオールインパッケージがあるので、

こちらのBitnami Redmineをインストールします。

bitnami.com

インストール方法は、こちらの記事を参考にしてください。

qiita.com

 インストール時に指定したポートを後から変更する。

C:\Bitnami\redmine-3.3.1-0\apache2\conf\httpd.conf

Listen 80 → Listen 8080 
ServerName localhost:80 → localhost:8080

C:\Bitnami\redmine-3.3.1-0\apache2\conf\bitnami\bitnami.conf

<IfVersion < 2.3 > 
  NameVirtualHost *:80 → 8080 
  NameVirtualHost *:443 → 8443 
</IfVersion> 
<VirtualHost _default_:80 → 8080>     
   : 
</VirtualHost> 
  Listen 443 → 8443 
<VirtualHost _default_:443 → 8443>     
   :
</VirtualHost>
スポンサーリンク

 他のPCからRedmineを閲覧できるようにする。

Redmineをインストールした端末でRedmineが閲覧できる状態になっているかと思います。

しかし、LAN内の他のPCからRedmineを閲覧することができない状態です。

他のPCからもRedmineを閲覧できるように設定する方法はこちら

C:\Bitnami\redmine-3.3.1-0\apache2\conf\httpd.conf

ServerName localhost:8080 → 192.168.11.200:8080

【注意】バージョンやインストールディレクトリが、それぞれの環境で違うと思うので読み替えてください。

このように表示できれば、成功です。

 SSL証明書を取得する。

Let's Encrypt を利用して、無償のドメイン証明用のSSL証明書を発行します。

僕の場合、ASUSルータを使用しているためASUSの提供するDDNSでSSL証明書を発行したいと思います。

Let's Encrypt Windows用クライアントソフトのダウンロード

下記のリンクからZipファイルをダウンロード・解凍します。

解凍後、僕はC:\Bitnami\redmine-3.3.1-0\apache2\letsencrypt

というフォルダを作成し、ここに配置しました。

github.com

ポートフォワードの設定をする。

このままクライアントソフトを走らせても、自宅サーバへ外部からアクセス出来ないことから、申請及び証明・発行が出来ないのでポートフォワードを設定します。

僕の場合、80番・443番でリクエストを受けたら、上記「他のPCからRedmineを閲覧できるようにする。」で記述したアドレスにフォワードするように設定しました。

ちなみに、ASUSルータでのポートフォワード設定はこちらを参考にしてください。

www.tekwind.co.jp

さくらVPSや既に設定済みの方は不要です。

証明書の申請

証明書の申請方法は、こちらを参考にしてください。

IISでLet's Encrypt を利用してSSLサイトを構築する (letsencrypt-win-simple クライアントを利用)

リンクの手順では、IISの設定方法で書かれています。

今回は、Apacheに設定したいのでリンクの手順の「証明書の確認」までを行います。

申請が完了すると、ユーザフォルダの配下に証明書一式がダウンロードされます。

C:\Users\Administrator\AppData\Roaming\letsencrypt-win-simple\httpsacme-v01.api.letsencrypt.org\

【注意点】

  • 管理者権限があるコマンドラインを使用する。
  • 必ずLAN内で作業を行う。

管理者権限があれば、何でも良いです。

僕は、Bitnami Redmine Stackで作業を行いました。

必ずLAN内で作業を行ってください。

ポケットルータからVPN接続で申請作業を行っていたのですが、何度も失敗しました。

たぶんですが、ポケットルーターのポートを開けていなかったので申請に失敗した...と思われます。

 RedmineにSSL証明書の設定

Redmineに証明書を設定していきたいと思います。
httpでリクエストが来た場合、httpsにリダイレクトするように合わせて設定します。

C:\Bitnami\redmine-3.3.1-0\apache2\conf\bitnami\bitnami.conf

<IfVersion < 2.3 >
  NameVirtualHost *:8080
  NameVirtualHost *:8443
</IfVersion>
<VirtualHost _default_:8080>
  DocumentRoot "C:/Bitnami/redmine-3.3.1-0/apache2/htdocs"
  #httpsにリダイレクト
  RewriteEngine On
  RewriteCond %{HTTPS} !=on
  RewriteRule ^/(.*) https://%{SERVER_NAME}/$1 [R,L]
<Directory "C:/Bitnami/redmine-3.3.1-0/apache2/htdocs">
  :
</Directory>
  Listen 8443
<VirtualHost _default_:8443>
  DocumentRoot DocumentRoot "C:/Bitnami/redmine-3.3.1-0/apache2/htdocs"
  SSLEngine on
  SSLCertificateFile "C:\Users\Administrator\AppData\Roaming\letsencrypt-win-simple\httpsacme-v01.api.letsencrypt.org\XXドメイン名XX-crt.pem"
  SSLCertificateKeyFile "C:\Users\Administrator\AppData\Roaming\letsencrypt-win-simple\httpsacme-v01.api.letsencrypt.org\XXドメイン名XX-key.pem"
  SSLCertificateChainFile "C:\Users\Administrator\AppData\Roaming\letsencrypt-win-simple\httpsacme-v01.api.letsencrypt.org\ca-XXXXXXX.pem"
  

https://ドメイン名/redmine で接続出来れば成功です。

 まとめ

Bitnami RedmineのインストールからSSLの設定・接続までいっきにまとめてみました。

どこからでも接続できる環境になったことで、共同プロジェクトや個人勉強メモを外出先からでも更新できるので満足しています。

外部からhttpsで接続できるので、セキュリティ的に安心できるかと思いますので、運用する機会があれば参考にして頂ければと思います。

スポンサーリンク

Twitterでフォローしよう