Zoeken op website

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?