릴레이된 모든 메시지에 대해 .local 도메인 이름을 .com으로 변경

릴레이된 모든 메시지에 대해 .local 도메인 이름을 .com으로 변경

상황: 여러 사용자에게 이메일을 보내기 위해 postfix를 실행하는 약 10개의 가상 머신(Linux). 해당 이메일은 모두 중앙 서버를 통해 중계된 후 인터넷으로 전송됩니다.

가상 머신의 이름은 redmine.vanheusden.local 또는 scm.vanheusden.local 등과 같습니다.

중앙 Postfix 서버가 모든 이메일을 인터넷에 올리기 전에 릴레이하는 모든 이메일에 대해 *@vanheusden.local의 이름을 @vanheusden.com으로 바꾸길 바랍니다.

masquerade_domains를 사용할 수 있다고 생각했는데 분명히 이것이 (더 이상) 작동하지 않습니까?

masquerade_domains = vanheusden.com
local_header_rewrite_clients = static:all
masquerade_classes = envelope_sender, envelope_recipient, header_sender, header_recipient

답변1

안타깝게도 이 사용 사례에는 masquerade_domains를 사용할 수 없습니다.

masquerade_domains를 사용하면 이메일 주소의 도메인 이름을 제거할 수 있습니다.

예:

 /etc/postfix/main.cf:

   masquerade_domains = foo.example.com example.com

strips "any.thing.foo.example.com" to "foo.example.com", but strips "any.thing.else.example.com" to "example.com".

원천:http://www.postfix.org/ADDRESS_REWRITING_README.html#masquerade

대신 일반 매핑을 사용해야 합니다. 이렇게 하면 원하는 대로 주소를 완전히 다시 쓸 수 있습니다.

예:

  /etc/postfix/main.cf:
    smtp_generic_maps = hash:/etc/postfix/generic

  /etc/postfix/generic:
      @vanheusden.local                  @vanheusden.com

원천:http://www.postfix.org/ADDRESS_REWRITING_README.html#generic

관련 정보