How to troubleshoot mail flow issues in Exchange Server?

What triggers mail flow issues?

The first thing to do is find out the reasons for such an issue. You can check what has changed in the current server setup. The best idea is to always keep a log of who had and what was changed. This way, if there would be a configuration issue, it’s easy to trace back and roll back any changes to identify the issue. Mail flow issue can be triggered after migration to a newer Exchange Server or due to a problem during an update of Exchange Server after installing a Cumulative Update (CU).

[mai mult...]

Instalare automată ISPConfig 3 a serverului perfect pe Debian 10 la Debian 12 Ubuntu 20.04 și Ubuntu 22.04

Cerințe preliminare
  • Sistem de operare: Debian 10 la Debian 12, Ubuntu 20.04 sau Ubuntu 22.04.
  • Arhitectura procesorului Intel sau AMD pe 64 de biți (x86_64, cunoscut și ca AMD64). Procesoarele ARM nu sunt acceptate momentan.
  • Sistemul trebuie să aibă acces la internet pentru a descărca și instala software cu apt.
  • Începeți de la o instalare a sistemului de operare de bază curată și goală.
1. Conectați-vă la server

Conectați-vă ca root sau rulați

su –  Debian pentru a deveni utilizatorul root pe serverul dvs. înainte de a continua.

IMPORTANT : Trebuie să utilizați „su -” și nu doar „su”, altfel, variabila PATH este setată greșit de Debian.

Pe Ubuntu, utilizați comanda:

sudo -s

pentru a deveni utilizator root.

2. Configurați numele și gazdele

Numele de gazdă al serverului dvs. ar trebui să fie un subdomeniu precum „server1.example.com”. Nu utilizați un nume de domeniu fără o parte de subdomeniu precum „example.com” ca nume de gazdă, deoarece acest lucru va cauza probleme mai târziu cu configurarea dvs. În primul rând, ar trebui să verificați numele de gazdă în /etc/hosts  și să îl schimbați atunci când este necesar. Rândul ar trebui să fie: „Adresă IP – spațiu – nume de gazdă complet, inclusiv domeniul – spațiu – partea subdomeniului”. Pentru numele nostru de gazdă server1.example.com, fișierul va arăta astfel (unele rânduri pot fi diferite, pot diferi în funcție de furnizorul de găzduire):

nano /etc/hosts
127.0.0.1 localhost.localdomain localhost 
# Această linie trebuie schimbată cu numele serverului corect: 
127.0.1.1 server1.example.com server1 

# Următoarele linii sunt de dorit pentru gazde cu IPv6 
::1 localhost ip6-localhost ip6-loopback 
ff02:: 1 ip6-allnodes 
ff02::2 ip6-allrouters

Apoi editați fișierul /etc/hostname:

nano /etc/hostname

Acesta va conține doar partea subdomeniului, în cazul nostru:

server1

În cele din urmă, reporniți serverul pentru a aplica modificarea:

restart systemctl

Conectați-vă din nou și verificați dacă numele de gazdă este corect acum cu aceste comenzi:

host 
hostname -f

Ieșirea va fi astfel:

root@server1:~$ hostname
server1 
root@server1:~$ hostname -f 
server1.example.com

De asemenea, va trebui să configurați o înregistrare DNS cu furnizorul dvs. de DNS care indică serverul dvs. Ar trebui să existe o înregistrare A (și/sau AAAA) pentru subdomeniul care indică IP-ul dvs. public.

3. Actualizați sistemul

Pentru a actualiza pachetele de sistem, executați comanda:

apt update && apt upgrade
4. Rulați instalarea automată

Acum putem rula instalarea automată. Configurația de bază conține următoarele pachete software (plus dependențele acestora, desigur): Apache2, PHP (versiunile 5.6 – 8.0), MariaDB, Postfix, Dovecot, Rspamd, BIND, Jailkit, Roundcube, PHPMyAdmin, Mailman, Webalizer, AWStats și GoAccess. Puteți alege cu ușurință să nu utilizați anumite funcții sau să instalați servicii suplimentare, pasând argumente către instalator. 

Instalați ISPConfig cu serverul web Apache

Acum puteți rula scriptul cu argumente. De exemplu, dacă doriți o instalare normală cu serverul web Apache și un interval de porturi pentru FTP pasiv + upgrade-uri nesupravegheate, rulați:

wget -O - https://get.ispconfig.org | sh -s -- --use-ftp-ports=40110-40210 --unattended-upgrades

Instalați ISPConfig cu serverul web Nginx

