POSTFIX: Difference between revisions

From www.ReeltoReel.nl Wiki
Jump to navigation Jump to search
(Created page with "==Inleiding== Met het programma Postfix op een linux systeem kan mail verzonden en verstuurd worden. Er zijn een paar instellingen die gedaan moeten worden. Dit i.v.m. nieuwe...")
 
 
(7 intermediate revisions by the same user not shown)
Line 1: Line 1:
==Inleiding==
==Inleiding==
Met het programma Postfix op een linux systeem kan mail verzonden en verstuurd worden. Er zijn een paar instellingen die gedaan moeten worden. Dit i.v.m. nieuwe mailrelay via de DICT. Tevens het gebruik van het lokale mailprogramma wordt in deze hoofdstuk uitgelegd (mail,nail,mailx)
Met het programma Postfix op een linux systeem kan mail verzonden en verstuurd worden. Er zijn een paar instellingen die soms gedaan moeten worden. Tevens het gebruik van het lokale mailprogramma wordt in deze hoofdstuk uitgelegd (mail,nail,mailx)


==DE instellingen==
==De instellingen==
De instellingen die belangrijk zijn om via Postfix mail te kunnen versturen staan in '/etc/postfix/main.cf'. De volgende instellingen zijn belangrijk:
De instellingen die belangrijk zijn om via Postfix mail te kunnen versturen staan in '/etc/postfix/main.cf'. De volgende instellingen zijn belangrijk:
  myhostname="fully qualified hostname"
  myhostname="fully qualified hostname"
  relayhost=cups.wzs.amsterdam.nl  
  relayhost=bla.nl  
De laatste instelling is verplicht. Indien deze parameter niet gevuld is, wordt de mail niet verstuurd naar de ontvanger (postfix zoekt dan zelf de relayhost op via het 'mx-record' van het domein, wat een mail relay host teruggeeft die niet relayed - enebmx02.amsterdam.nl[10.251.9.35]:25 )
De laatste instelling is verplicht. Indien deze parameter niet gevuld is, wordt de mail niet verstuurd naar de ontvanger (postfix zoekt dan zelf de relayhost op via het 'mx-record' van het domein, wat een mail relay host teruggeeft die niet relayed -XXXXX )
 
===alternatieve instelling===
 
Er kan ook direct gerelayed worden naar een mailserver van de DICT. Dit is de host: '''smtprelay.basis.lan'''
 
Echter, dan moet de verzendende server opgenomen worden in de 'allowed hosts' lijstje van de DICT. Dit betekent een changerequest.
 
De hierboven omschreven optie via cups omzeilt dit.


==Mail manipulaties==
==Mail manipulaties==
Nu kan er dus mail verstuurd worden vanaf de host met het commando 'mail' of 'nail'. Dit kan interactief of scriptsgewijs. Een aantal voorbeeldscriptjes zijn:
Nu kan er dus mail verstuurd worden vanaf de host met het commando 'mail' of 'nail'. Dit kan interactief of scriptsgewijs. Een aantal voorbeeldscriptjes zijn:
  nail -s "subject" -r "afzender"  "mailadres" -a "attachment" << EOF        bla body  bla  groetje EOF
  nail -s "subject" -r "afzender"  "mailadres" -a "attachment" << EOF        bla body  bla  groetje EOF
  mail p.van.der.matten@wzs.amsterdam.nl -s 'hallootjes' -r joop@bla.tk < /proc/cpuinfo  
  mail bla@amsterdam.nl -s 'hallootjes' -r joop@bla.tk < /proc/cpuinfo  
  mail p.van.der.matten@wzs.amsterdam.nl -s 'hallootjes' -r joop@bla.tk -a attachment < /proc/cpuinfo  
  mail bla@amsterdam.nl -s 'hallootjes' -r joop@bla.tk -a attachment < /proc/cpuinfo  
of simpeler:
of simpeler:
  mail -s "subject"  "mailadres" </temp/vandaag.log
  mail -s "subject"  "mailadres" </temp/vandaag.log
