Everyone has an email account because they are required to operate in the interconnected world of the mid-twentieth century. Most individuals get their email addresses through their job or from one of the digital behemoths like Google or Microsoft. However, using a cheap device such as a Raspberry Pi, you may operate your own email server with your own domain name.
Why Run an Email Server on Your Raspberry Pi?
Emails are the contemporary equivalent of letters—they’re private communications, but by utilizing a free service like Gmail, you’re granting a predatory advertising and monitoring corporation permission to snoop into your life, appointments, intimate connections, travel plans, and bookings. Google presents these incursions as perks, yet others find them to be an unsettling amount of surveillance.
Your data is in your own hands and on your own hardware when you operate your own email server, with no scrutiny from shady corporate companies. If you really need to delete an email quickly, you may always swallow the microSD card (don’t do this).
A Raspberry Pi is ideal for this project because to its low power consumption—an email server must be switched on at all times, so anything more powerful is a waste of money. Email has been present since the 1970s and could be used on computers at the time. Anything more powerful than a Raspberry Pi is excessively powerful.
Is It Difficult to Create a Raspberry Pi Email Server?
Installing and configuring several components, including as Postfix, Dovecot, openDKIM, SpamAssassin, and Sieve, might be difficult when starting from scratch. It will take up a large portion of your day, and it is a risky procedure with many opportunities for error.
Fortunately, there are programs that can make installing an email server on your Raspberry Pi simple, which means you can have your email server up and operating in less than an hour!
What You Will Need for Your Email Server
To complete this project, you will need:
- A Raspberry Pi device (any model will do)
- An Ethernet cable
- A static IP address
- If you don’t already have one, here are some helpful hints for selecting a domain name.
- Understanding your Pi’s local IP address
- Another PC
Setting Records and Opening Ports
Navigate to your registrar’s Advanced DNS area and erase any existing entries. Click the Add New Record button. Select A record as the type, @ as the host, and your public IP address as the value. Save, then click Add New Record one again.
In this record, set the type to A record, the host to *, and the value to your public IP address. Finally, create a new MX record with the host @, the value mail.your-domain.tld, and the priority set to 10. Save the updated DNS records.
Navigate to the router’s administration menu. This is commonly accomplished by entering 192.168.1.1 into a browser. If this does not work, examine your router’s manual. Find a section labeled Port Forwarding, Port Mapping, or Port Management and add four new entries:
- The first pertains to HTTP requests. Set both the local and public ports to 80, and the local IP address to your Pi’s IP address.
- The second kind of request is HTTPS. Set both the local and public ports to 443, and the local IP address to your Pi’s IP address.
- The third category is for IMAP requests. Set both the local and public ports to 993, and the local IP address to your Pi’s IP address.
- The fourth is reserved for SMTP queries. Set both the local and public ports to 587, and the local IP address to your Pi’s IP address.
Prepare Your Pi!
Connect your Raspberry Pi to your network with an Ethernet wire after installing a Debian-based operating system (Raspberry Pi OS would suffice).
- Log in to the Raspberry Pi via Secure Shell (SSH), either through a terminal on Linux or macOS, or through PuTTY on Windows.ssh email@example.com
- Any packages should be updated and upgraded: sudo apt-get update sudo apt-get upgrade
- For your mail subdomain, you will use Apache as a reverse proxy and Certbot to get security certificates. Sudo apt install apache2 installs Apache.
- After adding the Certbot repository, update and install Certbot: sudo apt-get add-repository sudo apt upgrade ppa:certbot/certbotsudo python3-certbot-apache apt-get install
- cd /etc/apache2/sites-available
- Create a new conf file for your mail subdomain using nano: nano mail.conf sudo And copy:VirtualHost *:80> /VirtualHost>ServerName your.domain Ctrl + O saves and exits nano, followed by Ctrl + X.
- Change directories and rename the default Apache configuration file to the name of your new domain, followed by a copy to the name of your subdomain: cd /etc/apache2/sites-available/sudo cp 000-default.conf your-domain.confsudo cp 000-default.conf mail.confsudo cp 000-default.conf mail.conf
- Use nano to edit your-domain.conf: sudo nano your-domain.conf Add another line behind the line VirtualHost *:80>:ServerName your-domain.tld
- Ctrl + O to save and Ctrl + X to leave nano. And then repeat for mail.conf.
- Sudo a2ensite your-domain to enable both conf files. a2ensite mail.conf confsudo
- Sudo service restart Apache restart apache2
- Run Certbot to get security certificates and keys for your primary domain as well as your mail subdomain. certbot sudo You will be asked for your email address, confirmation that you agree to the Terms of Service, if you are prepared to share your email address with the EFF, and lastly, which names you want HTTPS enabled for. Return to select all domains, and when prompted to convert HTTP traffic to HTTPS, choose 2 to redirect.
Install the Email Server Software
Follow these steps to install the email software.
- Download the emailwiz installation script to your home directory: cd lukesmith.xyz/emailwiz.sh curl
- Before executing a script on your Raspberry Pi, it’s usually a good idea to know what it does, so:cat emailwiz.sh…to check for any nasties.
- Make the script executable before running it: chmod +x emailwiz.sh sudo./emailwiz.sh
- The script will download and install Postfix, Dovecot, openDKIM, and SpamAssassin, and you will need to engage with the installation at different points.
- The installation procedure will prompt you to choose a kind of mail server setup. Select Internet site using the arrow keys on your keyboard, then click the Tab key to highlight OK and press Enter.
- Following that, you will be prompted to enter your Fully Qualified Domain Name. Do not include www or http in the domain name; just enter the domain name.
- When the installation is finished, you will be given with three green-highlighted text records, as well as the host and values.
- Return to your registrar’s Advanced DNS page and create three new TXT records, pasting each record into the appropriate field. These will keep your email from ending up in other people’s spam folders.
- Anyone who joins the mail group will get an email account with their Pi login and password. Include your Pi user in the mail group: ./usermod -G mail -m That’s all there is to it!
Connect to Your Email Server With a Client on Mobile or Desktop
Your email server is operational and ready to use. It is secure against attackers and may be accessed by any user account on your Pi. It’s time to connect to it using an email client—though any emails sent at this moment are likely to end up in the recipient’s spam folder. We’re going to use Thunderbird email for this, but the process is the same for any mobile or desktop email client.
Click Add Account in your email client, and you will be prompted to Set Up Your Existing Email Address. Fill up your name, email address, and password. Your email address is your Pi username plus the domain name, for example, firstname.lastname@example.org. Your password will be the same as the password used by your user to get into the Pi.
Rather of hitting the Continue button, click the Configure manually option. You must provide information for both the receiving and outgoing servers. The hostname or server name for them is mail.your-domain-name.tld, the login name is your whole email address, and the password is… your password. Set IMAP port 993 to 993 and SMTP port 587 to 587. Set the connection security to STARTTLS and the authentication method to regular password.
You Can Now Send and Receive Email Through Your Raspberry Pi Email Server!
Running your own email service eliminates the need to depend on others. You are entirely self-sufficient and beyond the reach of tech behemoths. Nonetheless, if you use your email server for malicious reasons, such as mass emails or spam, you will be banned by other providers. So be cautious.
You are looking for information, articles, knowledge about the topic Make Your Own Raspberry Pi Email Server on internet, you do not find the information you need! Here are the best content compiled and compiled by the achindutemple.org team, along with other related topics such as: Email.