Fatal: unknown service: //tcp

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

Fatal: unknown service: //tcp

mailinglisten-2
Hi,

bislang habe ich alle Postfix-Instanzen sauber hinbekommen, auf einem
neuen Server, der zukünftig als Backup dienen soll, habe ich aber ein
Problem. Alle Nachrichten, bei denen die Domain nicht explizit in der
Transport angegeben ist, können mit dem Fehler:

|  postfix/smtp[1803]: fatal: unknown service: //tcp

nicht weiterverarbeitet werden. Google hilft leider nicht weiter, dort
ist immer nur der Fehler unknown service smtp/tcp beschrieben, was hier
aber nicht zutrifft.

Wo liegt das Problem?

Danke für die Hilfe!
Andreas


 # postconf -nf
alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
append_dot_mydomain = no
biff = no
compatibility_level = 2
defer_code = 451
inet_interfaces = all
inet_protocols = all
mailbox_size_limit = 0
milter_default_action = accept
milter_protocol = 6
mydestination =
myhostname = mail2.example.com
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
myorigin = /etc/mailname
non_smtpd_milters = unix:/var/run/opendkim/opendkim.sock,
    unix:/var/run/opendmarc/opendmarc.sock
postscreen_access_list = permit_mynetworks,
    cidr:/etc/postfix/postscreen_access.cidr
postscreen_cache_map = proxy:btree:/var/lib/postfix/postscreen_cache
postscreen_dnsbl_action = enforce
postscreen_dnsbl_max_ttl = 300s
postscreen_dnsbl_reply_map = texthash:/etc/postfix/dnsbl_reply
postscreen_dnsbl_sites = bl.spamcop.net*2 ix.dnsbl.manitu.net*3
    hostkarma.junkemailfilter.com=127.0.0.2*2 dnsbl-1.uceprotect.net*2
    psbl.surriel.com*2 rep.mailspike.net=127.0.0.[10;11;12]*2
    rep.mailspike.net=127.0.0.[13;14] list.dnswl.org*-2
postscreen_dnsbl_threshold = 4
postscreen_enforce_tls = $smtpd_enforce_tls
postscreen_greet_action = enforce
postscreen_use_tls = $smtpd_use_tls
readme_directory = no
recipient_delimiter = +
relay_domains = example.com
relay_recipient_maps = texthash:/home/mastermailer/mailaddresses
relayhost = hash:/
relocated_maps = hash:/etc/postfix/relocated
smtp_dns_support_level = dnssec
smtp_tls_CAfile = /etc/postfix/CAcert.pem
smtp_tls_cert_file = /etc/ssl/private/myown.fullchain
smtp_tls_exclude_ciphers = aNULL, eNULL, EXP, MD5, IDEA, KRB5, RC2,
SEED, SRP
smtp_tls_key_file = /etc/ssl/private/myown.key
smtp_tls_loglevel = 1
smtp_tls_mandatory_protocols = !SSLv2, !SSLv3
smtp_tls_protocols = !SSLv2, !SSLv3
smtp_tls_security_level = dane
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtp_use_tls = yes
smtpd_banner = mail2.example.com ESMTP
smtpd_milters = unix:/var/run/opendkim/opendkim.sock,
    unix:/var/run/opendmarc/opendmarc.sock, inet:localhost:10023
smtpd_recipient_restrictions = reject_unknown_sender_domain,
    reject_non_fqdn_sender, reject_non_fqdn_recipient, permit_mynetworks,
    permit_sasl_authenticated, reject_unlisted_recipient,
check_recipient_access
    hash:/etc/postfix/recipient_checks, reject_unauth_pipelining,
    reject_unknown_recipient_domain, check_client_access
    cidr:/etc/postfix/client_checks_blacklist_cidr, check_sender_access
    hash:/etc/postfix/sender_access, check_client_access
    hash:/etc/postfix/client_checks_blacklist, check_sender_mx_access
    cidr:/etc/postfix/bogus_mx, reject_unauth_destination,
