Hoe u een complete mailserver (Postfix) instelt met behulp van 'Roundcube' (webmail) op Ubuntu/Debian
Het creëren van een mailserver op door Linux aangedreven machines kan een van de meest essentiële dingen zijn die elke systeembeheerder moet doen wanneer hij de servers voor de eerste keer configureert, als je niet weet wat dit betekent; Het is heel eenvoudig: als u een website heeft zoals “example.com”, kunt u een e-mailaccount maken zoals “[email ” om deze te gebruiken voor het verzenden/ontvangen van e-mails gemakkelijk in plaats van het gebruik van diensten als Hotmail, Gmail, Yahoo Mail, enz.
In dit artikel leren we hoe u dit kunt doen door de Postfix mailserver te installeren met de webmailtoepassing “Roundcube” en de afhankelijkheden ervan op Debian 10/9 en Ubuntu 20.04/18.04/16.04 LTS-releases.
Op deze pagina
- Stel een hostnaam in en maak DNS-records voor het e-maildomein
- Apache, MariaDB en PHP installeren op Ubuntu
- Postfix Mail Server installeren op Ubuntu
- Postfix Mail Server testen op Ubuntu
- Dovecot IMAP en POP installeren in Ubuntu
- Roundcube-webmail installeren in Ubuntu
- Maak een Apache virtuele host voor Roundcube-webmail
- E-mailgebruikers aanmaken voor toegang tot e-mails via Roundcube
Stap 1: Stel een hostnaam in en maak DNS-records voor het domein
1. Stel eerst een geldige FQDN (Fully Qualified Domain Name) hostnaam in voor uw Ubuntu-server met behulp van de hostnamectl-opdracht, zoals weergegeven.
sudo hostnamectl set-hostname mail.linux-console.net
2. Vervolgens moet u een MX
- en A
-records voor uw domein toevoegen in uw DNS-controlepaneel dat andere MTA's begeleidt die uw mailserver gebruikt. Het domein mail.uwdomein.com
is verantwoordelijk voor de bezorging van e-mail.
MX record @ mail.linux-console.net
mail.linux-console.net <IP-address>
Stap 2: Apache, MariaDB en PHP installeren op Ubuntu
3. Om een actieve mailserver te maken met behulp van “Roundcube”, moeten we Apache2, MariaDB installeren en PHP pakketten, voer dit eerst uit.
sudo apt-get update -y
sudo apt-get upgrade -y
sudo apt install apache2 apache2-utils mariadb-server mariadb-client php7.4 libapache2-mod-php7.4 php7.4-mysql php-net-ldap2 php-net-ldap3 php-imagick php7.4-common php7.4-gd php7.4-imap php7.4-json php7.4-curl php7.4-zip php7.4-xml php7.4-mbstring php7.4-bz2 php7.4-intl php7.4-gmp php-net-smtp php-mail-mime php-net-idna2 mailutils
Op Debian 10/9 moet u de SURY PHP PPA repository downloaden en installeren om PHP 7.4 op Debian 10/9 te installeren zoals weergegeven.
sudo apt -y install lsb-release apt-transport-https ca-certificates
sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php.list
sudo apt update
sudo apt install apache2 apache2-utils mariadb-server mariadb-client php7.4 libapache2-mod-php7.4 php7.4-mysql php-net-ldap2 php-net-ldap3 php-imagick php7.4-common php7.4-gd php7.4-imap php7.4-json php7.4-curl php7.4-zip php7.4-xml php7.4-mbstring php7.4-bz2 php7.4-intl php7.4-gmp php-net-smtp php-mail-mime php-net-idna2 mailutils
Stap 3: Postfix Mail Server installeren op Ubuntu
4. Postfix is een mail transfer agent (MTA), de verantwoordelijke software voor het bezorgen en ontvangen van e-mails. Het is essentieel om een volledige mailserver.
Om het op Ubuntu/Debian of zelfs Mint te installeren, voer je het volgende uit:
sudo apt-get install postfix
Tijdens de installatie wordt u gevraagd het type e-mailconfiguratie te kiezen, kies “Internetsite”.
5. Voer nu de volledig gekwalificeerde domeinnaam in die u wilt gebruiken voor het verzenden en ontvangen van e-mails.
6. Zodra Postfix is geïnstalleerd, wordt het automatisch gestart en wordt er een nieuw /etc/postfix/main.cf bestand gemaakt. U kunt de Postfix-versie en status van de service verifiëren met behulp van de volgende opdrachten.
postconf mail_version
sudo systemctl status postfix
Stap 4: Postfix Mail Server testen op Ubuntu
7. Probeer nu te controleren of uw mailserver verbinding maakt op poort 25 met behulp van de volgende opdracht.
telnet gmail-smtp-in.l.google.com 25
Trying 74.125.200.27...
Connected to gmail-smtp-in.l.google.com.
Escape character is '^]'.
220 mx.google.com ESMTP k12si849250plk.430 - gsmtp
Het bovenstaande bericht geeft aan dat de verbinding succesvol tot stand is gebracht. Typ quit om de verbinding te verbreken.
8. U kunt ook een mail-programma gebruiken om e-mails te verzenden en te lezen met behulp van de volgende opdracht.
mail [email
Cc:
Subject: Testing My Postfix Mail Server
I'm sending this email using the postfix mail server from Ubuntu machine
Stap 5: Dovecot IMAP en POP installeren in Ubuntu
9. Dovecot is een mail delivery agent (MDA), deze levert de e-mails van/naar de mailserver, om deze te installeren, voert u de volgende opdracht.
sudo apt-get install dovecot-imapd dovecot-pop3d
10. Start vervolgens de Dovecot-service opnieuw met behulp van de volgende opdracht.
sudo systemctl restart dovecot
OR
sudo service dovecot restart
Stap 6: Roundcube-webmail installeren in Ubuntu
11. Roundcube is de webmailserver die u gaat gebruiken om e-mails op uw server te beheren. Het heeft een eenvoudige webinterface om het werk te doen, het kan worden aangepast door meer modules en thema's installeren.
wget https://github.com/roundcube/roundcubemail/releases/download/1.4.8/roundcubemail-1.4.8.tar.gz
tar -xvf roundcubemail-1.4.8.tar.gz
sudo mv roundcubemail-1.4.8 /var/www/html/roundcubemail
sudo chown -R www-data:www-data /var/www/html/roundcubemail/
sudo chmod 755 -R /var/www/html/roundcubemail/
12. Vervolgens moet u een nieuwe database en gebruiker maken voor Roundcube en alle toestemming verlenen aan een nieuwe gebruiker om naar de database te schrijven.
sudo mysql -u root
MariaDB [(none)]> CREATE DATABASE roundcube DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
MariaDB [(none)]> CREATE USER roundcubeuser@localhost IDENTIFIED BY 'password';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON roundcube.* TO roundcubeuser@localhost;
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> quit;
13. Importeer vervolgens de initiële tabellen in de Roundcube-database.
sudo mysql roundcube < /var/www/html/roundcubemail/SQL/mysql.initial.sql
Stap 7: Maak een virtuele Apache-host voor Roundcube-webmail
14. Maak een virtuele Apache-host voor Roundcube webmail.
sudo nano /etc/apache2/sites-available/roundcube.conf
Voeg daarin de volgende configuratie toe.
<VirtualHost *:80>
ServerName linux-console.net
DocumentRoot /var/www/html/roundcubemail/
ErrorLog ${APACHE_LOG_DIR}/roundcube_error.log
CustomLog ${APACHE_LOG_DIR}/roundcube_access.log combined
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /var/www/html/roundcubemail/>
Options FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
</VirtualHost>
15. Schakel vervolgens deze virtuele host in en laad de apache opnieuw voor de wijzigingen.
sudo a2ensite roundcube.conf
sudo systemctl reload apache2
16. U kunt nu toegang krijgen tot de webmail door naar http://uwdomein.com/roundcubemail/installer/
te gaan.
16. Ga vervolgens naar de Database-instellingen en voeg de databasedetails toe.
17. Nadat u alle wijzigingen heeft aangebracht, maakt u een config.inc.php
bestand aan.
18. Nadat u de installatie en de laatste tests hebt voltooid, verwijdert u de map installer
en zorgt u ervoor dat de optie enable_installer
in config.inc staat. php
is uitgeschakeld.
sudo rm /var/www/html/roundcubemail/installer/ -r
19. Ga nu naar de inlogpagina en voer de gebruikersnaam en het wachtwoord van de gebruiker in.
http://yourdomain.com/roundcubemail/
Stap 8: E-mailgebruikers aanmaken
20. Om de Roundcube-webmail te kunnen gebruiken, moet u een nieuwe gebruiker aanmaken en dit uitvoeren.
sudo useradd myusername
Vervang “mijngebruikersnaam ” door de gewenste gebruikersnaam en maak een wachtwoord voor de nieuwe gebruiker door te starten.
sudo passwd myusername
21. Ga nu terug naar de inlogpagina en voer de gebruikersnaam en het wachtwoord van de nieuw aangemaakte gebruiker in.
Heb je al geprobeerd een e-mailserver te maken? Hoe ging het? Heeft u eerder Roundcube of een andere mailserver gebruikt? Wat denk jij ervan?