V tomto tutoriálu vám ukážeme, jak nainstalovat a nakonfigurovat poštovní server s PostfixAdmin na CentOS 7. Pro ty z vás, kteří nevěděli, Postfixadmin je webový frontend k MySQL nebo Databáze MariaDB používaná Postfixem. S Postfixadminem můžeme z webového prohlížeče snadno spravovat naši službu Postfix, přidávat a odebírat poštovní uživatele a domény, poštovní aliasy, diskové kvóty atd.
Tento článek předpokládá, že máte alespoň základní znalosti Linuxu, víte, jak používat shell, a co je nejdůležitější, hostujete svůj web na vlastním VPS. Instalace je poměrně jednoduchá a předpokládá, že běží v účtu root, pokud ne, možná budete muset přidat 'sudo
‘ k příkazům pro získání oprávnění root. Ukážu vám krok za krokem instalaci poštovního serveru s PostfixAdmin na server CentOS 7.
Předpoklady
- Server s jedním z následujících operačních systémů:CentOS 7.
- Abyste předešli případným problémům, doporučujeme použít novou instalaci operačního systému.
- Přístup SSH k serveru (nebo stačí otevřít Terminál, pokud jste na počítači).
non-root sudo user
nebo přístup kroot user
. Doporučujeme jednat jakonon-root sudo user
, protože však můžete poškodit svůj systém, pokud nebudete při jednání jako root opatrní.
Nainstalujte poštovní server pomocí PostfixAdmin na CentOS 7
Krok 1. Nejprve se ujistěte, že je váš systém aktuální.
yum clean allyum -y update
Krok 2. Nainstalujte server LAMP.
Je vyžadován zásobníkový server CentOS 7 LAMP. Pokud nemáte nainstalovanou LAMP, můžete postupovat podle našeho průvodce zde. Nainstalujte také požadované moduly PHP:
yum install php70w-cli php70w-gd php70w-xml php70w-curl php70w-mysql php70w-zip php70w-mbstring php70w-mcrypt
Krok 3. Konfigurace MariaDB pro PostfixAdmin.
Ve výchozím nastavení není MariaDB zesílena. MariaDB můžete zabezpečit pomocí mysql_secure_installation
skript. Měli byste si pozorně přečíst a níže každý krok, který nastaví heslo root, odstraní anonymní uživatele, zakáže vzdálené přihlášení root a odstraní testovací databázi a přístup k zabezpečené MariaDB:
mysql_secure_installation
Nakonfigurujte to takto:
- Nastavit heslo root? [A/n] y- Odebrat anonymní uživatele? [A/n] y- Zakázat vzdálené přihlášení root? [A/n] y- Odebrat testovací databázi a získat k ní přístup? [A/n] y- Znovu načíst tabulky oprávnění? [A/n] y
Dále se budeme muset přihlásit do konzole MariaDB a vytvořit databázi pro PostfixAdmin. Spusťte následující příkaz:
mysql -u root -p
Toto vás vyzve k zadání hesla, takže zadejte své root heslo MariaDB a stiskněte Enter. Jakmile se přihlásíte ke svému databázovému serveru, musíte vytvořit databázi pro Instalace PostfixAdmin:
CMariaDB [(none)]> VYTVOŘIT DATABÁZI postfixadmin;MariaDB [(none)]> UDĚLEJTE VŠECHNA OPRÁVNĚNÍ NA postfixadmin.* 'postfixadmin'@'localhost' IDENTIFIKOVANÉ PODLE 'silného_hesla';MariaDB [(none)]> FLUSH PRIVILEGIS;MariaDB [(žádné)]> \q
Krok 4. Instalace PostfixAdmin.
První věc, kterou musíte udělat, je přejít na stránku stahování PostfixAdmin a stáhnout si nejnovější stabilní verzi PostfixAdmin:
cd /var/www/htmlwget https://github.com/postfixadmin/postfixadmin/archive/refs/tags/postfixadmin-3.3.11.tar.gztar -xzf postfixadmin-3.3.11.tar.gzOtevřete hlavní konfigurační soubor:
nano /var/www/html/postfixadmin-3.3.11/config.inc.phpUpravte následující hodnoty:
$CONF['configured'] =true;$CONF['database_type'] ='mysqli';$CONF['database_host'] ='localhost';$CONF['database_user'] ='postfixadmin';$ CONF['database_password'] ='silné_heslo';$CONF['database_name'] ='postfixadmin';$CONF['domain_path'] ='NE';$CONF['domain_in_mailbox'] ='ANO';Nyní musíte přiřadit vlastnictví souborů a složek uživateli a skupině Apache. Chcete-li tak učinit, příkaz je:
chown -R apache:/var/www/html/postfixadmin-3.3.11Pro naplnění databáze přejděte na https://Your_IP_Address/postfixadmin-3.0.2/setup.php a měli byste vidět něco jako níže:
Testování připojení k databázi - OK - mysqli://postfixadmin:xxxxx@localhost/postfixadminVše se zdá být v pořádku... pokus o vytvoření/aktualizaci struktury databázeVytvořit nového administrátora:
bash /var/www/html/postfixadmin-3.3.11/scripts/postfixadmin-cli admin add admin@your_domain_idroot.us --password strong_password22 --password2 strong_password22 --superadmin 1 --active 1Krok 5. Instalace a konfigurace Postfixu.
Nainstalujte postfix pomocí následujícího příkazu:
yum -y nainstalovat postfixPo dokončení instalace musíme vytvořit konfigurační soubory:
mkdir -p /etc/postfix/sql/nano /etc/postfix/sql/mysql_virtual_alias_domain_catchall_maps.cfUpravte následující hodnoty:
user =postfixadminpassword =strong_passwordhosts =localhostdbname =postfixadminquery =SELECT goto FROM alias,alias_domain WHERE alias_domain.alias_domain ='%d' a alias.address =CONCAT('@', alias_domain.targetlia_domain) AND targetlia_domain alias_domain.active='1'nano /etc/postfix/sql/mysql_virtual_alias_domain_mailbox_maps.cfUpravte následující hodnoty:
user =postfixadminpassword =strong_passwordhosts =localhostdbname =postfixadminquery =SELECT maildir FROM mailbox,alias_domain WHERE alias_domain.alias_domain ='%d' a mailbox.username =CONCAT('%u', '@', alias_domain) mailbox. .active =1 AND alias_domain.active='1'nano /etc/postfix/sql/mysql_virtual_alias_domain_maps.cfUpravte následující hodnoty:
user =postfixadminpassword =strong_passwordhosts =localhostdbname =postfixadminquery =SELECT goto FROM alias,alias_domain WHERE alias_domain.alias_domain ='%d' a alias.address =CONCAT('%u', '@', alias_domain) alias_domain. .active =1 AND alias_domain.active='1'nano /etc/postfix/sql/mysql_virtual_alias_maps.cfUpravte následující hodnoty:
user =postfixadminpassword =strong_passwordhosts =localhostdbname =postfixadminquery =SELECT goto FROM alias WHERE address='%s' AND active ='1'#expansion_limit =100nano /etc/postfix/sql/mysql_virtual_domains_maps.cfUpravte následující hodnoty:
user =postfixadminpassword =strong_passwordhosts =localhostdbname =postfixadminquery =VYBERTE doménu Z domény WHERE domain='%s' AND active ='1'#query =VYBERTE doménu Z domény WHERE doména='%s'#volitelný dotaz, který chcete použít, když předávání pro zálohování MX#query =VYBERTE doménu Z domény WHERE domain='%s' AND backupmx ='0' AND active ='1'#expansion_limit =100nano /etc/postfix/sql/mysql_virtual_mailbox_limit_maps.cfUpravte následující hodnoty:
user =postfixadminpassword =strong_passwordhosts =localhostdbname =postfixadminquery =SELECT kvóta FROM mailbox WHERE username='%s' AND active ='1'nano /etc/postfix/sql/mysql_virtual_mailbox_maps.cfUpravte následující hodnoty:
user =postfixadminpassword =strong_passwordhosts =localhostdbname =postfixadminquery =SELECT maildir FROM mailbox WHERE username='%s' AND active ='1'#expansion_limit =100Dále upravte soubor main.cf:
postconf -e "myhostname =$(hostname -f)" postconf -e "virtual_mailbox_domains =proxy:mysql:/etc/postfix/sql/mysql_virtual_domains_maps.cf"postconf -e "virtual_alias_maps:proxy/etc/mysq postfix/sql/mysql_virtual_alias_maps.cf, proxy:mysql:/etc/postfix/sql/mysql_virtual_alias_domain_maps.cf, proxy:mysql:/etc/postfix/sql/mysql_virtual_catchall_boxl -mysql_virtual_catchall_smapal_domain. /postfix/sql/mysql_virtual_mailbox_maps.cf, proxy:mysql:/etc/postfix/sql/mysql_virtual_alias_domain_mailbox_maps.cf"postconf -e "smtpd_tls_cert_file =/etc/postkeyptslski/rtstc/postkeyptstls" etc/pki/tls/private/localhost.key"postconf -e "smtpd_use_tls =yes"postconf -e "smtpd_tls_auth_only =yes"postconf -e "smtpd_sasl_type =dovecot"postconf -e "smtpd_use_tls" =smtpd_sasl_auth_enable =yes"postconf -e "smtpd_recipient_restrictions =permit_sasl_authenticated, permit_mynetworks, cancel_unauth_destination"postcon f -e "mydestination =localhost"postconf -e "mynetworks =127.0.0.0/8"postconf -e "inet_protocols =ipv4"postconf -e "inet_interfaces =all"postconf -e "virtual_transport =lmtp:unix:private/dovec lmtp"Otevřete soubor
master.cf
soubor, najděte oddíly předložení inet n a smtps inet n a upravte následovně:nano /etc/postfix/master.cfUpravte následující hodnoty:
podání inet n - n - - smtpd -o syslog_name =postfix / odevzdání -o smtpd_tls_security_level =šifrování -o smtpd_sasl_auth_enable =yes # -o smtpd_reject_unlisted_recipient =no # -o smtpd_client_restrictions =$ mua_client_restrictions # -o smtpd_helo_restrictions =$ mua_helo_restrictions # - o smtpd_sender_restrictions =$ mua_sender_restrictions # -o smtpd_recipient_restrictions =-o smtpd_relay_restrictions =permit_sasl_authenticated zamítnout -o milter_macro_daemon_name =ORIGINATINGsmtps inet n - n - - smtpd -o syslog_name =postfix / SMTPS # -o smtpd_tls_wrappermode =yes -o smtpd_sasl_auth_enable =yes # -o smtpd_reject_unlisted_recipient =no # -o smtpd_client_restrictions =$ mua_client_restrictions # -o smtpd_helo_restrictions =$ mua_helo_restrictions # -o smtpd_sender_restrictions =$ mua_sender_restrictions # -o smtpd_recipient_restrictions =-o smtpd_relay_restrictions =permit_sasl_authenticated zamítnout -o milter_macro_daemon_name =PŮVOD JÍDÁNÍNakonec povolte službu postfix:
systemctl povolit postfixsystemctl restartovat postfixKrok 6. Instalace a konfigurace Dovecot.
Nainstalujte dovecot pomocí následujícího příkazu:
yum install dovecot dovecot-mysqlOtevřete soubor /etc/dovecot/conf.d/10-mail.conf:
nano /etc/dovecot/conf.d/10-mail.confZměňte následující hodnoty:
umístění pošty =maildir:/var/vmail/%d/%nmail_privileged_group =mailmail_uid =vmailmail_gid =mailfirst_valid_uid =150last_valid_uid =150Otevřete soubor /etc/dovecot/conf.d/10-auth.conf:
nano /etc/dovecot/conf.d/10-auth.confZměňte následující hodnoty:
auth_mechanisms =plain login#!include auth-system.conf.ext!include auth-sql.conf.extVytvořte nový soubor dovecot-sql.conf.ext:
nano /etc/dovecot/dovecot-sql.conf.extUpravte následující hodnoty:
driver =mysqlconnect =host=localhost dbname=postfixadmin user=postfixadmin password=strong_passworddefault_pass_scheme =MD5-CRYPTpassword_query =VYBERTE uživatelské jméno jako uživatele, heslo, '/var/vmail/%d/%n' jako userdb_home, 'maildir:/ var/vmail/%d/%n' jako userdb_mail, 150 jako userdb_uid, 8 jako userdb_gid Z poštovní schránky WHERE username ='%u' AND active ='1'user_query =SELECT '/var/vmail/%d/%u' jako domov, 'maildir:/var/vmail/%d/%u' jako pošta, 150 AS uid, 8 AS gid, concat('dirsize:storage=', kvóta) JAKO kvóta Z poštovní schránky WHERE uživatelské jméno ='%u' A aktivní ='1'V souboru /etc/dovecot/conf.d/10-ssl.conf povolte podporu SSL:
ssl =anoOtevřete soubor /etc/dovecot/conf.d/15-lda.conf a nastavte e-mailovou adresu postmaster_address:
adresa_postmastera =postmaster@nazev_vasi_domeny.comOtevřete soubor /etc/dovecot/conf.d/10-master.conf, najděte sekci service lmtp a změňte ji na:
service lmtp { unix_listener /var/spool/postfix/private/dovecot-lmtp { režim =0600 uživatel =postfix skupina =postfix }}Najděte sekci ověření služby a změňte ji na:
service auth { unix_listener /var/spool/postfix/private/auth { režim =0666 user =postfix group =postfix } unix_listener auth-userdb { režim =0600 = uživatel =vmail # uživatel =vmail # do mailu =vmail před>Změňte sekci service auth-worker na následující:
service auth-worker { user =vmail}Nyní musíte přiřadit vlastnictví souborů a složek. Chcete-li to provést, použijte tento příkaz:
chown -R vmail:dovecot /etc/dovecotchmod -R o-rwx /etc/dovecotNakonec povolte a restartujte službu dovecot:
systemctl povolit dovecot systemctl restart dovecotKrok 7. Instalace a konfigurace Spamassassinu.
Nainstalujte SpamAssassin pomocí následujícího příkazu:
yum -y install spamassassinVytvořit uživatele systému SpamAssassin:
groupadd spamduseradd -g spamd -s /bin/false -d /var/log/spamassassin spamdchown spamd:spamd /var/log/spamassassinDále nakonfigurujte Postfix tak, aby používal SpamAssassin:
nano /etc/postfix/master.cfZměnit hodnoty:
smtp inet n - n - - smtpdS:
smtp inet n - n - - smtpd -o content_filter=spamassassinNa konec souboru přidejte následující řádek:
systemctl povolit spamassassin systemctl restartovat spamassassinNakonec restartujte službu postfix:
systemctl restart postfixKrok 8. Přístup k PostfixAdmin.
Pokud je nyní vše správně nastaveno, měli byste být schopni se přihlásit k backendu PostfixAdmin na
http://Your_IP_Address/postfixadmin-3.0.2.2
a vytvořte svou první virtuální doménu a poštovní schránku.Blahopřejeme! Úspěšně jste nainstalovali PostfixAdmin. Děkujeme, že jste použili tento návod k instalaci poštovního serveru s PostfixAdminem v systému CentOS 7. Pro další nápovědu nebo užitečné informace doporučujeme navštívit oficiální web PostfixAdmin.
Cent OS