Line 32: Line 24:
  next    --> ga naar het volgende mailtje
  next    --> ga naar het volgende mailtje
  d 1    --> delete mail 1
  d 1    --> delete mail 1
  d 1-300 --> delete mail 1 t/m 300
  '''d 1-300 --> delete mail 1 t/m 300'''
  header  --> laat de lijst met mail zien
  header  --> laat de lijst met mail zien
  q      --> verlaat de applicatie
  q      --> verlaat de applicatie
Line 46: Line 38:
Het queueID kun je vinden met
Het queueID kun je vinden met
  #postqueue -p
  #postqueue -p
==Alle systeem mail for root verwijderen==
echo 'd*' | mail -N


==De postfix queue bekijken==
==De postfix queue bekijken==
Line 96: Line 92:
masquerade_exceptions = root
masquerade_exceptions = root
masquerade_classes = envelope_sender, header_sender, header_recipient
masquerade_classes = envelope_sender, header_sender, header_recipient
myhostname = cups.wzs.amsterdam.nl
myhostname = bla.wzs.amsterdam.nl
delay_warning_time = 1h
delay_warning_time = 1h
message_strip_characters = \0
message_strip_characters = \0
program_directory = /usr/lib/postfix
program_directory = /usr/lib/postfix
inet_interfaces = 10.125.130.53
inet_interfaces = xxx
#inet_interfaces = localhost
#inet_interfaces = localhost
masquerade_domains =  
masquerade_domains =  
mydestination = $myhostname, localhost.$mydomain
mydestination = $myhostname, localhost.$mydomain
defer_transports =  
defer_transports =  
mynetworks = 10.125.0.0/16
mynetworks = xxx
#mynetworks_style = subnet
#mynetworks_style = subnet
disable_dns_lookups = no
disable_dns_lookups = no

Latest revision as of 08:54, 22 November 2023

Inleiding

Met het programma Postfix op een linux systeem kan mail verzonden en verstuurd worden. Er zijn een paar instellingen die soms gedaan moeten worden. Tevens het gebruik van het lokale mailprogramma wordt in deze hoofdstuk uitgelegd (mail,nail,mailx)

De instellingen

De instellingen die belangrijk zijn om via Postfix mail te kunnen versturen staan in '/etc/postfix/main.cf'. De volgende instellingen zijn belangrijk:

myhostname="fully qualified hostname"
relayhost=bla.nl 

De laatste instelling is verplicht. Indien deze parameter niet gevuld is, wordt de mail niet verstuurd naar de ontvanger (postfix zoekt dan zelf de relayhost op via het 'mx-record' van het domein, wat een mail relay host teruggeeft die niet relayed -XXXXX )

Mail manipulaties

Nu kan er dus mail verstuurd worden vanaf de host met het commando 'mail' of 'nail'. Dit kan interactief of scriptsgewijs. Een aantal voorbeeldscriptjes zijn:

nail -s "subject" -r "afzender"  "mailadres" -a "attachment" << EOF         bla body  bla  groetje EOF
mail bla@amsterdam.nl -s 'hallootjes' -r joop@bla.tk < /proc/cpuinfo 
mail bla@amsterdam.nl -s 'hallootjes' -r joop@bla.tk -a attachment < /proc/cpuinfo 

of simpeler:

mail -s "subject"  "mailadres" </temp/vandaag.log

Interactief gebruik van mail

Als je interactief gebruik maakt van het programma 'mail', zijn er een aantal spelregels (voor de 'mail' of 'nail' prompt) . Als er bijv. 389 mailtjes zijn kun je het laatste mailtje lezen door gewoon '389' in te typen op de prompt. Verlaat met 'q' Ander handige commando's zijn:

save    --> bewaar de gelezen mail, de uitvoer geeft aan waar de mail terechtkomt (bijv. '/root/mbox')
help    --> geeft aan hoe je een mail kan versturen
list    --> laat alle commando's zien (een soort help maar dan uitgebreider)
next    --> ga naar het volgende mailtje
d 1     --> delete mail 1
d 1-300 --> delete mail 1 t/m 300
header  --> laat de lijst met mail zien
q       --> verlaat de applicatie