check_client_access
    hash:/etc/postfix/client_checks_whitelist, reject_unknown_client,
    reject_invalid_hostname
smtpd_relay_restrictions = reject_unknown_sender_domain,
reject_non_fqdn_sender,
    reject_non_fqdn_recipient, permit_mynetworks, permit_sasl_authenticated,
    reject_unlisted_recipient, check_recipient_access
    hash:/etc/postfix/recipient_checks, check_client_access
    hash:/etc/postfix/backupmx, reject_unauth_pipelining,
    reject_unknown_recipient_domain, check_client_access
    cidr:/etc/postfix/client_checks_blacklist_cidr, check_sender_access
    hash:/etc/postfix/sender_access, check_client_access
    hash:/etc/postfix/client_checks_blacklist, check_sender_mx_access
    cidr:/etc/postfix/bogus_mx, reject_unauth_destination,
check_client_access
    hash:/etc/postfix/client_checks_whitelist, reject_unknown_client,
    reject_invalid_hostname
smtpd_tls_auth_only = yes
smtpd_tls_cert_file = /etc/ssl/private/myown.fullchain
smtpd_tls_dh1024_param_file = /etc/ssl/ssl_dhparams.pem
smtpd_tls_eecdh_grade = ultra
smtpd_tls_exclude_ciphers = aNULL, eNULL, EXPORT, DES, RC4, MD5, PSK, aECDH,
    EDH-DSS-DES-CBC3-SHA, EDH-RSA-DES-CDC3-SHA, KRB5-DE5, CBC3-SHA
smtpd_tls_key_file = /etc/ssl/private/myown.key
smtpd_tls_loglevel = 1
smtpd_tls_mandatory_protocols = !SSLv2, !SSLv3
smtpd_tls_protocols = !SSLv2, !SSLv3
smtpd_tls_received_header = yes
smtpd_tls_security_level = may
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtpd_use_tls = yes
soft_bounce = yes
tls_append_default_CA = yes
tls_high_cipherlist =
   
EDH+CAMELLIA:EDH+aRSA:EECDH+aRSA+AESGCM:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH:+CAMELLIA256:+AES256:+CAMELLIA128:+AES128:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!DSS:!RC4:!SEED:!ECDSA:CAMELLIA256-SHA:AES256-SHA:CAMELLIA128-SHA:AES128-SHA
tls_medium_cipherlist = !aNULL:-aNULL:ALL:!EXPORT:!LOW:+RC4:@STRENGTH
transport_maps = hash:/etc/postfix/transport
unknown_address_reject_code = 554
unknown_client_reject_code = 554
unknown_hostname_reject_code = 554
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 = 550
unverified_sender_reject_code = 450

# postconf -Mf
127.0.0.1:smtp inet n    -       n       -       -       smtpd
    -o content_filter=
::1:smtp   inet  n       -       n       -       -       smtpd
    -o content_filter=
(myIPv4):smtp inet n  -       y       -       1       postscreen
(myIPv6):smtp inet n - y -       1       postscreen
    -o postscreen_cache_map=/var/lib/postfix/postfix_postscreen_cache_ipv6
smtpd      pass  -       -       n       -       -       smtpd
dnsblog    unix  -       -       n       -       0       dnsblog
tlsproxy   unix  -       -       n       -       0       tlsproxy
smtp-amavis unix -       -       n       -       2       smtp
    -o smtp_data_done_timeout=1200
    -o smtp_send_xforward_command=yes
    -o disable_dns_lookups=yes
127.0.0.1:10025 inet n   -       n       -       -       smtpd
    -o content_filter=
    -o smtpd_milters=unix:/var/run/opendkim/opendkim.sock
    -o non_smtpd_milters=unix:/var/run/opendkim/opendkim.sock
