Mail setting is required in production ghost installation. This is a crucial config. If you do not setup it correctly, then you or your staff members can not reset password in case of forgotten password.

If you are using Ghost (pro) then it is already managed by ghost team and you don't have to do anything extra.

In case of self hosted Ghost installation you have to do it yourself. Follow the steps below.

Setup an external email service account

Choose an external email service and sign up and verify your account. There are lot's of company offers this service. Some recommends are Mailgun, sendinblue, SendGrid. etc.

Setup your domain to your mail service account following company specific guide.

In each Service you will find their SMTP information.

Now update your config.production.json in your Ghost installation.

Setup should be as following. Add the correct value specific for your email service company for each key in the following settings.

"mail": {
    "transport": "SMTP",
    "options": {
        "service": "Mailgun",
        "host": "smtp.eu.mailgun.org",
        "port": 465,
        "secureConnection": true,
        "auth": {
            "user": "postmaster@example.mailgun.org",
            "pass": "1234567890"
        }
    }
}

After Editing config.production.json Restart Ghost.