Exchange8BitMime » Cronologia » Versione 12
Simone Piccardi, 21-12-2010 12:25
| 1 | 1 | Amministratore Truelite | h1. Configurare Postfix per correggere un bug di Exchange per i messaggi 8BITMIME |
|---|---|---|---|
| 2 | 11 | Amministratore Truelite | |
| 3 | 12 | Simone Piccardi | Alcune versioni di Exchange hanno un'errata implementazione dell'RFC 1854 e crea dei problemi perché non sono in grado di accettare messaggi codificati con @8BITMIME@ pur annunciandone la possibilità dopo l'EHLO. |
| 4 | 11 | Amministratore Truelite | |
| 5 | 1 | Amministratore Truelite | Quando ricevono uno di questi messaggi i server smtp hanno quindi due opzioni: convertire il messaggio a 7 bit oppure segnalare un errore; exchange adotta quest'ultimo sistema. |
| 6 | 12 | Simone Piccardi | La soluzione è quindi di dire a postfix di non chiedere informazioni al server exchange dopo l'EHLO. In questo modo a postfix l'altro server risulterà impossibilitato ad accettare messaggi in @8BITMIME@ e farà lui stesso la conversione a 7 bit. |
| 7 | 1 | Amministratore Truelite | |
| 8 | Risulta comodo creare un transport apposito per i server che hanno questo problema, lasciando la piena funzionalità per tutti gli altri. |
||
| 9 | |||
| 10 | 12 | Simone Piccardi | In @/etc/postfix/master.cf@ bisogna copiare la riga che inizia e termina con _smtp_, rinominandola ed aggiungendo l'opzione opportuna: |
| 11 | |||
| 12 | 1 | Amministratore Truelite | <pre> |
| 13 | 11 | Amministratore Truelite | exchange unix - - - - - smtp -o smtp_never_send_ehlo=yes |
| 14 | 1 | Amministratore Truelite | </pre> |
| 15 | 11 | Amministratore Truelite | |
| 16 | 12 | Simone Piccardi | In @/etc/postfix/main.cf@ va indicato il file da usare come @transport_map@ con la direttiva: |
| 17 | |||
| 18 | 11 | Amministratore Truelite | <pre> |
| 19 | transport_maps = hash:/etc/postfix/transport |
||
| 20 | 1 | Amministratore Truelite | </pre> |
| 21 | |||
| 22 | 12 | Simone Piccardi | Infine, va creato il file @/etc/postfix/transport@ con contenuto: |
| 23 | |||
| 24 | 1 | Amministratore Truelite | <pre> |
| 25 | broken.site.tld exchange: |
||
| 26 | 11 | Amministratore Truelite | </pre> |
| 27 | 1 | Amministratore Truelite | |
| 28 | 12 | Simone Piccardi | È quindi necessario lanciare il comando |
| 29 | 1 | Amministratore Truelite | |
| 30 | 12 | Simone Piccardi | <pre> |
| 31 | postmap /etc/postfix/transport |
||
| 32 | </pre> |
||
| 33 | 11 | Amministratore Truelite | |
| 34 | 12 | Simone Piccardi | e poi riavviare postfix in modo che ricarichi la configurazione. |
| 35 | 11 | Amministratore Truelite | |
| 36 | 12 | Simone Piccardi | In questo modo postfix invierà tutta la posta per il dominio _broken.site.tld_ usando il transport che abbiamo creato e chiamato _exchange_, utilizzando quindi l'opzione @smtp_never_send_ehlo=yes@. |
| 37 | |||
| 38 | |||
| 39 | 4 | Amministratore Truelite | Il tipico messaggio di errore che si riceve dai server "broken" è questo: |
| 40 | 12 | Simone Piccardi | |
| 41 | 11 | Amministratore Truelite | <pre> |
| 42 | 4 | Amministratore Truelite | Reporting-MTA: dns;smtpout14.broken.tld |
| 43 | Received-From-MTA: dns;FBCMFE02B07.fbc.local |
||
| 44 | Arrival-Date: Thu, 2 Feb 2006 10:15:44 +0100 |
||
| 45 | |||
| 46 | Final-Recipient: rfc822;user@broken.tld |
||
| 47 | Action: failed |
||
| 48 | Status: 5.6.1 |
||
| 49 | 1 | Amministratore Truelite | Diagnostic-Code: smtp;554 5.6.1 Body type not supported by Remote Host |
| 50 | 11 | Amministratore Truelite | </pre> |