pickup     unix  n       -       n       60      1       pickup
cleanup    unix  n       -       n       -       0       cleanup
qmgr       unix  n       -       n       300     1       qmgr
tlsmgr     unix  -       -       n       1000?   1       tlsmgr
rewrite    unix  -       -       n       -       -       trivial-rewrite
bounce     unix  -       -       n       -       0       bounce
defer      unix  -       -       n       -       0       bounce
trace      unix  -       -       n       -       0       bounce
verify     unix  -       -       n       -       1       verify
flush      unix  n       -       n       1000?   0       flush
proxymap   unix  -       -       n       -       -       proxymap
proxywrite unix  -       -       n       -       1       proxymap
smtp       unix  -       -       n       -       -       smtp
    -o smtp_bind_address=(myIPv4)
    -o smtp_bind_address6=(myIPv6)
    -o smtp_helo_name=mail2.example.com
relay      unix  -       -       n       -       -       smtp
showq      unix  n       -       n       -       -       showq
error      unix  -       -       n       -       -       error
retry      unix  -       -       n       -       -       error
discard    unix  -       -       n       -       -       discard
local      unix  -       n       n       -       -       local
virtual    unix  -       n       n       -       -       virtual
lmtp       unix  -       -       n       -       -       lmtp
anvil      unix  -       -       n       -       1       anvil
scache     unix  -       -       n       -       1       scache
maildrop   unix  -       n       n       -       -       pipe flags=DRhu
    user=vmail argv=/usr/bin/maildrop -d ${recipient}
uucp       unix  -       n       n       -       -       pipe flags=Fqhu
    user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient)
ifmail     unix  -       n       n       -       -       pipe flags=F
user=ftn
    argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient)
bsmtp      unix  -       n       n       -       -       pipe flags=Fq.
    user=bsmtp argv=/usr/lib/bsmtp/bsmtp -t$nexthop -f$sender $recipient
scalemail-backend unix - n       n       -       2       pipe flags=R
    user=scalemail argv=/usr/lib/scalemail/bin/scalemail-store ${nexthop}
    ${user} ${extension}
mailman    unix  -       n       n       -       -       pipe flags=FR
    user=list argv=/usr/lib/mailman/bin/postfix-to-mailman.py ${nexthop}
    ${user}

Reply | Threaded
Open this post in threaded view
|

Re: Fatal: unknown service: //tcp

Winfried Neessen
Hi Andreas,

Am 12.02.2018 um 12:11 schrieb Andreas Pothe <[hidden email]>:

> |  postfix/smtp[1803]: fatal: unknown service: //tcp
>

,---[ grep -r 'unknown service' * ]
| src/util/find_inet.c:    msg_fatal("unknown service: %s/%s", service, protocol);
`---

Mein Tipp waere, dass Du tcpwrappers nutzt und der inetd irgendwie falsch konfiguriert ist.


Winni

signature.asc (849 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Fatal: unknown service: //tcp

Winfried Neessen
Hi again,

Am 12.02.2018 um 13:07 schrieb Winfried Neessen <[hidden email]>:

> ,---[ grep -r 'unknown service' * ]
> | src/util/find_inet.c:    msg_fatal("unknown service: %s/%s", service, protocol);
> `---
>
> Mein Tipp waere, dass Du tcpwrappers nutzt und der inetd irgendwie falsch konfiguriert ist.

Da hab ich wohl ein "d" zuviel gelesen. Die Funktion in der der fatal-error auftritt hat nichts
mit inetd/tcpwrappers zu tun:

,---
| /* find_inet_port - translate numerical or symbolic service name */
|
| int     find_inet_port(const char *service, const char *protocol)
| {
|     struct servent *sp;
|     int     port;
|
|     if (alldig(service) && (port = atoi(service)) != 0) {
|         if (port < 0 || port > 65535)
|             msg_fatal("bad port number: %s", service);
|         return (htons(port));
|     } else {
|         if ((sp = getservbyname(service, protocol)) == 0)
|             msg_fatal("unknown service: %s/%s", service, protocol);
|         return (sp->s_port);
|     }
| }
`---

Winni

signature.asc (849 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Fatal: unknown service: //tcp

Winfried Neessen
Hi,

so... jetzt hatte ich ein wenig Zeit mir den Code genau durchzulesen.

> ,---
> | /* find_inet_port - translate numerical or symbolic service name */
> |
> | int     find_inet_port(const char *service, const char *protocol)
> | {
> |     struct servent *sp;
> |     int     port;
> |
> |     if (alldig(service) && (port = atoi(service)) != 0) {
> |         if (port < 0 || port > 65535)
> |             msg_fatal("bad port number: %s", service);
> |         return (htons(port));
> |     } else {
> |         if ((sp = getservbyname(service, protocol)) == 0)
> |             msg_fatal("unknown service: %s/%s", service, protocol);
> |         return (sp->s_port);
> |     }
> | }
> `---
Der Fehler wird geworfen, wenn getservbyname() fehlschlaegt. Und getservbyname()
liest den Service in Frage aus der /etc/services aus. Mein Tipp waere, dass Deine
Postfix Instanz im chroot() laeuft und die /etc/services nicht sauber nach /var/spool/postfix/etc
kopiert wurde oder die services Datei darin korrupt ist.


Winni

signature.asc (849 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Fatal: unknown service: //tcp

mailinglisten-2
Hi,


Am 12.02.2018 um 20:00 schrieb Winfried Neessen:
> Hi,
>
> so... jetzt hatte ich ein wenig Zeit mir den Code genau durchzulesen.
Erstmal Danke für die Mühe.
>
> Der Fehler wird geworfen, wenn getservbyname() fehlschlaegt. Und getservbyname()
> liest den Service in Frage aus der /etc/services aus. Mein Tipp waere, dass Deine
> Postfix Instanz im chroot() laeuft und die /etc/services nicht sauber nach /var/spool/postfix/etc
> kopiert wurde oder die services Datei darin korrupt ist.
>
Selbst ein erneutes dahin kopieren löst das Problem nicht :(
CU
Andreas
Reply | Threaded
Open this post in threaded view
|

Re: Fatal: unknown service: //tcp

Winfried Neessen
Hi,

Am 12.02.2018 um 20:18 schrieb Andreas Pothe <[hidden email]>:

>> Der Fehler wird geworfen, wenn getservbyname() fehlschlaegt. Und getservbyname()
>> liest den Service in Frage aus der /etc/services aus. Mein Tipp waere, dass Deine
>> Postfix Instanz im chroot() laeuft und die /etc/services nicht sauber nach /var/spool/postfix/etc
>> kopiert wurde oder die services Datei darin korrupt ist.
>>
> Selbst ein erneutes dahin kopieren löst das Problem nicht :(

,---
|     if ((sp = getservbyname(service, protocol)) == 0)
|         msg_fatal("unknown service: %s/%s", service, protocol);
`---

Ahja... Die Fehlermeldung ist "unknown service: //tcp", der Pointer "service" scheint also ein "/" zu
sein. Was ja vermutlich auch keinen Sinn ergibt. Wenn ich mir Deine Config angucke, springt mir
dann auch ein ungewohntes "/" ins Auge: "relayhost = hash:/". Das ist sicherlich nicht so gewollte,
oder?


Winni


signature.asc (849 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Fatal: unknown service: //tcp

mailinglisten-2
Hi,


Am 12.02.2018 um 20:28 schrieb Winfried Neessen:
>
> Ahja... Die Fehlermeldung ist "unknown service: //tcp", der Pointer "service" scheint also ein "/" zu
> sein. Was ja vermutlich auch keinen Sinn ergibt. Wenn ich mir Deine Config angucke, springt mir
> dann auch ein ungewohntes "/" ins Auge: "relayhost = hash:/". Das ist sicherlich nicht so gewollte,
> oder?
>
>
Huch, wie kommt das denn dahin? Aber Bingo: Genau das war es. Kaum
entfernt, schon funktioniert's! Wald, Bäume.
Vielen Dank und schönen Abend noch :)

Beste Grüße
Andreas