Instalare Postfix pe Linux CentOS

Configurare noua (How To)

Situatie

Instalare Postfix (open source Mail Transfer Agent) si Cyrus (server de mail) si configurarea lor.

 

Solutie

Pasi de urmat

Instalam Postfix (open source Mail Transfer Agent) si Cyrus (server de mail)

 

sudo yum install postfix

sudo yum install cyrus-sasl
sudo yum install cyrus-imapd

 

Clipboard01 Clipboard02

Configurare Postfix

Deschidem fisierul de configurare Postfix

sudo vi /etc/postfix/main.cf

Se copiaza urmatorul cod si se inlocuieste exemplu.ro din linia mydomain cu domeniu propriu:

soft_bounce = no
queue_directory = /var/spool/postfix
command_directory = /usr/sbin
daemon_directory = /usr/libexec/postfix
mail_owner = postfix

# The default_privs parameter specifies the default rights used by
# the local delivery agent for delivery to external file or command.
# These rights are used in the absence of a recipient user context.
# DO NOT SPECIFY A PRIVILEGED USER OR THE POSTFIX OWNER.
#
#default_privs = nobody

myhostname = mail.exemplu.ro
mydomain = exemplu.ro

mydestination = $myhostname, localhost
unknown_local_recipient_reject_code = 550

mynetworks_style = host
mailbox_transport = lmtp:unix:/var/lib/imap/socket/lmtp
local_destination_recipient_limit = 300
local_destination_concurrency_limit = 5
recipient_delimiter=+

virtual_alias_maps = hash:/etc/postfix/virtual

header_checks = regexp:/etc/postfix/header_checks
mime_header_checks = pcre:/etc/postfix/body_checks
smtpd_banner = $myhostname

debug_peer_level = 2
debugger_command =
PATH=/bin:/usr/bin:/usr/bin:/usr/X11R6/bin
xxgdb $daemon_directory/$process_name $process_id & sleep 5

sendmail_path = /usr/sbin/sendmail.postfix
newaliases_path = /usr/bin/newaliases.postfix
mailq_path = /usr/bin/mailq.postfix
setgid_group = postdrop
html_directory = no
manpage_directory = /usr/share/man
sample_directory = /usr/share/doc/postfix-2.3.3/samples
readme_directory = /usr/share/doc/postfix-2.3.3/README_FILES

smtpd_sasl_auth_enable = yes
smtpd_sasl_application_name = smtpd
smtpd_recipient_restrictions = permit_sasl_authenticated,
permit_mynetworks,
reject_unauth_destination,
reject_invalid_hostname,
reject_non_fqdn_hostname,
reject_non_fqdn_sender,
reject_non_fqdn_recipient,
reject_unknown_sender_domain,
reject_unknown_recipient_domain,
reject_unauth_pipelining,
reject_rbl_client zen.spamhaus.org,
reject_rbl_client bl.spamcop.net,
reject_rbl_client dnsbl.njabl.org,
reject_rbl_client dnsbl.sorbs.net,
permit

smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain =
broken_sasl_auth_clients = yes

smtpd_helo_required = yes

 

 

 

Clipboard03

Finalizare configurare Postfix

In fisierul config am inclus aliasuri virtuale in linia “virtual_alias_maps = hash:/etc/postfix/virtual”
Acum trebuie setata baza de date

Deschidem fisierul respectiv:

sudo vi /etc/postfix/virtual

Stergem tot textul si adaugam urmatoarele linii, inlocuind “user” cu un utilizator existent si “domain” cu domeniu propriu.

user@exemplu.ro user@exemplu.ro
Salvam si iesim.
Apoi executam comanda:

postmap /etc/postfix/virtual
Aceasta va transforma fisierul virtual intr-o tablea de tip “lookup” creand baza de date necesara pentru ca postfix sa functioneze.

La final executam urmatoarea comanda care va crea noul fisier pe care postfix-ul il va folosi inainte sa trimita mailuri.

touch /etc/postfix/body_checks

 

Clipboard04

Configurare Cyrus

Creem fisierul smtpd.conf, care defineste autentificarea pentru Postfix/SASL, in folderul SASL:

sudo vi /etc/sasl2/smtpd.conf
Se copiaza urmatorul text in fisier:

pwcheck_method: auxprop
auxprop_plugin: sasldb
mech_list: PLAIN LOGIN CRAM-MD5 DIGEST-MD5

Salvam si iesim.
Apoi configuram fisierul Cyrus:

sudo vi /etc/imapd.conf
Stergem tot ce este in fisier si copiem urmatorul text, inlocuind numele de domeniu si server cu cele proprii:

virtdomains: userid
defaultdomain: exemplu.ro
servername: exemplu.ro
configdirectory: /var/lib/imap
partition-default: /var/spool/imap
admins: cyrus
sievedir: /var/lib/imap/sieve
sendmail: /usr/sbin/sendmail.postfix
hashimapspool: true
allowanonymouslogin: no
allowplaintext: yes
sasl_pwcheck_method: auxprop
sasl_mech_list: CRAM-MD5 DIGEST-MD5 PLAIN
tls_cert_file: /etc/pki/cyrus-imapd/cyrus-imapd.pem
tls_key_file: /etc/pki/cyrus-imapd/cyrus-imapd.pem
tls_ca_file: /etc/pki/tls/certs/ca-bundle.crt

autocreatequota: -1
createonpost: yes
autocreateinboxfolders: spam
autosubscribeinboxfolders: spam

Salvam si iesim.

 

Clipboard06

Tip solutie

Permanent

Voteaza

(1 out of 6 people found this article helpful)

Despre Autor

Leave A Comment?