Simple Postfix server for QA testing

Discussion in 'Server Operation' started by jmarcus, Sep 24, 2009.

  1. jmarcus

    jmarcus New Member

    Hi,
    I'm setting up a Postfix server to receive a few 100K emails. We are testing the load for bulk registration. I have been hacking around postfix for a few hours now and I really just need to be able to POP off of two accounts. I don't need anything fancy, this server is going to be around for a week.

    My Postfix main.cf
    Code:
    [root@mx3 dovecot]# postconf
    2bounce_notice_recipient = postmaster
    access_map_reject_code = 554
    address_verify_default_transport = $default_transport
    address_verify_local_transport = $local_transport
    address_verify_map = 
    address_verify_negative_cache = yes
    address_verify_negative_expire_time = 3d
    address_verify_negative_refresh_time = 3h
    address_verify_poll_count = 3
    address_verify_poll_delay = 3s
    address_verify_positive_expire_time = 31d
    address_verify_positive_refresh_time = 7d
    address_verify_relay_transport = $relay_transport
    address_verify_relayhost = $relayhost
    address_verify_sender = postmaster
    address_verify_sender_dependent_relayhost_maps = $sender_dependent_relayhost_maps
    address_verify_service_name = verify
    address_verify_transport_maps = $transport_maps
    address_verify_virtual_transport = $virtual_transport
    alias_database = hash:/etc/aliases
    alias_maps = hash:/etc/aliases
    allow_mail_to_commands = alias, forward
    allow_mail_to_files = alias, forward
    allow_min_user = no
    allow_percent_hack = yes
    allow_untrusted_routing = no
    alternate_config_directories = 
    always_bcc = 
    anvil_rate_time_unit = 60s
    anvil_status_update_time = 600s
    append_at_myorigin = yes
    append_dot_mydomain = yes
    application_event_drain_time = 100s
    authorized_flush_users = static:anyone
    authorized_mailq_users = static:anyone
    authorized_submit_users = static:anyone
    backwards_bounce_logfile_compatibility = yes
    berkeley_db_create_buffer_size = 16777216
    berkeley_db_read_buffer_size = 131072
    best_mx_transport = 
    biff = yes
    body_checks = 
    body_checks_size_limit = 51200
    bounce_notice_recipient = postmaster
    bounce_queue_lifetime = 5d
    bounce_service_name = bounce
    bounce_size_limit = 50000
    bounce_template_file = 
    broken_sasl_auth_clients = no
    canonical_classes = envelope_sender, envelope_recipient, header_sender, header_recipient
    canonical_maps = 
    cleanup_service_name = cleanup
    command_directory = /usr/sbin
    command_execution_directory = 
    command_expansion_filter = 1234567890!@%-_=+:,./abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
    command_time_limit = 1000s
    config_directory = /etc/postfix
    connection_cache_protocol_timeout = 5s
    connection_cache_service_name = scache
    connection_cache_status_update_time = 600s
    connection_cache_ttl_limit = 2s
    content_filter = 
    daemon_directory = /usr/libexec/postfix
    daemon_timeout = 18000s
    debug_peer_level = 2
    debug_peer_list = 
    default_database_type = hash
    default_delivery_slot_cost = 5
    default_delivery_slot_discount = 50
    default_delivery_slot_loan = 3
    default_destination_concurrency_limit = 20
    default_destination_recipient_limit = 50
    default_extra_recipient_limit = 1000
    default_minimum_delivery_slots = 3
    default_privs = nobody
    default_process_limit = 100
    default_rbl_reply = $rbl_code Service unavailable; $rbl_class [$rbl_what] blocked using $rbl_domain${rbl_reason?; $rbl_reason}
    default_recipient_limit = 10000
    default_transport = smtp
    default_verp_delimiters = +=
    defer_code = 450
    defer_service_name = defer
    defer_transports = 
    delay_logging_resolution_limit = 2
    delay_notice_recipient = postmaster
    delay_warning_time = 0h
    deliver_lock_attempts = 20
    deliver_lock_delay = 1s
    disable_dns_lookups = no
    disable_mime_input_processing = no
    disable_mime_output_conversion = no
    disable_verp_bounces = no
    disable_vrfy_command = no
    dont_remove = 0
    double_bounce_sender = double-bounce
    duplicate_filter_limit = 1000
    empty_address_recipient = MAILER-DAEMON
    enable_original_recipient = yes
    error_notice_recipient = postmaster
    error_service_name = error
    execution_directory_expansion_filter = 1234567890!@%-_=+:,./abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
    expand_owner_alias = no
    export_environment = TZ MAIL_CONFIG LANG
    fallback_transport = 
    fallback_transport_maps = 
    fast_flush_domains = $relay_domains
    fast_flush_purge_time = 7d
    fast_flush_refresh_time = 12h
    fault_injection_code = 0
    flush_service_name = flush
    fork_attempts = 5
    fork_delay = 1s
    forward_expansion_filter = 1234567890!@%-_=+:,./abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
    forward_path = $home/.forward${recipient_delimiter}${extension}, $home/.forward
    frozen_delivered_to = yes
    hash_queue_depth = 1
    hash_queue_names = deferred, defer
    header_address_token_limit = 10240
    header_checks = 
    header_size_limit = 102400
    helpful_warnings = yes
    home_mailbox = Maildir/
    hopcount_limit = 50
    html_directory = no
    ignore_mx_lookup_error = no
    import_environment = MAIL_CONFIG MAIL_DEBUG MAIL_LOGTAG TZ XAUTHORITY DISPLAY LANG=C
    in_flow_delay = 1s
    inet_interfaces = all
    inet_protocols = ipv4
    initial_destination_concurrency = 5
    internal_mail_filter_classes = 
    invalid_hostname_reject_code = 501
    ipc_idle = 100s
    ipc_timeout = 3600s
    ipc_ttl = 1000s
    line_length_limit = 2048
    lmtp_bind_address = 
    lmtp_bind_address6 = 
    lmtp_cname_overrides_servername = no
    lmtp_connect_timeout = 0s
    lmtp_connection_cache_destinations = 
    lmtp_connection_cache_on_demand = yes
    lmtp_connection_cache_time_limit = 2s
    lmtp_connection_reuse_time_limit = 300s
    lmtp_data_done_timeout = 600s
    lmtp_data_init_timeout = 120s
    lmtp_data_xfer_timeout = 180s
    lmtp_defer_if_no_mx_address_found = no
    lmtp_destination_concurrency_limit = $default_destination_concurrency_limit
    lmtp_destination_recipient_limit = $default_destination_recipient_limit
    lmtp_discard_lhlo_keyword_address_maps = 
    lmtp_discard_lhlo_keywords = 
    lmtp_enforce_tls = no
    lmtp_generic_maps = 
    lmtp_host_lookup = dns
    lmtp_lhlo_name = $myhostname
    lmtp_lhlo_timeout = 300s
    lmtp_line_length_limit = 990
    lmtp_mail_timeout = 300s
    lmtp_mx_address_limit = 5
    lmtp_mx_session_limit = 2
    lmtp_pix_workaround_delay_time = 10s
    lmtp_pix_workaround_threshold_time = 500s
    lmtp_quit_timeout = 300s
    lmtp_quote_rfc821_envelope = yes
    lmtp_randomize_addresses = yes
    lmtp_rcpt_timeout = 300s
    lmtp_rset_timeout = 20s
    lmtp_sasl_auth_enable = no
    lmtp_sasl_mechanism_filter = 
    lmtp_sasl_password_maps = 
    lmtp_sasl_path = 
    lmtp_sasl_security_options = noplaintext, noanonymous
    lmtp_sasl_tls_security_options = $lmtp_sasl_security_options
    lmtp_sasl_tls_verified_security_options = $lmtp_sasl_tls_security_options
    lmtp_sasl_type = cyrus
    lmtp_send_xforward_command = no
    lmtp_sender_dependent_authentication = no
    lmtp_skip_5xx_greeting = yes
    lmtp_starttls_timeout = 300s
    lmtp_tcp_port = 24
    lmtp_tls_CAfile = 
    lmtp_tls_CApath = 
    lmtp_tls_cert_file = 
    lmtp_tls_dcert_file = 
    lmtp_tls_dkey_file = $lmtp_tls_dcert_file
    lmtp_tls_enforce_peername = yes
    lmtp_tls_exclude_ciphers = 
    lmtp_tls_key_file = $lmtp_tls_cert_file
    lmtp_tls_loglevel = 0
    lmtp_tls_mandatory_ciphers = medium
    lmtp_tls_mandatory_exclude_ciphers = 
    lmtp_tls_mandatory_protocols = SSLv3, TLSv1
    lmtp_tls_note_starttls_offer = no
    lmtp_tls_per_site = 
    lmtp_tls_policy_maps = 
    lmtp_tls_scert_verifydepth = 5
    lmtp_tls_secure_cert_match = nexthop
    lmtp_tls_security_level = 
    lmtp_tls_session_cache_database = 
    lmtp_tls_session_cache_timeout = 3600s
    lmtp_tls_verify_cert_match = hostname
    lmtp_use_tls = no
    lmtp_xforward_timeout = 300s
    local_command_shell = 
    local_destination_concurrency_limit = 2
    local_destination_recipient_limit = 1
    local_header_rewrite_clients = permit_inet_interfaces
    local_recipient_maps = proxy:unix:passwd.byname $alias_maps
    local_transport = local:$myhostname
    luser_relay = 
    mail_name = Postfix
    mail_owner = postfix
    mail_release_date = 200600825
    mail_spool_directory = /var/mail
    mail_version = 2.3.3
    mailbox_command = 
    mailbox_command_maps = 
    mailbox_delivery_lock = fcntl, dotlock
    mailbox_size_limit = 51200000
    mailbox_transport = 
    mailbox_transport_maps = 
    mailq_path = /usr/bin/mailq.postfix
    manpage_directory = /usr/share/man
    maps_rbl_domains = 
    maps_rbl_reject_code = 554
    masquerade_classes = envelope_sender, header_sender, header_recipient
    masquerade_domains = 
    masquerade_exceptions = 
    max_idle = 100s
    max_use = 100
    maximal_backoff_time = 4000s
    maximal_queue_lifetime = 5d
    message_reject_characters = 
    message_size_limit = 10240000
    message_strip_characters = 
    milter_command_timeout = 30s
    milter_connect_macros = j {daemon_name} v
    milter_connect_timeout = 30s
    milter_content_timeout = 300s
    milter_data_macros = i
    milter_default_action = tempfail
    milter_end_of_data_macros = i
    milter_helo_macros = {tls_version} {cipher} {cipher_bits} {cert_subject} {cert_issuer}
    milter_macro_daemon_name = $myhostname
    milter_macro_v = $mail_name $mail_version
    milter_mail_macros = i {auth_type} {auth_authen} {auth_author} {mail_addr}
    milter_protocol = 2
    milter_rcpt_macros = i {rcpt_addr}
    milter_unknown_command_macros = 
    mime_boundary_length_limit = 2048
    mime_header_checks = $header_checks
    mime_nesting_limit = 100
    minimal_backoff_time = 1000s
    multi_recipient_bounce_reject_code = 550
    mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain, studentkort.se
    mydomain = studentkort.se
    myhostname = mx3.studentkort.se
    mynetworks = 127.0.0.1/32 10.10.200.100/32 
    mynetworks_style = host
    myorigin = $mydomain
    nested_header_checks = $header_checks
    newaliases_path = /usr/bin/newaliases.postfix
    non_fqdn_reject_code = 504
    non_smtpd_milters = 
    notify_classes = resource, software
    owner_request_special = yes
    parent_domain_matches_subdomains = debug_peer_list,fast_flush_domains,mynetworks,permit_mx_backup_networks,qmqpd_authorized_clients,relay_domains,smtpd_access_maps
    permit_mx_backup_networks = 
    pickup_service_name = pickup
    plaintext_reject_code = 450
    prepend_delivered_header = command, file, forward
    process_id_directory = pid
    propagate_unmatched_extensions = canonical, virtual
    proxy_interfaces = 
    proxy_read_maps = $local_recipient_maps $mydestination $virtual_alias_maps $virtual_alias_domains $virtual_mailbox_maps $virtual_mailbox_domains $relay_recipient_maps $relay_domains $canonical_maps $sender_canonical_maps $recipient_canonical_maps $relocated_maps $transport_maps $mynetworks
    qmgr_clog_warn_time = 300s
    qmgr_fudge_factor = 100
    qmgr_message_active_limit = 20000
    qmgr_message_recipient_limit = 20000
    qmgr_message_recipient_minimum = 10
    qmqpd_authorized_clients = 
    qmqpd_error_delay = 1s
    qmqpd_timeout = 300s
    queue_directory = /var/spool/postfix
    queue_file_attribute_count_limit = 100
    queue_minfree = 0
    queue_run_delay = 1000s
    queue_service_name = qmgr
    rbl_reply_maps = 
    readme_directory = /usr/share/doc/postfix-2.3.3/README_FILES
    receive_override_options = 
    recipient_bcc_maps = 
    recipient_canonical_classes = envelope_recipient, header_recipient
    recipient_canonical_maps = 
    recipient_delimiter = 
    reject_code = 554
    relay_clientcerts = 
    relay_destination_concurrency_limit = $default_destination_concurrency_limit
    relay_destination_recipient_limit = $default_destination_recipient_limit
    relay_domains = $mydestination
    relay_domains_reject_code = 554
    relay_recipient_maps = 
    relay_transport = relay
    relayhost = 
    relocated_maps = 
    remote_header_rewrite_domain = 
    require_home_directory = no
    resolve_dequoted_address = yes
    resolve_null_domain = no
    resolve_numeric_domain = no
    rewrite_service_name = rewrite
    sample_directory = /usr/share/doc/postfix-2.3.3/samples
    sender_bcc_maps = 
    sender_canonical_classes = envelope_sender, header_sender
    sender_canonical_maps = 
    sender_dependent_relayhost_maps = 
    sendmail_path = /usr/sbin/sendmail.postfix
    service_throttle_time = 60s
    setgid_group = postdrop
    show_user_unknown_table_name = yes
    showq_service_name = showq
    smtp_always_send_ehlo = yes
    smtp_bind_address = 
    smtp_bind_address6 = 
    smtp_cname_overrides_servername = no
    smtp_connect_timeout = 30s
    smtp_connection_cache_destinations = 
    smtp_connection_cache_on_demand = yes
    smtp_connection_cache_time_limit = 2s
    smtp_connection_reuse_time_limit = 300s
    smtp_data_done_timeout = 600s
    smtp_data_init_timeout = 120s
    smtp_data_xfer_timeout = 180s
    smtp_defer_if_no_mx_address_found = no
    smtp_destination_concurrency_limit = $default_destination_concurrency_limit
    smtp_destination_recipient_limit = $default_destination_recipient_limit
    smtp_discard_ehlo_keyword_address_maps = 
    smtp_discard_ehlo_keywords = 
    smtp_enforce_tls = no
    smtp_fallback_relay = $fallback_relay
    smtp_generic_maps = 
    smtp_helo_name = $myhostname
    smtp_helo_timeout = 300s
    smtp_host_lookup = dns
    smtp_line_length_limit = 990
    smtp_mail_timeout = 300s
    smtp_mx_address_limit = 5
    smtp_mx_session_limit = 2
    smtp_never_send_ehlo = no
    smtp_pix_workaround_delay_time = 10s
    smtp_pix_workaround_threshold_time = 500s
    smtp_quit_timeout = 300s
    smtp_quote_rfc821_envelope = yes
    smtp_randomize_addresses = yes
    smtp_rcpt_timeout = 300s
    smtp_rset_timeout = 20s
    smtp_sasl_auth_enable = yes
    smtp_sasl_mechanism_filter = 
    smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
    smtp_sasl_path = 
    smtp_sasl_security_options = 
    smtp_sasl_tls_security_options = $smtp_sasl_security_options
    smtp_sasl_tls_verified_security_options = $smtp_sasl_tls_security_options
    smtp_sasl_type = cyrus
    smtp_send_xforward_command = no
    smtp_sender_dependent_authentication = no
    smtp_skip_5xx_greeting = yes
    smtp_skip_quit_response = yes
    smtp_starttls_timeout = 300s
    smtp_tls_CAfile = 
    smtp_tls_CApath = 
    smtp_tls_cert_file = 
    smtp_tls_dcert_file = 
    smtp_tls_dkey_file = $smtp_tls_dcert_file
    smtp_tls_enforce_peername = yes
    smtp_tls_exclude_ciphers = 
    smtp_tls_key_file = $smtp_tls_cert_file
    smtp_tls_loglevel = 0
    smtp_tls_mandatory_ciphers = medium
    smtp_tls_mandatory_exclude_ciphers = 
    smtp_tls_mandatory_protocols = SSLv3, TLSv1
    smtp_tls_note_starttls_offer = no
    smtp_tls_per_site = 
    smtp_tls_policy_maps = 
    smtp_tls_scert_verifydepth = 5
    smtp_tls_secure_cert_match = nexthop, dot-nexthop
    smtp_tls_security_level = 
    smtp_tls_session_cache_database = 
    smtp_tls_session_cache_timeout = 3600s
    smtp_tls_verify_cert_match = hostname
    smtp_use_tls = no
    smtp_xforward_timeout = 300s
    smtpd_authorized_verp_clients = $authorized_verp_clients
    smtpd_authorized_xclient_hosts = 
    smtpd_authorized_xforward_hosts = 
    smtpd_banner = $myhostname ESMTP $mail_name
    smtpd_client_connection_count_limit = 50
    smtpd_client_connection_rate_limit = 0
    smtpd_client_event_limit_exceptions = ${smtpd_client_connection_limit_exceptions:$mynetworks}
    smtpd_client_message_rate_limit = 0
    smtpd_client_new_tls_session_rate_limit = 0
    smtpd_client_recipient_rate_limit = 0
    smtpd_client_restrictions = 
    smtpd_data_restrictions = 
    smtpd_delay_open_until_valid_rcpt = yes
    smtpd_delay_reject = yes
    smtpd_discard_ehlo_keyword_address_maps = 
    smtpd_discard_ehlo_keywords = 
    smtpd_end_of_data_restrictions = 
    smtpd_enforce_tls = no
    smtpd_error_sleep_time = 1s
    smtpd_etrn_restrictions = 
    smtpd_expansion_filter = \t\40!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~
    smtpd_forbidden_commands = CONNECT GET POST
    smtpd_hard_error_limit = 20
    smtpd_helo_required = no
    smtpd_helo_restrictions = 
    smtpd_history_flush_threshold = 100
    smtpd_junk_command_limit = 100
    smtpd_milters = 
    smtpd_noop_commands = 
    smtpd_null_access_lookup_key = <>
    smtpd_peername_lookup = yes
    smtpd_policy_service_max_idle = 300s
    smtpd_policy_service_max_ttl = 1000s
    smtpd_policy_service_timeout = 100s
    smtpd_proxy_ehlo = $myhostname
    smtpd_proxy_filter = 
    smtpd_proxy_timeout = 100s
    smtpd_recipient_limit = 1000
    smtpd_recipient_overshoot_limit = 1000
    smtpd_recipient_restrictions = permit_mynetworks, reject_unauth_destination
    smtpd_reject_unlisted_recipient = yes
    smtpd_reject_unlisted_sender = no
    smtpd_restriction_classes = 
    smtpd_sasl_auth_enable = no
    smtpd_sasl_authenticated_header = no
    smtpd_sasl_exceptions_networks = 
    smtpd_sasl_local_domain = 
    smtpd_sasl_path = private/auth
    smtpd_sasl_security_options = noanonymous
    smtpd_sasl_tls_security_options = $smtpd_sasl_security_options
    smtpd_sasl_type = dovecot
    smtpd_sender_login_maps = 
    smtpd_sender_restrictions = 
    smtpd_soft_error_limit = 10
    smtpd_starttls_timeout = 300s
    smtpd_timeout = 300s
    smtpd_tls_CAfile = 
    smtpd_tls_CApath = 
    smtpd_tls_always_issue_session_ids = yes
    smtpd_tls_ask_ccert = no
    smtpd_tls_auth_only = no
    smtpd_tls_ccert_verifydepth = 5
    smtpd_tls_cert_file = 
    smtpd_tls_dcert_file = 
    smtpd_tls_dh1024_param_file = 
    smtpd_tls_dh512_param_file = 
    smtpd_tls_dkey_file = $smtpd_tls_dcert_file
    smtpd_tls_exclude_ciphers = 
    smtpd_tls_key_file = $smtpd_tls_cert_file
    smtpd_tls_loglevel = 0
    smtpd_tls_mandatory_ciphers = medium
    smtpd_tls_mandatory_exclude_ciphers = 
    smtpd_tls_mandatory_protocols = SSLv3, TLSv1
    smtpd_tls_received_header = no
    smtpd_tls_req_ccert = no
    smtpd_tls_security_level = 
    smtpd_tls_session_cache_database = 
    smtpd_tls_session_cache_timeout = 3600s
    smtpd_tls_wrappermode = no
    smtpd_use_tls = no
    soft_bounce = no
    stale_lock_time = 500s
    strict_7bit_headers = no
    strict_8bitmime = no
    strict_8bitmime_body = no
    strict_mime_encoding_domain = no
    strict_rfc821_envelopes = no
    sun_mailtool_compatibility = no
    swap_bangpath = yes
    syslog_facility = mail
    syslog_name = postfix
    tls_daemon_random_bytes = 32
    tls_export_cipherlist = ALL:+RC4:@STRENGTH
    tls_high_cipherlist = !EXPORT:!LOW:!MEDIUM:ALL:+RC4:@STRENGTH
    tls_low_cipherlist = !EXPORT:ALL:+RC4:@STRENGTH
    tls_medium_cipherlist = !EXPORT:!LOW:ALL:+RC4:@STRENGTH
    tls_null_cipherlist = !aNULL:eNULL+kRSA
    tls_random_bytes = 32
    tls_random_exchange_name = ${config_directory}/prng_exch
    tls_random_prng_update_period = 3600s
    tls_random_reseed_period = 3600s
    tls_random_source = dev:/dev/urandom
    trace_service_name = trace
    transport_maps = 
    transport_retry_time = 60s
    trigger_timeout = 10s
    undisclosed_recipients_header = To: undisclosed-recipients:;
    unknown_address_reject_code = 450
    unknown_client_reject_code = 450
    unknown_hostname_reject_code = 450
    unknown_local_recipient_reject_code = 550
    unknown_relay_recipient_reject_code = 550
    unknown_virtual_alias_reject_code = 550
    unknown_virtual_mailbox_reject_code = 550
    unverified_recipient_reject_code = 450
    unverified_sender_reject_code = 450
    verp_delimiter_filter = -=+
    virtual_alias_domains = $virtual_alias_maps
    virtual_alias_expansion_limit = 1000
    virtual_alias_maps = $virtual_maps
    virtual_alias_recursion_limit = 1000
    virtual_destination_concurrency_limit = $default_destination_concurrency_limit
    virtual_destination_recipient_limit = $default_destination_recipient_limit
    virtual_gid_maps = 
    virtual_mailbox_base = 
    virtual_mailbox_domains = $virtual_mailbox_maps
    virtual_mailbox_limit = 51200000
    virtual_mailbox_lock = fcntl
    virtual_mailbox_maps = 
    virtual_minimum_uid = 100
    virtual_transport = virtual
    virtual_uid_maps = 
    [root@mx3 dovecot]# 
    
    My dovecot.conf
    Code:
    ## Dovecot configuration file
    
    
    # Protocols we want to be serving: imap imaps pop3 pop3s
    # If you only want to use dovecot-auth, you can set this to "none".
    #protocols = imap imaps pop3 pop3s
    
    # IP or host address where to listen in for connections. It's not currently
    # possible to specify multiple addresses. "*" listens in all IPv4 interfaces.
    # "[::]" listens in all IPv6 interfaces, but may also listen in all IPv4
    # interfaces depending on the operating system.
    #
    # If you want to specify ports for each service, you will need to configure
    # these settings inside the protocol imap/pop3 { ... } section, so you can
    # specify different ports for IMAP/POP3. For example:
    #   protocol imap {
    #     listen = *:10143
    #     ssl_listen = *:10943
    #     ..
    #   }
    #   protocol pop3 {
    #     listen = *:10100
    #     ..
    #   }
    #listen = [::]
    
    log_path = /var/log/dovecot/error.log
    
    # Log file to use for informational and debug messages.
    # Default is the same as log_path.
    info_log_path = /var/log/dovecot/info.log
    
    # Prefix for each line written to log file. % codes are in strftime(3)
    # format.
    #log_timestamp = "%b %d %H:%M:%S "
    
    # Disable SSL/TLS support.
    #ssl_disable = no
    ssl_disable = yes
    
    # Set max. process size in megabytes. If you don't use
    # login_process_per_connection you might need to grow this.
    login_process_size = 64
    
    # Space-separated list of elements we want to log. The elements which have
    # a non-empty variable value are joined together to form a comma-separated
    # string.
    #login_log_format_elements = user=<%u> method=%m rip=%r lip=%l %c
    
    # Login log format. %$ contains login_log_format_elements string, %s contains
    # the data we want to log.
    #login_log_format = %$: %s
    
    ##
    ## Mailbox locations and namespaces
    ##
    
    # Location for users' mailboxes. This is the same as the old default_mail_env
    # setting. The default is empty, which means that Dovecot tries to find the
    # mailboxes automatically. This won't work if the user doesn't have any mail
    # yet, so you should explicitly tell Dovecot the full location.
    #
    # If you're using mbox, giving a path to the INBOX file (eg. /var/mail/%u)
    # isn't enough. You'll also need to tell Dovecot where the other mailboxes are
    # kept. This is called the "root mail directory", and it must be the first
    # path given in the mail_location setting.
    #
    # There are a few special variables you can use, eg.:
    #
    #   %u - username
    #   %n - user part in user@domain, same as %u if there's no domain
    #   %d - domain part in user@domain, empty if there's no domain
    #   %h - home directory
    #
    # See doc/wiki/Variables.txt for full list. Some examples:
    #
    #   mail_location = maildir:~/Maildir
    #   mail_location = mbox:~/mail:INBOX=/var/mail/%u
    #   mail_location = mbox:/var/mail/%d/%1n/%n:INDEX=/var/indexes/%d/%1n/%n
    #
    # <doc/wiki/MailLocation.txt>
    #
    #mail_location = 
    
    
    # Save mails with CR+LF instead of plain LF. This makes sending those mails
    # take less CPU, especially with sendfile() syscall with Linux and FreeBSD.
    # But it also creates a bit more disk I/O which may just make it slower.
    # Also note that if other software reads the mboxes/maildirs, they may handle
    # the extra CRs wrong and cause problems.
    #mail_save_crlf = no
    
    ##
    ## Maildir-specific settings
    ##
    
    ##
    ## mbox-specific settings
    ##
    
    # Which locking methods to use for locking mbox. There are four available:
    #  dotlock: Create <mailbox>.lock file. This is the oldest and most NFS-safe
    #           solution. If you want to use /var/mail/ like directory, the users
    #           will need write access to that directory.
    #  fcntl  : Use this if possible. Works with NFS too if lockd is used.
    #  flock  : May not exist in all systems. Doesn't work with NFS.
    #  lockf  : May not exist in all systems. Doesn't work with NFS.
    #
    # You can use multiple locking methods; if you do the order they're declared
    # in is important to avoid deadlocks if other MTAs/MUAs are using multiple
    # locking methods as well. Some operating systems don't allow using some of
    # them simultaneously.
    #mbox_read_locks = fcntl
    #mbox_write_locks = fcntl
    
    # Maximum time in seconds to wait for lock (all of them) before aborting.
    #mbox_lock_timeout = 300
    
    # If dotlock exists but the mailbox isn't modified in any way, override the
    # lock file after this many seconds.
    #mbox_dotlock_change_timeout = 120
    
    
    # Like mbox_dirty_syncs, but don't do full syncs even with SELECT, EXAMINE,
    # EXPUNGE or CHECK commands. If this is set, mbox_dirty_syncs is ignored.
    #mbox_very_dirty_syncs = no
    
    # Delay writing mbox headers until doing a full write sync (EXPUNGE and CHECK
    # commands and when closing the mailbox). This is especially useful for POP3
    # where clients often delete all mails. The downside is that our changes
    # aren't immediately visible to other MUAs.
    #mbox_lazy_writes = yes
    
    # If mbox size is smaller than this (in kilobytes), don't write index files.
    # If an index file already exists it's still read, just not updated.
    #mbox_min_index_size = 0
    
    ##
    ## dbox-specific settings
    ##
    
    # Maximum dbox file size in kilobytes until it's rotated.
    #dbox_rotate_size = 2048
    
    # Minimum dbox file size in kilobytes before it's rotated
    # (overrides dbox_rotate_days)
    #dbox_rotate_min_size = 16
    
    # Maximum dbox file age in days until it's rotated. Day always begins from
    # midnight, so 1 = today, 2 = yesterday, etc. 0 = check disabled.
    #dbox_rotate_days = 0
    
    ##
    ## IMAP specific settings
    ##
    
    protocol imap {
      # Login executable location.
      #login_executable = /usr/libexec/dovecot/imap-login
    
      # IMAP executable location. Changing this allows you to execute other
      # binaries before the imap process is executed.
      #
      # This would write rawlogs into ~/dovecot.rawlog/ directory:
      #   mail_executable = /usr/libexec/dovecot/rawlog /usr/libexec/dovecot/imap
      #
      # This would attach gdb into the imap process and write backtraces into
      # /tmp/gdbhelper.* files:
      #   mail_executable = /usr/libexec/dovecot/gdbhelper /usr/libexec/dovecot/imap
      #
      #mail_executable = /usr/libexec/dovecot/imap
    
      # Maximum IMAP command line length in bytes. Some clients generate very long
      # command lines with huge mailboxes, so you may need to raise this if you get
      # "Too long argument" or "IMAP command line too large" errors often.
      #imap_max_line_length = 65536
    
      # Support for dynamically loadable plugins. mail_plugins is a space separated
      # list of plugins to load.
      #mail_plugins = 
      #mail_plugin_dir = /usr/lib/dovecot/imap
    
      # Send IMAP capabilities in greeting message. This makes it unnecessary for
      # clients to request it with CAPABILITY command, so it saves one round-trip.
      # Many clients however don't understand it and ask the CAPABILITY anyway.
      #login_greeting_capability = no
    
      # Override the IMAP CAPABILITY response.
      #imap_capability = 
    
    }
      
    ##
    ## POP3 specific settings
    ##
    
    protocol pop3 {
      # Login executable location.
      #login_executable = /usr/libexec/dovecot/pop3-login
    
      # POP3 executable location. See IMAP's mail_executable above for examples
      # how this could be changed.
      #mail_executable = /usr/libexec/dovecot/pop3
    
      # Don't try to set mails non-recent or seen with POP3 sessions. This is
      # mostly intended to reduce disk I/O. With maildir it doesn't move files
      # from new/ to cur/, with mbox it doesn't write Status-header.
      #pop3_no_flag_updates = no
    
      # Support LAST command which exists in old POP3 specs, but has been removed
      # from new ones. Some clients still wish to use this though. Enabling this
      # makes RSET command clear all \Seen flags from messages.
      #pop3_enable_last = no
    
      # If mail has X-UIDL header, use it as the mail's UIDL.
      #pop3_reuse_xuidl = no
    
      # Keep the mailbox locked for the entire POP3 session.
      #pop3_lock_session = no
    
      # POP3 logout format string:
      #  %t - number of TOP commands
      #  %p - number of bytes sent to client as a result of TOP command
      #  %r - number of RETR commands
      #  %b - number of bytes sent to client as a result of RETR command
      #  %d - number of deleted messages
      #  %m - number of messages (before deletion)
      #  %s - mailbox size in bytes (before deletion)
      #pop3_logout_format = top=%t/%p, retr=%r/%b, del=%d/%m, size=%s
    
      # Support for dynamically loadable plugins. mail_plugins is a space separated
      # list of plugins to load.
      #mail_plugins = 
      #mail_plugin_dir = /usr/lib/dovecot/pop3
    
      # Workarounds for various client bugs:
      #   outlook-no-nuls:
      #     Outlook and Outlook Express hang if mails contain NUL characters.
      #     This setting replaces them with 0x80 character.
      #   oe-ns-eoh:
      #     Outlook Express and Netscape Mail breaks if end of headers-line is
      #     missing. This option simply sends it if it's missing.
      # The list is space-separated.
      #pop3_client_workarounds = 
    }
    
    ##
    ## LDA specific settings
    ##
    
    protocol lda {
      # Address to use when sending rejection mails.
      postmaster_address = [email protected]
    
      # Hostname to use in various parts of sent mails, eg. in Message-Id.
      # Default is the system's real hostname.
      #hostname = 
    
      # Support for dynamically loadable plugins. mail_plugins is a space separated
      # list of plugins to load.
      #mail_plugins = 
      #mail_plugin_dir = /usr/lib/dovecot/lda
    
      # Binary to use for sending mails.
      #sendmail_path = /usr/lib/sendmail
    
      # UNIX socket path to master authentication server to find users.
      #auth_socket_path = /var/run/dovecot/auth-master
    }
    
    ##
    ## Authentication processes
    ##
    
    # Executable location
    #auth_executable = /usr/libexec/dovecot/dovecot-auth
    
    # Set max. process size in megabytes.
    #auth_process_size = 256
    
    auth_username_format="%Ld_%Ln"
    
    # If you want to allow master users to log in by specifying the master
    # username within the normal username string (ie. not using SASL mechanism's
    # support for it), you can specify the separator character here. The format
    # is then <username><separator><master username>. UW-IMAP uses "*" as the
    # separator, so that could be a good choice.
    #auth_master_user_separator =
    
    # Username to use for users logging in with ANONYMOUS SASL mechanism
    #auth_anonymous_username = anonymous
    
    # More verbose logging. Useful for figuring out why authentication isn't
    # working.
    #auth_verbose = no
    
    # Even more verbose logging for debugging purposes. Shows for example SQL
    # queries.
    #auth_debug = no
    
    # In case of password mismatches, log the passwords and used scheme so the
    # problem can be debugged. Requires auth_debug=yes to be set.
    #auth_debug_passwords = no
    
    # Maximum number of dovecot-auth worker processes. They're used to execute
    # blocking passdb and userdb queries (eg. MySQL and PAM). They're
    # automatically created and destroyed as needed.
    #auth_worker_max_count = 30
    
    # Host name to use in GSSAPI principal names. The default is to use the
    # name returned by gethostname().
    #auth_gssapi_hostname =
    
    # Kerberos keytab to use for the GSSAPI mechanism. Will use the system 
    # default (usually /etc/krb5.keytab) if not specified.
    #auth_krb5_keytab = 
    
    auth default {
      # Space separated list of wanted authentication mechanisms:
      #   plain login digest-md5 cram-md5 ntlm rpa apop anonymous gssapi
      # NOTE: See also disable_plaintext_auth setting.
      mechanisms = plain
    
      #
      # Password database is used to verify user's password (and nothing more).
      # You can have multiple passdbs and userdbs. This is useful if you want to
      # allow both system users (/etc/passwd) and virtual users to login without
      # duplicating the system users into virtual database.
      #
      # <doc/wiki/PasswordDatabase.txt>
      #
      # By adding master=yes setting inside a passdb you make the passdb a list
      # of "master users", who can log in as anyone else. Unless you're using PAM,
      # you probably still want the destination user to be looked up from passdb
      # that it really exists. This can be done by adding pass=yes setting to the
      # master passdb. <doc/wiki/Authentication.MasterUsers.txt>
    
      # Users can be temporarily disabled by adding a passdb with deny=yes.
      # If the user is found from that database, authentication will fail.
      # The deny passdb should always be specified before others, so it gets
      # checked first. Here's an example:
    
      #passdb passwd-file {
        # File contains a list of usernames, one per line
        #args = /etc/dovecot.deny
        #deny = yes
      #}
    
      }
    
      # System users (NSS, /etc/passwd, or similiar)
      # In many systems nowadays this uses Name Service Switch, which is
      # configured in /etc/nsswitch.conf. <doc/wiki/AuthDatabase.Passwd.txt>
      #passdb passwd {
        # [blocking=yes] - See userdb passwd for explanation
        #args = 
      #}
    
      # Shadow passwords for system users (NSS, /etc/shadow or similiar).
      # Deprecated by PAM nowadays.
      # <doc/wiki/PasswordDatabase.Shadow.txt>
      #passdb shadow {
        # [blocking=yes] - See userdb passwd for explanation
        #args = 
      #}
    
      # PAM-like authentication for OpenBSD.
      # <doc/wiki/PasswordDatabase.BSDAuth.txt>
      #passdb bsdauth {
        # [cache_key=<key>] - See cache_key in PAM for explanation.
        #args =
      #}
    
      # passwd-like file with specified location
      # <doc/wiki/AuthDatabase.PasswdFile.txt>
      #passdb passwd-file {
        # Path for passwd-file
        #args = 
      #}
    
      # checkpassword executable authentication
      # NOTE: You will probably want to use "userdb prefetch" with this.
      # <doc/wiki/PasswordDatabase.CheckPassword.txt>
      #passdb checkpassword {
        # Path for checkpassword binary
        #args = 
      #}
    
      # SQL database <doc/wiki/AuthDatabase.SQL.txt>
      #passdb sql {
        # Path for SQL configuration file, see doc/dovecot-sql-example.conf
        #args = 
      #}
    
      # LDAP database <doc/wiki/AuthDatabase.LDAP.txt>
      #passdb ldap {
        # Path for LDAP configuration file, see doc/dovecot-ldap-example.conf
        #args = 
      #}
    
      # vpopmail authentication <doc/wiki/AuthDatabase.VPopMail.txt>
      #passdb vpopmail {
        # [cache_key=<key>] - See cache_key in PAM for explanation.
        #args =
      #}
    
      #
      # User database specifies where mails are located and what user/group IDs
      # own them. For single-UID configuration use "static".
      #
      # <doc/wiki/UserDatabase.txt>
      #
    
      # System users (NSS, /etc/passwd, or similiar). In many systems nowadays this
      # uses Name Service Switch, which is configured in /etc/nsswitch.conf.
      # <doc/wiki/AuthDatabase.Passwd.txt>
      userdb passwd {
        # [blocking=yes] - By default the lookups are done in the main dovecot-auth
        # process. This setting causes the lookups to be done in auth worker
        # proceses. Useful with remote NSS lookups that may block.
        # NOTE: Be sure to use this setting with nss_ldap or users might get
        # logged in as each others!
        #args = 
      }
    
      # passwd-like file with specified location
      # <doc/wiki/AuthDatabase.PasswdFile.txt>
      #userdb passwd-file {
        # Path for passwd-file
        #args =
      #}
    
    
      # User to use for the process. This user needs access to only user and
      # password databases, nothing else. Only shadow and pam authentication
      # requires roots, so use something else if possible. Note that passwd
      # authentication with BSDs internally accesses shadow files, which also
      # requires roots. Note that this user is NOT used to access mails.
      # That user is specified by userdb above.
      user = root
    
    }
    
    # If you wish to use another authentication server than dovecot-auth, you can
    # use connect sockets. They are assumed to be already running, Dovecot's master
    # process only tries to connect to them. They don't need any other settings
    # than the path for the master socket, as the configuration is done elsewhere.
    # Note that the client sockets must exist in the login_dir.
    #auth external {
    #  socket connect {
    #    master {
    #      path = /var/run/dovecot/auth-master
    #    }
    #  }
    #}
    
    
    
    dict {
      #quota = mysql:/etc/dovecot-dict-quota.conf 
    }
    
    ##
    ## Plugin settings
    ##
    
    plugin {
    }
    
    Logs:
    Code:
    dovecot: Sep 24 13:32:37 Info: Dovecot v1.0.7 starting up
    dovecot: Sep 24 13:32:51 Info: pop3-login: Disconnected: rip=10.10.200.60, lip=10.10.200.100
    dovecot: Sep 24 13:33:21 Info: pop3-login: Disconnected: user=<_jmarcus>, method=PLAIN, rip=10.10.200.60, lip=10.10.200.100
    dovecot: Sep 24 13:33:27 Info: pop3-login: Disconnected: user=<_jmarcus>, method=PLAIN, rip=10.10.200.60, lip=10.10.200.100
    
    I have mail in my home directory, but can't seem to get POP working.

    I'm running CentOS 5.3 with SELINUX disabled. Any thoughts?

    thanks,
    James
     

Share This Page