Acum puteți rula scriptul cu argumente. De exemplu, dacă doriți o instalare normală cu serverul web Nginx și un interval de porturi pentru FTP pasiv + upgrade-uri nesupravegheate, rulați:

wget -O - https://get.ispconfig.org | sh -s -- --use-nginx --use-ftp-ports=40110-40210 --unattended-upgrades

Rularea programului de instalare automată

După ceva timp, veți vedea:

  • AVERTIZARE! Acest script vă va reconfigura serverul complet! Ar trebui să fie rulat pe un server proaspăt instalat și, cel mai probabil, toată configurația curentă pe care ați făcut-o se va pierde! Tastați „da” dacă doriți cu adevărat să continuați:
  • Răspundeți „da” și apăsați enter. Programul de instalare va porni acum.

Când programul de instalare este terminat, acesta vă va afișa administratorul ISPConfig și parola root MySQL astfel:

[INFO] Parola dvs. de administrator ISPConfig este: 5GvfSSSYsdfdYC 
[INFO] Parola dvs. de root MySQL este: kkAkft82d!kafMwqxdtYs

Asigurați-vă că notați aceste informații, deoarece veți avea nevoie de ele mai târziu.

5. Configurarea firewall-ului

Ultimul lucru de făcut este să ne configurați firewall-ul. Conectați-vă la ISPConfig UI și accesați System -> Firewall. Apoi faceți clic pe „Adăugați o nouă înregistrare firewall”.

Pentru o configurare normală, ar arăta astfel:

TCP:

20,21,22,25,80,443,40110:40210,110,143,465,587,993,995,53,8080,8081

UDP:

53

Porturile necesare pentru fiecare serviciu sunt:

Web: 20, 21, 22, 80, 443 și 40110:40210 (Toate TCP, fără UDP)

Mail: 25, 110, 143, 465, 587, 993 și 995 (Toate TCP, fără UDP)

DNS: 53 (TCP și UDP)

Panou: 8080 și 8081 (Toate TCP, fără UDP)

 

Serverul dvs. este acum configurat și gata de utilizare. Vă puteți conecta la https://server1.example.com:8080

6. Opțiuni avansate

Instalarea automată are diverse opțiuni de linie de comandă pentru a regla fin configurația. Puteți vizualiza toate argumentele cu:

wget -O - https://get.ispconfig.org | sh -s -- --help

De exemplu, puteți alege între serverul web Apache și Nginx și ce servicii vor fi instalate pe sistem. Argumentele liniei de comandă sunt:

Utilizare: ispc3-ai.sh [] [...] 

Acest script instalează automat toate pachetele necesare pentru o configurare ISPConfig 3 utilizând instrucțiunile din instrucțiunile „Configurare perfectă a serverului” de pe www.howtoforge.com. 

