Sådan opsættes en komplet mailserver (Postfix) ved hjælp af Roundcube (Webmail) på Ubuntu/Debian


Oprettelse af en mailserver på Linux-drevne maskiner kan være en af de mest vigtige ting, som hver systemadministrator skal gøre, mens han konfigurerer serverne for første gang, hvis du ikke ved hvad det betyder; det er simpelt, hvis du har et websted som “ eksempel.dk ”, kan du oprette en e-mail-konto som " [e-mailbeskyttet] " for at bruge den til at sende/modtage e-mails let i stedet for at bruge tjenester som Hotmail, Gmail, Yahoo Mail osv.

I denne artikel lærer vi, hvordan man gør det ved at installere Postfix-mailserveren med " Roundcube " webmail-applikationen og dens afhængigheder af Debian 10/9 og Ubuntu 20.04/18.04/16.04 LTS-udgivelser.

På denne side

  • Indstil et værtsnavn, og opret DNS-poster til maildomæne
  • Installation af Apache, MariaDB og PHP på Ubuntu
  • Installation af Postfix Mail Server på Ubuntu
  • Test af Postfix Mail Server på Ubuntu
  • Installation af Dovecot IMAP og POP i Ubuntu
  • Installation af Roundcube Webmail i Ubuntu
  • Opret en Apache Virtual Host til Roundcube Webmail
  • Oprettelse af mailbrugere til at få adgang til mails via Roundcube

1. Indstil først et gyldigt FQDN (fuldt kvalificeret domænenavn) værtsnavn til din Ubuntu-server ved hjælp af kommandoen hostnamectl som vist.

$ sudo hostnamectl set-hostname mail.linux-console.net

2. Dernæst skal du tilføje en MX og A poster til dit domæne i dit DNS-kontrolpanel, der guider andre MTA'er, som din mailserver mail.ditdomæne. com domæne er ansvarlig for levering af e-mail.

MX record    @           mail.linux-console.net
mail.linux-console.net        <IP-address>

3. For at oprette en kørende mailserver ved hjælp af " Roundcube " skal vi først installere Apache2 , MariaDB og PHP pakker , for at gøre det, løb.

$ 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

På Debian 10/9 skal du downloade og installere SURY PHP PPA-arkivet for at installere PHP 7.4 på Debian 10/9 som vist.

$ 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

4. Postfix er en mailoverførselsagent ( MTA ), som er den ansvarlige software til levering og modtagelse af e-mails, det er vigtigt for at oprette en komplet mailserver.

For at installere det på Ubuntu/Debian eller endda Mint skal du køre:

$ sudo apt-get install postfix

Under installationen bliver du bedt om at vælge typen af mailkonfiguration, vælge " Internetside ".

5. Indtast nu det fuldt kvalificerede domænenavn, som du vil bruge til at sende og modtage e-mails.

6. Når Postfix er installeret, starter den automatisk og opretter en ny /etc/postfix/main.cf-fil. Du kan kontrollere Postfix-versionen og status for tjenesten ved hjælp af følgende kommandoer.

$ postconf mail_version
$ sudo systemctl status postfix

7. Prøv nu at kontrollere, at din mailserver opretter forbindelse på port 25 ved hjælp af følgende kommando.

$ 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

Ovenstående meddelelse indikerer, at forbindelsen er oprettet. Skriv afslut for at lukke forbindelsen.

8. Du kan også bruge et mail-program til at sende og læse e-mails ved hjælp af følgende kommando.

$ mail [email 

Cc: 
Subject: Testing My Postfix Mail Server
I'm sending this email using the postfix mail server from Ubuntu machine

9. Dovecot er en mailleveringsagent ( MDA ), den leverer e-mails fra/til mailserveren, for at installere den, kør følgende kommando.

$ sudo apt-get install dovecot-imapd dovecot-pop3d

10. Genstart derefter Dovecot-tjenesten ved hjælp af følgende kommando.

$ sudo systemctl restart dovecot
OR
$ sudo service dovecot restart

11. Roundcube er den webmail-server, du bruger til at administrere e-mails på din server, den har en simpel webgrænseflade til at udføre jobbet, den kan tilpasses ved at installere flere moduler og temaer.

$ 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. Dernæst skal du oprette en ny database og bruger til Roundcube og give al tilladelse til en ny bruger til at skrive til databasen.

$ sudo mysql -u root
MariaDB [(none)]> CREATE DATABASE roundcube DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
MariaDB [(none)]> CREATE USER [email  IDENTIFIED BY 'password';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON roundcube.* TO [email ;
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> quit;

13. Derefter importerer du de indledende tabeller til Roundcube-databasen.

$ sudo mysql roundcube < /var/www/html/roundcubemail/SQL/mysql.initial.sql

14. Opret en apache virtuel vært til Roundcube webmail.

$ sudo nano /etc/apache2/sites-available/roundcube.conf

Tilføj følgende konfiguration i den.

<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. Derefter skal du aktivere denne virtuelle vært og genindlæse apache for ændringerne.

$ sudo a2ensite roundcube.conf
$ sudo systemctl reload apache2

16. Du kan nu få adgang til webmailen ved at gå til http://yourdomain.com/roundcubemail/installer/ .

16. Gå derefter til databaseindstillingerne og tilføj databaseoplysningerne.

17. Når du har foretaget alle ændringerne, skal du oprette en config.inc.php -fil.

18. Efter afslutning af installationen og de afsluttende tests skal du slette mappen installer og sørge for, at enable_installer -indstillingen i config.inc.php er deaktiveret .

$ sudo rm /var/www/html/roundcubemail/installer/ -r

19. Gå nu til login-siden, og indtast brugerens brugernavn og adgangskode.

http://yourdomain.com/roundcubemail/

20. For at begynde at bruge Roundcube-webmailen skal du oprette en ny bruger, for at gøre det skal du køre.

$ sudo useradd myusername

Udskift “ mit brugernavn ” med det ønskede brugernavn, opret en adgangskode til den nye bruger ved at køre.

$ sudo passwd myusername

21. Gå nu tilbage til login-siden, og indtast brugernavnet og adgangskoden til den nyoprettede bruger.

Har du prøvet at oprette en e-mailserver før? Hvordan gik det? Har du brugt Roundcube eller en anden mailserver før? Hvad synes du om det?