ここまでで、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スタックのデフォルト値であるため管理者名とパスワードを変更します。
ログイン後、『管理』→『ユーザー』を選択し、管理者ユーザー名をクリックします。
『ログイン』の欄がユーザー名なので、これを変更します。また、合わせて画面下部にある『パスワード』も変更しておきます。
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の設定が終わったら、バックアップを設定します。