Argumentele posibile sunt: 
    ​​--help Afișează această pagină de ajutor. 
    --debug Activează înregistrarea în jurnal (înregistrează fiecare comandă cu codul de ieșire). 
    --channel Alegeți canalul de utilizat pentru ISPConfig: --channel=<stable|dev> 
                    „stable” este cea mai recentă versiune ISPConfig disponibilă pe www.ispconfig.org 
                    „dev” este cea mai recentă ramură dev din depozitul git ISPConfig: https://git.ispconfig.org/ispconfig/ispconfig3/tree/develop 
                    Canalul de dezvoltare poate conține bug-uri și caracteristici mai puțin testate și ar trebui să fie folosit numai în producție de utilizatori foarte experimentați. 
    --lang Utilizați limba pentru instalarea ISPConfig. Specificați cu --lang=en|de (suportate în prezent doar en (engleză) și de (germană). 
    --interactive Nu instalați ISPConfig în modul non-interactiv. 
                    Acest lucru este necesar dacă doriți să utilizați modul expert, de exemplu pentru a instala un server slave care va fi integrat într-o configurare multiserver existentă. 
    --use-nginx Folosiți serverul web nginx în loc de apache2. 
    --use-amavis Utilizați amavis în loc de rspamd pentru filtrarea e-mailurilor. 
    --use-unbound Folosiți unbound în loc de bind9 pentru rezolvarea locală. Permis numai dacă este setat --no-dns. 
    --use-php Utilizați versiuni PHP specifice, separate prin virgulă, în loc să instalați mai multe PHP, de exemplu --use-php=7.4,8.0 (5.6, 7.0, 7.1, 7.2, 7.3, 7.4, 8.0, 8.1, 8.2 și 8.3 disponibile ). 
                    --use-php=system dezactivează depozitul sury și instalează doar versiunea PHP implicită a sistemului. 
                    --use-php în timp ce omite argumentul, folosește toate versiunile. 
    --use-ftp-ports Această opțiune setează intervalul de porturi pasive pentru pure-ftpd. Trebuie să specificați intervalul de porturi separat prin cratime, de exemplu --use-ftp-ports=40110-40210. 
                    Dacă nu este furnizat, intervalul de porturi pasive nu va fi configurat. 
    --use-certbot Utilizați Certbot în loc de acme.sh pentru emiterea certificatelor Let's Encrypt. Nu este recomandat decât dacă migrați de pe un server vechi care folosește Certbot. 
    --no-web Nu utilizați ISPConfig pe acest server pentru a gestiona setările serverului web și nu instalați nginx/apache sau pureftpd. 
                    Acest lucru va împiedica, de asemenea, instalarea unei interfețe de utilizare ISPConfig și implică --no-roundcube precum și --no-pma. 
    --no-mail Nu utilizați ISPConfig pe acest server pentru a gestiona setările serverului de e-mail.
                    Acest lucru va instala postfix pentru trimiterea e-mail-urilor de sistem, dar nu se va configura dovecot și nu va configura nicio setare pentru e-mail-ul ISPConfig. Implica --no-mailman.
    --no-dns Nu utilizați ISPConfig pe acest server pentru a gestiona intrările DNS. Bind va fi instalat numai pentru stocarea/rezolvarea DNS locală. 
    --no-local-dns Nu instalați cache/rezolvarea DNS locală prin bind. 
    --no-firewall Nu instalați ufw și spuneți ISPConfig să nu gestioneze setările firewall-ului pe acest server. 
    --no-roundcube Nu instalați roundcube webmail. 
    --roundcube Instalați Roundcube chiar și atunci când este folosit --no-mail. Este necesară configurarea manuală a configurației Roundcube. 
    --no-pma Nu instalați PHPMyAdmin pe acest server. 
    --no-mailman Nu instalați Managerul de liste de corespondență Mailman. 
    --no-quota Dezactivează cota sistemului de fișiere. 
    --no-ntp Dezactivează configurarea NTP. 
    --no-jailkit Nu instalați jailkit. 
    --no-ftp Nu instalați serverul pure-ftpd. 
    --monit Instalați Monit și configurați-l pentru a monitoriza serviciile instalate. Servicii acceptate: Apache2, NGINX, MariaDB, pure-ftpd-mysql, php-fpm, ssh, named, Postfix, Dovecot, rspamd. 
    --monit-alert-email 
                    Configurați alerte pentru ca Monit să fie trimis la adresa de e-mail dată. de ex. --monit-alert-email=me@example.com . 
    --ssh-port Configurați serverul SSH să asculte pe un port care nu este implicit. Numărul portului trebuie să fie între 1 și 65535 și nu poate fi utilizat de alte servicii. de exemplu --ssh-port=64. 
    --ssh-permit-root 
                    Configurați serverul SSH dacă permite sau nu autentificarea rădăcină: --ssh-permit-root=<yes|fără-parolă|nu>, de exemplu --ssh-permit-root=fără-parolă. 
    --ssh-password-authentication 
                    Configurați serverul SSH dacă permite sau nu autentificarea parolei: --ssh-password-authentication=<yes|no>, de exemplu -ssh-password-authentication=nu. 
    --ssh-harden Configurați serverul SSH pentru a avea o configurație de securitate mai puternică. 
    --unattended-upgrades 
                    Instalează UnattendedUpgrades. Puteți adăuga argumente suplimentare pentru curățarea automată și repornirea automată atunci când este necesar: --unattended-upgrades=autoclean,reboot (sau doar unul 
                    dintre ele). 
    --i-know-what-i-am-doing 
                    Împiedicați instalarea automată să solicite confirmare înainte de a continua reconfigurarea serverului.

De exemplu, pentru a instala un „Server perfect”, cum ar fi configurarea cu Nginx în loc de Apache, utilizați această comandă:

wget -O - https://get.ispconfig.org | sh -s -- --use-nginx --use-ftp-ports=40110-40210 --unattended-upgrades

Sau pentru a instala un server web Nginx fără servicii de e-mail și DNS:

wget -O - https://get.ispconfig.org | sh -s -- --use-nginx --no-dns --no-mail --use-ftp-ports=40110-40210 --unattended-upgrades

 [mai mult...]