UbuntuにManaging Newsをインストールする方法
目的と前提
このチュートリアルは、UbuntuサーバーにManaging News(RSS/Atom ベースのニューストラッカー)をインストールする手順を説明します。前提:
- Ubuntu(サーバー)にroot権限またはsudo権限があること
- MySQL(または互換のMariaDB)がインストール済みであること
- wget、unzip、Webサーバー(ApacheやNginx + PHP)が利用可能であること
重要: 使用するパッケージやPHPのバージョンに依存することがあるため、事前にサーバーの要件を確認してください。
主要手順の概要
- MySQLデータベースとユーザーを作成する
- Managing Newsをダウンロードして解凍する
- sites/default の設定ファイルと files ディレクトリの権限を設定する
- Webインストーラ(install.php)からセットアップを行う
- 設定ファイルの権限を元に戻し、セキュリティ対策を実施する
MySQLの設定
- 新しいデータベースを作成します(管理者権限):
mysqladmin create [database]
- MySQLへアクセスします(rootアカウント):
mysql -u root -p[password]
- データベース操作用のユーザーに必要な権限を付与します(ローカル接続を想定):
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER
ON [database].*
TO '[database_username]'@'localhost' IDENTIFIED BY '[password]';
- 権限テーブルを反映します(flush は reload と同等):
flush privileges;
注意: 実運用環境ではroot用のパスワードを安全に管理し、不要な権限を与えないでください。
Managing News のダウンロード
- サーバーで作業ディレクトリへ移動し、wgetでパッケージを取得します。
wget http://managingnews.com/files/managingnews-1.2.zip
- ダウンロード完了後、zipを展開します。
unzip managingnews-1.2.zip
- 展開したファイルをWebドキュメントルート(/var/www/)へ移動します。
mv managingnews-1.2/* /var/www/
注: Webサーバーのドキュメントルートが /var/www/html の場合は、適宜パスを調整してください。
Managing News のインストール手順
sites/default の設定複製と権限変更
- settings.php を作成するために default.settings.php をコピーします。
cd /var/www/sites/default/
cp default.settings.php settings.php
- インストール中にWebインストーラが書き込めるよう、settings.php の書き込み権限を付与します。
chmod a+w settings.php
- 同じフォルダにアップロード用の files ディレクトリを作成し、書き込み可能にします。
mkdir files
chmod a+w files
重要: 書き込み権限はインストール時の便宜のためであり、完了後は必ず戻します(後述)。
Webインストーラを実行
ブラウザで次のURLを開きます(YOURIPADDRESS をサーバーのIPまたはホスト名に置き換え):
http://YOURIPADDRESS/install.php
- プロファイル選択: “Install Managing News” をクリック
- データベース設定: 先ほど作成したデータベース名、ユーザー名、パスワードを入力
- “Save and continue” をクリックして進める
インストールウィザードの画面でサイト情報や管理者アカウント情報を入力します。
インストール後の権限変更(重要)
インストールが完了したら、settings.php と default フォルダの書き込み権限を取り消します。
cd /var/www/sites/default/
chmod a-w settings.php
cd ..
chmod a-w default
さらに、install.php やインストール用ディレクトリが残っている場合は削除またはアクセス制限をかけてください。
サイトの基本設定(Webインストーラ内)
- サイト情報: サイト名、サイト用メールアドレスを入力
- 管理者アカウント: ユーザー名、メール、パスワード(確認入力)を設定
- サーバー設定: デフォルトタイムゾーン、Clean URLs の有効化(可能な場合)、更新通知の自動チェックなど
保存して続行をクリックすると初期セットアップが完了します。
セキュリティと運用上の注意点
- settings.php と sites ディレクトリの書き込み権限をインストール後に元に戻す(a-w)。
- install.php を削除または外部からアクセスできないようにする。攻撃ベクターを減らすため、不要なインストールスクリプトは削除してください。
- データベースのバックアップ計画を立てる(定期的なダンプやスナップショット)。
- WebサーバーとPHPのセキュリティ設定(最新パッチ、不要なモジュールの無効化)を行う。
トラブルシューティング(よくある問題と対処法)
- エラー: データベース接続に失敗する → データベース名/ユーザー/パスワードが正しいか、MySQLが起動しているかを確認。
- 権限エラー: settings.php に書き込めない → インストール中は chmod a+w で書き込み可能にしているか確認。
- ファイルが表示されない/404 → ファイルを /var/www/ に正しく配置したか、Webサーバーのドキュメントルート設定を確認。
ロール別チェックリスト
- システム管理者:
- MySQL ユーザーと権限を作成
- Webサーバーのサービス確認・再起動
- ファイアウォールとポート(80/443)確認
- アプリケーション管理者:
- settings.php の権限調整
- インストールウィザードの実行と初期データ入力
- 自動バックアップスクリプトの設定
- セキュリティ担当:
- install.php の削除/無効化
- 権限とファイル所有者の確認(例: chown www-data:www-data)
検証手順(簡易受け入れ基準)
- 管理画面に管理者アカウントでログインできること
- フィードの登録・表示が正常に行えること(基本的なRSS/Atomを1つ登録して確認)
- 設定ファイルに対して書き込み不可の状態が反映されていること
- Webページが404や500エラーを返さないこと
代替アプローチと拡張案
- Dockerを使ったコンテナ化: Ubuntu上に直接インストールする代わりに、MySQLとアプリケーションをコンテナで分離すると移植性と管理性が向上します。
- リバースプロキシ(Nginx)でSSL終端を行い、Let’s EncryptでHTTPSを有効にすることで通信を保護できます。
ミニ・メンタルモデル(なぜこの順序で作業するか)
- データベースを先に用意:アプリが起動時に接続するため
- ファイル配置と権限設定:インストーラが必要なファイルを書き込めるようにするため
- Webインストール実行:ユーザー入力が必要な初期設定を行うため
- 権限を戻す:書き込みを許可したままにしないため
まとめ
Managing News を Ubuntu にインストールする基本手順は、データベース準備、ファイル配置、権限調整、Webインストーラの実行、そしてインストール後の権限戻しとセキュリティ対策です。各ステップで権限と接続情報の取り扱いに注意し、インストール後は不要ファイルを削除して運用に備えてください。
重要: 本手順は一般的なガイドです。実際の環境やパッケージバージョンにより追加の設定が必要になる場合があります。