On Thu, 16 May 2013 11:15:12 +0200, Lars =?UTF-8?B?VMOkdWJlcg==?= writes:
schau doch mal, ob alle notwendigen Bibliotheken in der chroot-Umgebung vorhanden sind und die richtigen Rechte haben.
$ ldd /path/to/smtpd
Davon gibt's nur 2 im chroot (libresolv.so.2, libc.so.6), die restlichen 15 nicht.
Vergleiche ich das mit dem chroot auf einer anderen Kiste, auch Debian Wheezy/amd64, finde ich keinen Unterschied: find /var/spool/postfix/lib/x86_64-linux-gnu/ -type f | sort | xargs md5sum >/tmp/x2
Für die Rejections ist doch der smtpd zuständig, oder?
Das sagen zumindest das Log und auch strace.
Aber ich bin der Sache nun naeher: ein `ln -s x86_64-linux-gnu x86_64` in /var/spool/postfix/lib, und das Reverse-Lookup geht wieder. Stutzig gemacht hat mich: 13099 open("/lib64/tls/x86_64/libnss_dns.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) 13099 open("/lib64/tls/libnss_dns.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) 13099 open("/lib64/x86_64/libnss_dns.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) 13099 open("/lib64/libnss_dns.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) 13099 open("/usr/lib64/tls/x86_64/libnss_dns.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) 13099 open("/usr/lib64/tls/libnss_dns.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) 13099 open("/usr/lib64/x86_64/libnss_dns.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) 13099 open("/usr/lib64/libnss_dns.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) 13099 open("/lib/tls/x86_64/libnss_dns.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) 13099 open("/lib/tls/libnss_dns.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) 13099 open("/lib/x86_64/libnss_dns.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) 13099 open("/lib/libnss_dns.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) 13099 open("/usr/lib/tls/x86_64/libnss_dns.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) 13099 open("/usr/lib/tls/libnss_dns.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) 13099 open("/usr/lib/x86_64/libnss_dns.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) 13099 open("/usr/lib/libnss_dns.so.2", O_RDONLY) = -1 ENOENT (No such file or directory)
Wobei ich noch dahinterkommen muss, warum der nicht in x86_64-linux-gnu sucht im chroot... (warum's so hinkopiert wird, ist nach kurzem Blick ins chroot-Setup klar).
cheers, &rw