Postfix main.cf
In this main_cf_files.cfg example, we specify a SuSE Linux version of the Postfix main configuration file, /etc/postfix/main.cf. Note the use of the =pikthostname macro, which is a PIKT built-in that resolves to the current slave system hostname.
///////////////////////////////////////////////////////////////////////////////
//
// main_cf_files.cfg
//
///////////////////////////////////////////////////////////////////////////////
main.cf path "/etc/postfix/main.cf" mode 644 uid 0 gid 0
#if suse
#
# -----------------------------------------------------------------------
# NOTE: Many parameters have already been added to the end of this file
# by SuSEconfig.postfix. So take care that you don't uncomment
# and set a parameter without checking whether it has been added
# to the end of this file.
# -----------------------------------------------------------------------
#
# Global Postfix configuration file. This file lists only a subset
# of all 300+ parameters. See the sample-xxx.cf files for a full list.
#
[text omitted here for brevity]
myhostname = =pikthostname=_.earlymusichicago.org
inet_protocols = all
biff = no
mail_spool_directory = /var/mail
canonical_maps = hash:/etc/postfix/canonical
virtual_alias_maps = hash:/etc/postfix/virtual
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
masquerade_domains =
#if mailserver
inet_interfaces = 192.168.2.2 192.168.4.2 127.0.0.1 ::1
#else
inet_interfaces = all
#endif
#if mailserver
mydestination = $myhostname, localhost.$mydomain,
pikt.org, pikt.net,
earlymusichicago.org, earlymusicchicago.org
#else
mydestination = $myhostname, localhost.$mydomain
#endif
defer_transports =
#if mailserver
mynetworks = 192.168.2.0/24, 192.168.4.0/24
#else
mynetworks = 192.168.2.0/24
#endif
#if mailserver
disable_dns_lookups = no
#else
disable_dns_lookups = yes
#endif
relayhost =
content_filter =
mailbox_command = /usr/bin/procmail
mailbox_transport =
strict_8bitmime = no
smtpd_sender_restrictions = check_sender_access hash:/etc/postfix/access,
permit_mynetworks,
reject_invalid_hostname,
reject_non_fqdn_hostname,
reject_non_fqdn_sender,
reject_unauth_pipelining,
reject_unknown_client,
reject_unknown_hostname,
reject_unknown_sender_domain
smtpd_client_restrictions =
smtpd_helo_required = yes
smtpd_helo_restrictions = permit_mynetworks,
reject_unknown_client,
reject_invalid_hostname,
reject_unauth_pipelining,
reject_unknown_hostname,
reject_non_fqdn_hostname
strict_rfc821_envelopes = no
smtpd_recipient_restrictions = permit_mynetworks,
reject_unauth_destination,
reject_invalid_hostname,
reject_non_fqdn_sender,
reject_non_fqdn_recipient,
reject_unknown_sender_domain,
reject_unknown_recipient_domain,
reject_unauth_pipelining,
reject_non_fqdn_hostname
smtp_sasl_auth_enable = no
smtpd_sasl_auth_enable = no
smtpd_use_tls = no
smtp_use_tls = no
#if mailserver
alias_maps = hash:/etc/aliases, hash:/var/lib/mailman/data/aliases
#else
alias_maps = hash:/etc/aliases
#endif
mailbox_size_limit = 0
message_size_limit = 10240000
#endif // suse
///////////////////////////////////////////////////////////////////////////////
On the piktmaster system, we would install the main.cf file to the venice SuSE Linux system with the command:
# piktc -iv +F main.cf +H venice
For more examples, see Samples.