De mailboxen

De postfix mailbox is opgeslagen in de directory '/var/spool/mail/"username". De gelezen en opgeslagen mail (gaat automatisch bij het afsluiten) staat in "user_home_dir"/mbox.

De postfix deliveryqueue legen/flushen

#postqueue -f <-- waarschijnlijk niet het goede commando
#postsuper -d <queueID>

Alles verwijderen:

#postsuper -d ALL

Het queueID kun je vinden met

#postqueue -p

Alle systeem mail for root verwijderen

echo 'd*' | mail -N

De postfix queue bekijken

#mailq

of

#postqueue -p


Een werkende postfix configuratiefile main.cf

Hier volgt een goed werkende file voor de transparent mail relay host cups:

relay_domains = $mydestination, hash:/etc/postfix/relay
virtual_alias_maps = hash:/etc/postfix/virtual
#virtual_uid_maps = static:303
#virtual_gid_maps = static:303
#virtual_minimum_uid = 303
#virtual_mailbox_base = /srv/maildirs
#virtual_mailbox_domains = mysql:/etc/postfix/mysql_virtual_domains_maps.cf
#virtual_mailbox_limit = 0
#virtual_mailbox_limit_inbox = no
#virtual_mailbox_limit_maps = hash:/etc/postfix/vquota
#virtual_mailbox_limit_override = yes
#virtual_mailbox_maps = mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf
#virtual_transport = virtual
## Additional for quota support
#virtual_create_maildirsize = yes
#virtual_mailbox_extended = yes
### Needs Maildir++ compatible IMAP servers, like Courier-IMAP
#virtual_maildir_filter = yes
#virtual_maildir_filter_maps = hash:/etc/postfix/vfilter
#virtual_mailbox_limit_maps = mysql:/etc/postfix/mysql_virtual_mailbox_limit_maps.cf
#virtual_mailbox_limit_override = yes
#virtual_maildir_limit_message = Sorry, the user's maildir has overdrawn his diskspace quota, please try again later.
#virtual_maildir_limit_message_maps = hash:/etc/postfix/vmsg
#virtual_overquota_bounce = yes
#virtual_trash_count = yes
#virtual_trash_name = ".Trash"
############################################################
# End MySQL from postfixwiki.org
############################################################

inet_protocols = all
biff = no
mail_spool_directory = /var/mail
canonical_maps = hash:/etc/postfix/canonical
virtual_alias_domains = hash:/etc/postfix/virtual
relocated_maps = hash:/etc/postfix/relocated
transport_maps = hash:/etc/postfix/transport
sender_canonical_maps = hash:/etc/postfix/sender_canonical
masquerade_exceptions = root
masquerade_classes = envelope_sender, header_sender, header_recipient
myhostname = bla.wzs.amsterdam.nl
delay_warning_time = 1h
message_strip_characters = \0
program_directory = /usr/lib/postfix
inet_interfaces = xxx
#inet_interfaces = localhost
masquerade_domains = 
mydestination = $myhostname, localhost.$mydomain
defer_transports = 
mynetworks = xxx
#mynetworks_style = subnet
disable_dns_lookups = no
relayhost = smtprelay.basis.lan
content_filter = 
mailbox_command = 
mailbox_transport = 
strict_8bitmime = no
disable_mime_output_conversion = no
smtpd_sender_restrictions = hash:/etc/postfix/access
smtpd_client_restrictions = permit_mynetworks 
smtpd_helo_required = no
smtpd_helo_restrictions = 
strict_rfc821_envelopes = no
smtpd_recipient_restrictions = permit_mynetworks,reject_unauth_destination
smtp_sasl_auth_enable = no
smtpd_sasl_auth_enable = no
smtpd_use_tls = no
smtp_use_tls = no
smtp_enforce_tls = no
alias_maps = hash:/etc/aliases
mailbox_size_limit = 0
message_size_limit = 0