이 절에서는 기타 MTA 최적화에 대해 설명합니다. 이 장은 다음 내용으로 구성되어 있습니다.
메일링 목록으로 주소 지정된 메시지의 경우, 메타 문자 대체를 사용하여 LDAP 디렉토리에 대한 권한 부여 검사를 줄일 수 있습니다.
메타 문자 대체는 mgrpModerator, mgrpAllowedBroadcaster 및 mgrpDisallowedBroadcaster 속성에서 지정할 수 있습니다. 특히 주소와 관련된 다양한 메타 문자 시퀀스(전체 주소를 나타내는 $A, 메일함 부분을 나타내는 $U, 도메인 부분을 나타내는 $D)는 현재 봉투 From: 주소를 참조하며, 어떤 경우에는 URL 반환 결과를 일치 가능성이 있는(또는 반드시 일치하는) 항목으로 제한할 때 사용할 수도 있습니다. 그러면 권한 부여 검사가 훨씬 더 효율적으로 수행될 수 있습니다.
새로운 MTA 옵션 PROCESS_SUBSTITUTIONS는 URL을 지정하는 다양한 LDAP 속성에서 대체가 수행되는지 여부를 제어합니다. 이는 비트 인코딩 값이며, 비트는 다음과 같이 정의됩니다.
비트 |
값 |
설명 |
0 |
1 |
설정된 경우 mgrpDisallowedBroadcaster에서 대체를 활성화합니다. |
1 |
2 |
설정된 경우 mgrpAllowedBroadcaster에서 대체를 활성화합니다. |
2 |
4 |
설정된 경우 mgrpModerator에서 대체를 활성화합니다. |
3 |
8 |
설정된 경우 mgrpDeliverTo에서 대체를 활성화합니다. |
4 |
16 |
memberURL에서 대체를 활성화합니다. |
PROCESS_SUBSTITUTIONS MTA 옵션의 기본값은 0입니다. 이는 모든 대체가 기본적으로 비활성화되는 것을 의미합니다.
LDAP 조회를 통해 정의되고 목록상의 누구든지 게시가 허용되는 동적 목록을 예로 들 수 있습니다. 그러한 경우, 일반적으로 다음과 같은 속성으로 목록을 정의합니다.
mgrpAllowedBroadcaster: ldap:///o=Sesta,c=US??sub?(&(objectClass=inetMailUser)(objectClass=inetOrgPerson)) mgrpDeliverTo: ldap:///o=Sesta,c=US??sub?(&(objectClass=inetMailUser)(objectClass=inetOrgPerson)) |
그러나 이렇게 정의하면 권한 부여 검사를 위해 한 번 그리고 실제 수신자 목록 작성을 위해 한 번, 총 두 번 목록을 확장하게 됩니다. 따라서 이 작업은 서버 사용량이 매우 많습니다. 반면에, 현재 봉투 From: 주소를 포함하는 항목만 권한 부여 검사에서 반환하도록 제한을 추가한다면 훨씬 더 효율적일 것입니다. 먼저 PROCESS_SUBSTITUTION 설정을 2로 변경하고, 다음 항목을 설정할 수 있습니다.
mgrpAllowedBroadcaster: ldap:///o=Sesta,c=US??sub?(&(objectClass=inetMailUser)(objectClass=inetOrgPerson) (mail=$A) mgrpDeliverTo: ldap:///o=Sesta,c=US??sub?(&(objectClass=inetMailUser)(objectClass=inetOrgPerson)) |
이 예에서는 Sesta US의 모든 사용자 항목이 아니라 보낸 사람의 항목에 대해서만 브로드캐스트 권한 부여 검사가 수행됩니다. 그러면 디렉토리 서버에서 수행해야 할 작업이 색인화된 단일 일치 및 단일 반환 값으로 줄어듭니다. 다른 방법은 전체 목록을 반환하고 MTA가 일치 작업을 수행하게 하는 것입니다.
대체에 사용 가능한 정보는 그 속성이 권한 부여 검사에 사용되는지 또는 실제 목록 확장에 사용되는지에 따라 달라집니다. 권한 부여 속성의 경우 전체 주소($A), 도메인($D), 호스트($H) 및 로컬 부분($L)가 모두 인증된 보낸 사람 주소로부터 파생됩니다. 목록 확장 속성의 경우, 이러한 모든 대체 값은 목록을 지정한 봉투 수신자 주소에서 파생됩니다. 그러나 두 경우 모두, 하위 주소 대체($S)는 현재 봉투 수신자 주소로부터 파생됩니다.
목록 확장 URL에서 하위 주소 정보에 액세스할 수 있는 기능은 메타 그룹, 즉 서로 다른 그룹을 하나의 전체 모음으로 만드는 단일 그룹 항목을 정의할 수 있도록 해줍니다. 예를 들어 다음의 값이 mgrpDeliverTo이고
mgrpDeliverTo: ldap:///o=usergroup?mail?sub?(department=$S)
해당 PROCESS_SUBSTITUTIONS 값이 8인 그룹의 경우 group+department@domain.com 형식의 주소를 사용하여 지정된 부서의 모든 구성원에게 메일을 보낼 수 있습니다. 하위 주소가 너무 어려운 경우 전달 매핑과 같은 기법을 사용하여 구문을 변경할 수 있습니다.