One user registration method you can use in Moodle is email-based self-registration. This option allows users to create their own accounts by clicking a ' Create a new account ' button on the main login page. Once they have completed the registration, the user then receives an email at the address they provided to confirm their account.
If you are going to be allowing email-based self-registration, we recommend using a service called reCAPTCHA for preventing fake accounts from being created by “spam bots”. To use reCAPTCHA, a person from your organization has to obtain a private and public key using his/her email address. Kindly follow the steps at: http://recaptcha.net/
Summary of the Steps
Before getting into the details of setting up email-based self-registration, please note the following sections/steps.
Step 1: Enabling Self-Registration
Navigate to Administration block > Site administration > Plugins > Authentication > Manage Authentication.
On the page that loads, make sure the enable setting for self-registration is on (open eye).
Step 2: Configuring the Settings
Part 1: Enabling reCAPTCHA
Enabling reCAPTCHA will prevent "spam bots" from creating fake accounts.
Click the settings link beside self-registration.
On the page that loads, under the subheading "Settings" select 'Yes' from the drop down menu for "Enable reCAPTCHA element".
Part 2: Lock User Fields
On the Settings page, set options for the user fields (locked, unlocked if empty, or unlocked).
Scroll down to the bottom of the page and click "Save changes".
Step 3: Enabling Email-Based Self-Registration
Next, scroll down the page to the heading entitled "Common settings". From the drop down menu beside "Self registration" select "Email-based self-registration".
Further down on the page, if you are using reCAPTCHA enter the private and public key in the respective areas. Then click "Save changes at the bottom of the page.
Email-based self-registration will now be enabled for your site.