Iedereen heeft een e-mailadres - ze zijn essentieel om te functioneren in de onderling verbonden wereld van het midden van de 21e eeuw. De meeste mensen hebben hun e-mailadres via hun werkgever of via een van de technische giganten zoals Google of Microsoft. Maar je kunt je eigen e-mailserver met je eigen domeinnaam draaien vanaf een eenvoudige computer zoals een Raspberry Pi.
Waarom een e-mailserver op uw Raspberry Pi uitvoeren?
E-mails zijn het moderne equivalent van een brief: het zijn privéberichten, maar door een gratis provider zoals Gmail te gebruiken, geeft u een roofzuchtige reclame en trackingbedrijfslicentie om door uw leven, uw afspraken, persoonlijke contacten, reisplannen en reserveringen. Google verkoopt deze inbraken als functies, maar voor sommigen is het een ongemakkelijk niveau van rondsnuffelen.
Door uw eigen e-mailserver te gebruiken, heeft u uw gegevens in eigen handen en op uw eigen hardware, zonder toezicht van schimmige bedrijfsentiteiten. En als je echt snel een e-mail moet kwijtraken, kun je altijd gewoon de microSD-kaart inslikken (doe dit eigenlijk niet).
Een Raspberry Pi is perfect voor dit project vanwege het lage stroomverbruik - een e-mailserver moet 24/7 worden ingeschakeld, dus alles wat krachtiger is, is verspild geld. E-mail als technologie bestaat al sinds de jaren 70 en zou op de computers van die tijd kunnen worden gebruikt. Alles wat krachtiger is dan een Raspberry Pi is overdreven.
Is het moeilijk om een Raspberry Pi-e-mailserver te maken?
Het helemaal opnieuw configureren van een e-mailserver kan ingewikkeld zijn: het omvat het installeren en configureren van meerdere componenten, waaronder Postfix, Dovecot, openDKIM, SpamAssassin en Sieve. Het zal een aanzienlijk deel van uw dag in beslag nemen, en het is een proces vol risico's en een waarin het gemakkelijk is om fouten te maken.
Gelukkig zijn er scripts die het gemakkelijk maken om een e-mailserver op je Raspberry Pi te installeren, wat betekent dat je je e-mailserver in minder dan een uur aan de gang kunt hebben!
Wat u nodig heeft voor uw e-mailserver
Om dit project te voltooien, hebt u nodig:
- Een Raspberry Pi (elk model is voldoende)
- Een Ethernet-kabel
- Een statisch IP-adres
- Een domeinnaam - als u er nog geen heeft, vindt u hier: enkele handige tips voor het kiezen van een domeinnaam
- Kennis van het lokale IP-adres van je Pi
- Een andere pc
Records instellen en poorten openen
Navigeer naar de Geavanceerde DNS sectie van uw registrar en verwijder alle reeds bestaande records. Klik Nieuw record toevoegen. Selecteer voor het type Een opname, voor de gastheer, set @en stel in het waardeveld uw openbare IP-adres in. Opslaan en klik vervolgens op Nieuw record toevoegen opnieuw.
Selecteer in deze record voor het type Een opname; voor de gastheer, set *; en stel in het waardeveld uw openbare IP-adres in. Voeg ten slotte een nieuwe. toe MX opnemen, met @ als de gastheer, mail.uw-domein.tld als de waarde en stel de prioriteit in op 10. Sla de nieuwe DNS-records op.
Open het beheerdersmenu van uw router. Dit wordt meestal gedaan door te typen 192.168.1.1 in een browser. Als dit niet voor u werkt, raadpleeg dan de handleiding van uw router. Zoek een sectie met de titel ofwel Port forwarding, Poorttoewijzing, of Havenbeheeren maak vervolgens vier nieuwe vermeldingen:
- De eerste is voor HTTP verzoeken. Stel zowel de lokale als de openbare poort in op: 80, en het lokale IP-adres naar het IP-adres van uw Pi.
- De tweede is voor HTTPS verzoeken. Stel zowel de lokale als de openbare poort in op: 443, en nogmaals, het lokale IP-adres naar het IP-adres van uw Pi.
- De derde is voor IMAP verzoeken. Stel zowel de lokale als de openbare poort in op: 993, en nogmaals, het lokale IP-adres naar het IP-adres van uw Pi.
- De vierde is voor SMTP verzoeken. Stel zowel de lokale als de openbare poort in op: 587, en nogmaals, het lokale IP-adres naar het IP-adres van uw Pi.
Bereid je Pi voor!
Na een op Debian gebaseerd besturingssysteem installeren op uw Raspberry Pi (Raspberry Pi OS zal het prima doen), sluit het aan op uw router met een Ethernet-kabel.
- Log in op de Raspberry Pi met Secure Shell (SSH) via een terminal als je Linux of macOS gebruikt, of met PuTTY als je Windows gebruikt.
ssh pi@uw.pi.lokaal.ip.adres
- Update en upgrade alle pakketten:
sudo apt update
sudo apt-upgrade - U gebruikt Apache als een reverse proxy voor uw e-mailsubdomein en Certbot om beveiligingscertificaten te verkrijgen. Installeer Apache met:
sudo apt installeren apache2
- Voeg de Certbot-repository toe en update en installeer Certbot:
sudo add-apt-repository ppa: certbot/certbot
sudo apt update
sudo apt-krijgen installeer python3-certbot-apache - Wijzig map:
CD /etc/apache2/sites-available/
- Gebruik nano om een nieuw configuratiebestand voor uw e-mailsubdomein te maken:
En plakken:sudonanomail.conf
Opslaan en nano afsluiten met Ctrl + O, dan Ctrl + X<VirtueleHost *:80>
Server naamuw.domein
</VirtualHost> - Wijzig de directory en kopieer het standaard Apache-configuratiebestand naar de naam van uw nieuwe domein en nog een kopie naar de naam van uw subdomein:
CD /etc/apache2/sites-available/
sudocp 000-standaard.confjouw-domein.conf
sudocp 000-standaard.confmail.conf - Bewerk uw-domein.conf met nano:
En onder de streep, voeg nog een regel toe:sudonanojouw-domein.conf
Server naamjouw-domein.tld
- Opslaan en nano afsluiten met Ctrl + O, dan Ctrl + X. En herhaal het proces voor mail.conf.
- Schakel beide conf-bestanden in met:
sudoa2ensitejouw-domein.conf
sudoa2ensitemail.conf - Herstart Apache:
sudo-service apache2 opnieuw opstarten
- Voer Certbot uit om beveiligingscertificaten en sleutels te verkrijgen voor zowel uw hoofddomein als uw e-mailsubdomein.
U wordt gevraagd om uw e-mailadres, ter bevestiging dat u akkoord gaat met de Servicevoorwaarden, of u zou bereid zijn om uw e-mailadres te delen met de EFF, en tot slot, welke namen zou u HTTPS willen activeren voor. druk op Opbrengst om alle domeinen te selecteren en wanneer u wordt gevraagd of u HTTP-verkeer wilt omleiden naar HTTPS, kiest u: 2 omleiden.sudo certbot
Installeer de e-mailserversoftware
Volg deze stappen om de e-mailsoftware te installeren.
- Ga naar je homedirectory en download de e-mailwiz installatiescript:
CD ~
curl -LO lukesmith.xyz/emailwiz.sh - Het is altijd een goede gewoonte om te weten wat een script doet voordat het op je Raspberry Pi wordt uitgevoerd, dus:
... om te controleren op eventuele nare dingen.kate-mailwiz.sh
- Maak het script uitvoerbaar en voer het script uit:
sudochmod +xe-mailwiz.sh
sudo ./emailwiz.sh - Het script zal Postfix, Dovecot, openDKIM en SpamAssasin downloaden en installeren, en u zult in verschillende stadia met de installatie moeten werken.
- De installatiewizard zal u vragen om een configuratietype voor de mailserver te kiezen. Gebruik de pijltoetsen op uw toetsenbord om te selecteren websiteen druk vervolgens op de Tab sleutel zodat Oké is gemarkeerd en druk op Binnenkomen.
- Vervolgens wordt u gevraagd uw Fully Qualified Domain Name op te geven. Voeg geen www of http toe aan de domeinnaam - voer gewoon de domeinnaam zelf in.
- Zodra de installatie is voltooid, krijgt u drie tekstrecords te zien die groen zijn gemarkeerd, samen met de host en waarden.
- Open opnieuw een browser, ga naar de geavanceerde DNS-pagina van uw registrar en maak drie nieuwe TXT-records aan en plak elke record in het overeenkomstige veld. Deze zorgen ervoor dat uw e-mail uit de spambox van anderen blijft.
- Elke gebruiker toegevoegd aan de mail groep krijgt een e-mailaccount met hun Pi-gebruikersnaam en wachtwoord. Voeg uw Pi-gebruiker toe aan de e-mailgroep:
Zo simpel is het!sudo usermod -G mail -m
Maak verbinding met uw e-mailserver met een client op mobiel of desktop
Uw e-mailserver is volledig functioneel en klaar voor gebruik. Het is beschermd tegen indringers en elk gebruikersaccount op je Pi kan het gebruiken. Het is tijd om er verbinding mee te maken met een e-mailclient, hoewel op dit moment alle verzonden e-mails waarschijnlijk in de spambox van de ontvanger terechtkomen. We gebruiken hiervoor Thunderbird-e-mail, hoewel de procedure vergelijkbaar zal zijn voor elke mobiele of desktop-e-mailclient.
Klik in uw e-mailclient op Account toevoegen, en je wordt uitgenodigd om Uw bestaande e-mailadres instellen. Voer uw naam, uw e-mailadres en uw wachtwoord in. Uw e-mailadres is uw gebruikersnaam op de Pi plus de domeinnaam; bijv. [email protected]. Uw wachtwoord is het wachtwoord dat uw gebruiker gebruikt om in te loggen op de Pi.
In plaats van op de te klikken Doorgaan knop, klik in plaats daarvan op de Handmatig configureren koppeling. U moet gegevens invullen voor zowel de inkomende als de uitgaande server. Hiervoor is de hostnaam of servernaam mail.uw-domeinnaam.tld, de inlognaam is uw volledige e-mailadres en het wachtwoord is... uw wachtwoord. Stel de IMAP-poort in op 993 en de SMTP-poort naar 587. Verbindingsbeveiliging moet zijn ingesteld op STARTTLS en de authenticatiemethode om normaal wachtwoord.
U kunt nu e-mail verzenden en ontvangen via uw Raspberry Pi-e-mailserver!
Het runnen van uw eigen e-mailservice betekent dat u niet op iemand anders hoeft te vertrouwen. Je bent volledig zelfvoorzienend en valt buiten het bereik van technische giganten. Toch, als u uw e-mailserver voor kwade doeleinden gebruikt, zoals bulk-e-mails of spam, zult u merken dat u door andere providers op de zwarte lijst wordt gezet. Dus wees voorzichtig.