Networking prerequisites and security
Moodle networking requires a number of additional components to be installed on your servers that deal with secure communication and safe data exchange.
Required PHP extensions
The following elements have to be installed on all Moodle servers that are participating in the network:
curl
: A PHP library of calls that are specifically designed to safely fetch data from remote sites. If not installed, you have to recompile PHP and add--with curl
when runningconfigure
.openssl
: The OpenSSL PHP library provides encryption functionality without the need to purchase an SSL certificate (--with openssl
).xmlrpc
: A PHP library that supports remote procedure calls via XML (--with xmlrpc
).
It is possible to add trusted hosts to Moodle, which allows them to execute calls via XML-RPC to any part of the Moodle API (Networking | XML-RPC hosts). This is potentially very dangerous and is only meant for developers. We will not be dealing with this functionality in this book...