Ubuntu での Moodle サーバー構築・設定手順まとめ
このドキュメントは、Ubuntu 24.02 LTS 上で Moodle サーバーを構築し、HTTPS で安全に運用するまでの手順をまとめたものです。あくまでも自分の整理用にまとめたものになります。
1. 必要パッケージのインストール
sudo apt update
sudo apt install apache2 mysql-server php libapache2-mod-php php-mysql php-xml php-mbstring php-curl php-zip php-soap php-intl php-gd php-bcmath php-cli php-common php-readline git unzip
2. MySQL の基本操作(ユーザー・データベース作成)
MySQL に接続する:
sudo mysql -u root
またはパスワード付きなら:
sudo mysql -u root -p
データベース一覧を表示:
SHOW DATABASES;
ユーザー一覧を表示:
SELECT user, host FROM mysql.user;
Moodle 用データベースとユーザーの作成:
CREATE DATABASE moodle DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'moodledude'@'localhost' IDENTIFIED BY 'yourpassword';
GRANT ALL PRIVILEGES ON moodle.* TO 'moodledude'@'localhost';
FLUSH PRIVILEGES;
EXIT;
(GRANTがうまく通っておらず、1日を無駄にしました・・・)
3. Moodle のダウンロードと配置
cd /var/www/html
sudo git clone https://github.com/moodle/moodle.git
cd moodle
sudo git branch -a # 必要に応じてバージョンを選択
sudo git checkout MOODLE_405_STABLE # 例: 4.05 を使用
sudo chown -R www-data:www-data /var/www/html/moodle
sudo chmod -R 755 /var/www/html/moodle
Moodle データディレクトリの作成:
sudo mkdir /var/moodledata
sudo chown -R www-data:www-data /var/moodledata
sudo chmod -R 770 /var/moodledata
4. Moodle 初期設定
ブラウザで以下にアクセスし、インストーラを開始:
http://<サーバーIP>/moodle
例:http://10.10.10.10/moodle
例:http://localhost/moodle
5. PHP 設定の調整(大きなファイルのアップロードを可能に)
sudo vi /etc/php/<version>/apache2/php.ini
以下を編集:
upload_max_filesize = 512M
post_max_size = 512M
max_execution_time = 600
sudo systemctl restart apache2
6. HTTPS(自己署名証明書)でのアクセス設定
証明書の作成
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
-keyout /etc/ssl/private/moodle-selfsigned.key \
-out /etc/ssl/certs/moodle-selfsigned.crt
Apache の SSL 仮想ホスト設定
sudo vi /etc/apache2/sites-available/moodle-ssl.conf
<VirtualHost *:443>
ServerAdmin admin@example.com
DocumentRoot /var/www/html
ServerName 10.10.10.10
SSLEngine on
SSLCertificateFile /etc/ssl/certs/moodle-selfsigned.crt
SSLCertificateKeyFile /etc/ssl/private/moodle-selfsigned.key
<Directory /var/www/html>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
有効化と再起動:
sudo a2enmod ssl
sudo a2ensite moodle-ssl.conf
sudo systemctl restart apache2
7. Moodle の設定ファイル修正
sudo nano /var/www/html/moodle/config.php
$CFG->wwwroot = 'https://10.10.10.10/moodle';
8. Moodle 内部の URL を一括置換(http → https)
sudo -u www-data php /var/www/html/moodle/admin/tool/replace/index.php
検索語:http://10.10.10.10/moodle
置換語:https://10.10.10.10/moodle
9. キャッシュのクリア(必要時)
sudo -u www-data php /var/www/html/moodle/admin/cli/purge_caches.php
10. 管理画面での初期設定完了!
- プラグイン(例:Attendance)やコース、ユーザー設定へ進みましょう
-
https://<IP>/moodle
にて安全にアクセス可能
まとめ
以上がubuntuにMoodleをインストール、設定する流れになります。かけている部分等は順次追記していきます。