AWS」カテゴリーアーカイブ

AWS (Amazon Lightsail) で Redmine サーバ作成

EC2よりも更に簡易なLightsailで、Redmineサーバを構築してみる。

1. 仮想マシンのデプロイ

WebブラウザでLightsailコンソールを表示する。

「インスタンスの作成」をクリックする。

プラットフォームは「Linux/Unix」を選択(デフォルト)する。

画面を下へスクロールする。

設計図は「Redmine」を選択する。 SSHキーペアは、既にあるものを使う場合は何もしない。新たに作る場合は「SSH キーペアの変更」で作成する。

さらに下へスクロールすると、インスタンスプランの選択画面になる。少人数の利用であれば、デフォルトの512MB 1vCPUのプランでよい。

インスタンス名はわかりやすいものを自分で決める。ここではデフォルトが「Redmine-1」なので、それをそのまま利用した。

「インスタンスの作成」をクリックすると、実際に作成される。画面が切り替わって、 インスタンスがグレーアウトした状態で現れ「保留中」と表示されるので、しばらく待つ。

表示が「実行中」に変わったら、インスタンス名をクリックする。

2. シェルログイン

「SSHを使用して接続」をクリックすると、ブラウザでコンソールを表示できるので、今回はそちらを使ってみる。

※「パブリックIP」に表示されているグローバルIPv4アドレスへ、sshコマンドで接続してもよい。その場合はユーザ名bitnami、sshキーペアはインスタンス作成時に指定したものを使用する。

コンソールで cat bitnami_credentials を実行する。

上記のように、Redmineログイン用のユーザ名とパスワードが表示される。この場合はユーザ名「user」、パスワード「yXenWa2DLcJr」である。

3. Redmine ログイン

Webブラウザで、http://パブリックIP/ にアクセスする。

ログインしていない状態の Redmine が表示される。右上の「ログイン」をクリックする。

さきほどコンソールで表示したユーザ名「user」とパスワードを入力してログインする。

これで、管理者として Redmine にログインした状態となった。あとはブラウザ上から Redmine を操作していく。

4. 初期設定

まずは「Administration」→「Settings」→「Display」タブ→「Default language」を「Japanese(日本語)」に変更、「Save」をクリックする。

次に「Administration」→「Users」へ移動して、新しい管理者ユーザを作成する。*が付いている項目は入力必須である。「Administrator」にはチェックをつけておくこと。

作成出来たら、右上の「Sign out」をクリックしていったんログアウトし、さきほど作成したユーザを使い再ログインする。

ログイン出来たら、元の「user」ユーザを使えないようにしておく。「管理」→「ユーザー」へ移動して、「user」をロックまたは削除する。

AWS (Amazon EC2) で Redmine サーバ作成

課題管理サーバを立てる必要が出てきたので、AWS (EC2) でお手軽に作ってみた。

1.仮想マシンデプロイ

AWS コンソールで EC2 のインスタンス追加画面に行き、AWS Marketplace から検索で「Redmine Certified by Bitnami」を探す。

この AMI を利用して、t1.micro の仮想マシンを作成する。

2. 初回ログイン

sshで仮想マシンにログインする。ユーザ名はbitnami、ssh鍵はデプロイ時に指定したものを使う。

bitnamiユーザのホームディレクトリに “bitnami_credentials”というテキストファイルがあるので、中を閲覧する。Redmine上のユーザ名とパスワードが記載されている。

Welcome to the Bitnami Redmine Stack

******************************************************************************
The default username and password is 'user' and 'TBLwnBpotZT3'.
******************************************************************************

You can also use this password to access the databases and any other component the stack includes.
Please refer to https://docs.bitnami.com/ for more details.

https://RedmineホストのグローバルIPアドレス/ にアクセスして、ユーザ名: user パスワード: 上記テキスト内のパスワード でログインする。

実際に使うユーザを作成してシステム管理者権限を割り当て、そのユーザで再ログインして元々の「user」ユーザを削除する(セキュリティを考慮して)。

3. ホスト名の付与と SSL 証明書の取得

自分の所有ドメインがある場合は、ホスト名を割り当て、Let’s Encryptで証明書を取得することで正規の https サイトにする。

所有ドメインのゾーンファイルに、以下のようなAレコードを追加してリロードする。例示アドレスの 203.0.113.100 は Redmine ホストのグローバル IP アドレスとする。

redmine.example.com.    IN A     203.0.113.100

Redmine サーバに ssh ログインして、/opt/bitnami 以下にインストール済みの letsencrypt クライアント (lego) を利用する。

$ sudo /opt/bitnami/letsencrypt/scripts/generate-certificate.sh -m root@example.com -d redmine.example.com
...
It will create a certificate for the domain "redmine.example.com" under the email "root@example.com"
Do you want to continue? [y/n]: y
...
You can now configure a cronjob to renew it every month.
Do you want to proceed? [y/n]: y

Apache の設定も自動で書き換わるので、これで作業完了でもよいが、httpでアクセスされたらhttpsに転送するようにしておく。

$ sudo vi /opt/bitnami/apache2/conf/bitnami/bitnami.conf

13行目付近に太字の3行を追加
<Directory "/opt/bitnami/apache2/htdocs">
Options Indexes FollowSymLinks
AllowOverride All
RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
<IfVersion < 2.3>
Order allow,deny
Allow from all

28行目をコメントアウト
#Include "/opt/bitnami/apache2/conf/bitnami/bitnami-apps-prefix.conf"


$ sudo /etc/init.d/bitnami restart