プログラマーのメモ書き

伊勢在住のプログラマーが気になることを気ままにメモったブログです

【EC2】 Subversion+Redmine環境の構築 (4/6) : Redmine の設定

ここまでで、Subversion関係の設定が終わったので、次はRedmineを設定します。

といっても、まだ本格的に使ったことがないので、とりあえずは基本的なところだけです。

 

【EC2】 Subversion+Redmine環境の構築 (1/6)

【EC2】 Subversion+Redmine環境の構築 (2/6) : Subversionの設定

【EC2】 Subversion+Redmine環境の構築 (3/6) : SSLの設定

【EC2】 Subversion+Redmine環境の構築 (4/6) : Redmine の設定 ←ここです

【EC2】 Subversion+Redmine環境の構築 (5/6) : バックアップの設定

【EC2】 Subversion+Redmine環境の構築 (6/6) : 雑多な設定

 

設定内容

Redmineのサイトにある下記の初期設定ガイドに従って、設定しておきます。

設定時は、管理者でログインします。初期ユーザー名は、user、初期パスワードはbitnamiです。

http://bitnami.org/ja/stack/redmine のページに記載があります)

 

設定内容は、『Redmineを使い始めるための初期設定』 にある内容です。詳しくはリンク先を参照してください。

これらに追加して、『管理』→『設定』→『認証』タブにある、『ユーザーによるアカウント登録』を『無効』にしておきます。

 

管理者ユーザー名の変更

現在の管理者ユーザー名は、Bitnami Redmineスタックのデフォルト値であるため管理者名とパスワードを変更します。

ログイン後、『管理』→『ユーザー』を選択し、管理者ユーザー名をクリックします。

Redmine管理者名の変更

『ログイン』の欄がユーザー名なので、これを変更します。また、合わせて画面下部にある『パスワード』も変更しておきます。

 

Subversionとの連携

ここまで設定したら、サンプルプロジェクトを一つ作ってみます。

プロジェクト作成時には、必ず『公開』のチェックボックスをオフにします。

 

次に、作成したプロジェクトを選択し、『設定』→『リポジトリ』→『新しいリポジトリ』を選択します。

『バージョン管理システム』にSubversion、『URL』に、https://で始まるURLを指定しておきます。ログインとパスワードはBasic認証で指定したものを書いておきます。

『作成』ボタンを押し無事に作成できれば、『リポジトリ』タブを選択するとリポジトリが表示されます。

 

となるはずだったんですが、

リポジトリ表示エラー

となり、リポジトリが表示されませんでした。

 

いろいろと調べたところ、自己署名証明書を使っている場合に問題が起きるようです。

 

apache2/logs/error_log をみると

svn: E175002: Unable to connect to a repository at URL 'https://xxx.mori-soft.com/svn/myfirsttest'
svn: E175002: OPTIONS (URL: 'https://xxx.mori-soft.com/svn/myfirsttest'): Server certificate verification failed: issuer is not trusted (https://xxx.mori-soft.com)

のように出ていました。

 

こうなる原因は、

Redmineに対してオレオレ証明書httpsのsubversionを認めさせる

にもあるように証明書が信頼できないので、許可を求めてくるときの動作のようです。

 

解決策1

手元の環境では、

redmineでSubversionリポジトリにhttpsでアクセスする

RedmineでSSL自己証明書Subversionリポジトリにアクセスする方法

にあるように、svn コマンドのオプションに、--trust-server-cert オプションをつけるようにしました。

これで、apacheを再起動すれば、問題なく表示できました。

 

解決策2

実は、最初別のEC2インスタンスで試していた時は、解決策1ではうまくいっていませんでした。それは、証明書のCommonName を適当に設定したため、サーバーアクセス時のドメイン名と異なっているときでした。error_logには下記のように出ていました。

svn: E175002: Unable to connect to a repository at URL 'https://ec2-54-248-179-49.ap-northeast-1.compute.amazonaws.com/svn/mysecondapp'
svn: E175002: OPTIONS of 'https://ec2-54-248-179-49.ap-northeast-1.compute.amazonaws.com/svn/mysecondapp': Server certificate verification failed: certificate issued for a different hostname, issuer is not trusted (https://ec2-54-248-179-49.ap-northeast-1.compute.amazonaws.com)

 

この場合は、

RedmineでSubversionのパースエラーが出る時の対処

Redmine subversion won't ignore certificate error even if told

にあるように、手作業で証明書を永久に信頼して、その保存されたディレクトリをRedmineの処理で指定するというやり方になります。

なお、Bitnami Redmineスタックのapacheはdaemonユーザで動いているのですが、Redmineが実行しているsvnのコマンドなどはbitnamiユーザーで動作しているようです。なので、bitnamiユーザーが読み取れるようにパーミッションの設定には注意が必要です。

 

Redmineの設定が終わったら、バックアップを設定します