A project to build a Moodle server and Wi-Fi router on a Raspberry Pi 3.
Visit the MoodleBox web site for any question about the usage of a MoodleBox.
- MoodleBox hostname is moodlebox. It's reachable on the local network with FQDN moodlebox.home. Access via SSH is enabled on port 22 ; username: moodlebox, password: Moodlebox4$ (e.g.
ssh moodlebox@moodlebox.home
). - Wi-Fi access point. SSID: MoodleBox; password: moodlebox.
- Internet access: when the MoodleBox is connected via ethernet to a network connected to Internet, the MoodleBox acts as a router (IP forwarding) and the Wi-Fi clients have access to Internet.
- Moodle 3.3.x LMS reachable via Wi-Fi (or ethernet, see below), URL: http://moodlebox.home/; standard configuration of Moodle with no customisation. An admin account for the Moodle, username: admin, password: Moodlebox4$. The Moodle server is configured to accept the clients from the Moodle official mobile app. The maximal size of uploaded files is set to 50Mb. The cron is launched every 3 minutes.
- When a USB key is inserted in the MoodleBox, all the files on it are available for the admins and teachers of the Moodle server, via a File system repository.
- Integrated in Moodle administration interface (MoodleBox plugin):
- GUI to restart and shutdown the MoodleBox.
- GUI to change the password of the MoodleBox.
- GUI to change the password of the Wi-Fi network published by the MoodleBox.
- GUI to set date and time of the MoodleBox (when away from Internet connection).
- PhpMyAdmin is installed with an admin account; username: moodlebox, password: Moodlebox4$.
To build a MoodleBox from scratch with this script, you need a Raspberri Pi 3 (Wi-Fi!) and follow these instructions.
- Clone Rasbpian Jessie Lite on your microSD card
- Create a
ssh
file on theboot
partition, e.g.touch ssh
- Login to your RPi with the default user pi:
ssh pi@raspberrypi.local
- Upgrade your Raspbian installation:
sudo apt-get update && sudo apt-get dist-upgrade -y
- Install
rsync
:sudo apt-get install rsync
, then logout - Prepare a file
authorized_keys
containing your public keys - Launch
bash copy-sshkeys-to-rpi.sh
and enter the pi user default password (raspberry
) - Login to your RPi with the user root (no password required):
ssh root@raspberrypi.local
- Launch
curl -L https://raw.githubusercontent.com/martignoni/make-moodlebox/master/make_moodlebox.sh | bash
If you prefer to build a MoodleBox manually, follow the instructions given in the documentation included in the doc
folder of this project, as a LaTeX document (in french; sorry, no english version as of now, pull request highly desirable).
The code is available at https://github.com/martignoni/make-moodlebox.
A prepared disk image of the latest released version is available for downloading, cloning on your microSD card and using out of the box on your Raspberry Pi 3.
See Release notes.
- To Daniel Méthot, for the idea of a MoodleBox
- To Christian Westphal, for the first POC of a MoodleBox
- To the Raspberry Pi Foundation, for a splendid small computer
- To Martin Dougiamas, for giving us Moodle, and to the Moodle community
Copyright © 2016 onwards, Nicolas Martignoni nicolas@martignoni.net
- All the source code is licensed under GPL 3 or any later version
- The documentation is licensed under Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.