Sun Java logo     �W�@��      �ؿ�      �d�      �U�@��     

Sun logo
Sun Java System Messaging Server 6 2005Q1 �޲z��n 

�� 17 ��
�l��z��M�s���

�����y�z�p��ھڶl��ӷ� (�H��̡BIP ��}��) �μ��Y�r��ӿz��l��C�ϥΨ�ضl��z����A�Y�ϥι�M��M�z���A���ݳW�h (SSR) ����� MTA ���s��C

�ϥι�M�?��� MTA ���s��\�ھ� From:�M To: ��}�BIP ��}�B�s���𸹽X�H�Ψӷ��q�D�Υؼгq�D�ӿz��l��C��M�?�\�ҥΩΰ��� SMTP ��e�\��C�z��O�l��z��{���ɡA���\�ھڼ��Y�����r��z��l��C(��l�󤺤�L�ġC)

�p�G�ݭn�T���ʯŧO������A�Шϥι�M��ӿz��l��C�p�G�ݭn�����Y������A�Шϥοz���A���ݳW�h�C

�����,���ӳ��!G

�� 1 ���!G��M���C�i��޲z��z�L�t�m�Y�ǹ�M�?��� MTA �A�Ȫ��s��C�޲z��i�H����z�L Messaging Server �ǰe�M�����l�󪺤H��C

�� 2 ���!G�q�l�H�c�z�ᄍ�C�i��ϥΪ̩M�޲z��z��l��ë�w�w�墨�Ǯھڶl����Y�����r��z�諸�l�󪺰ʧ@�C�ϥοz�ᄍ�y���ï��b�q�D�BMTA �ΨϥΪ̯ŧO�W�z��C


�� 1 ���!G��M��

�� 1 ���%]�t�H�U�U�`�G


�ϥι�M�?��s��

�z�i�H�z�L�t�m�Y�ǹ�M��ӱ����z�l��A�Ȫ��s��C�o�ǹ�M��i��z����ǰe�M/�α����l�󪺤H��C�� 17-1 �C�ܥ��p�`���Ҵy�z����M��C���ѵ� FROM_ACCESS�BMAIL_ACCESS �M ORIG_MAIL_ACCESS ��M��3�ε{����T�r��]�A HELO/EHLO SMTP ��O���n��t�ΦW�١C���W����ܦb�r�꥽�!A�åH�׽u�P�r�ꪺ��l���� (�q�`���uSMTP�v) �9j�C�n��t�ΦW�٦b����Y��į�ΩM�f�r�譱�D�`���ΡC

�s����M��@�~

�P�Ҧ���M��@�ˡA�s����M��㦳�ۦP���q�ή榡 (�аѾ\�u��M�ɮ��v)�C���̥ѹ�M��W�١B��᪺����Ťδ���ū᪺�@�өΦh�ӹ�M���زզ��C��M���إ��j�M���� (����) �P�d�� (�k��) �զ��C�j�M���˿z��S�w���l��A�d���h��w�n��Ӷl��Ĩ�ʧ@�C�Ҧp�G

SEND_ACCESS

 *|Elvis1@sesta.com|*|*      $Y
 *|Nelson7@sesta.com|*|*     $Y
 *|AkiraK@sesta.com|*|*      $Y
 *|*@sesta.com|*|*              $NMail$ Blocked

�b���d�Ҥ�����F�� Elvis1�BNelson �M AkiraK ���~�Ҧ��Ӧ� sesta.com ��쪺�q�l�l��C

�s����M���ت��j�M���˥ѳ\�h�j�M���զ��A�o�Ƿj�M���H�����C (|) �9j�C�j�M��󪺶��ǵ�s���M��өw�A���X�`�N���i��y�z�C��O�@���d�ҡASEND_ACCESS ��M��㦳�H�U�j�M�Φ��G

src-channel|from-address|dst-channel|to-address

�䤤 src-channel �O�l��N�n�Q��C�ǰe�ܪ��q�D�Ffrom-address �O�l��Ыت̪���}�Fdst-channel �O�l��N�n�Q��C�ǰe�ܪ��q�D�Fto-address �O�l��N�n�ǰe�쪺��}�C�b�o�|����쪺���@����줤�ϥάP���N�ϸ����ŦX�A�X����@�q�D�Φ�}�C


�`�N

�C�� mappings �ɮ׭ק��A�z���������s�sĶ�t�m (�аѾ\�uSun Java System Messaging Server Administration Reference�v���� imsimta refresh ��O)�C


�� 17-1  �s����M��

��M��

�y�z

SEND_ACCESS
(�аѾ\�u��h�v�C)

�Ω�ھڰT���� From ��}�B�T���� To ��}�B�ӷ��q�D�M�ؼгq�D�ӫ��ꤺ�e���s�u�C�t�η|�b��歫�g�M�O�W�X�R���@�~���ˬd To ��}�C

ORIG_SEND_ACCESS
(�аѾ\�u��h�v�C)

�Ω�ھڰT���� From ��}�B�T���� To ��}�B�ӷ��q�D�M�ؼгq�D�ӫ��ꤺ�e���s�u�C�t�η|�b���g���b�O�W�X�R���e�ˬd To ��}�C

MAIL_ACCESS
(�аѾ\�u��h�v�C)

�Ω�ھ� SEND_ACCESS �M PORT_ACCESS ��椤��쪺�զX��T�ӫ��ꤺ�e���s�u�C�Y SEND_ACCESS ����쪺�q�D�M��}��T�P PORT_ACCESS ����쪺 IP ��}�M�s���𸹽X��T�զX�C

ORIG_MAIL_ACCESS
(�аѾ\�u��h�v�C)

�Ω�ھ� ORIG_SEND_ACCESS �M PORT_ACCESS ��椤��쪺�զX��T�ӫ��ꤺ�e���s�u�C�Y ORIG_SEND_ACCESS ����쪺�q�D�M��}��T�P PORT_ACCESS ����쪺 IP ��}�M�s���𸹽X��T�զX�C

FROM_ACCESS
(�аѾ\�u��h�v�C)

�Ω�ھڰT���� From ��}�z��l��C�p�G To ��}���A�ΡA�h�ϥΦ����C

PORT_ACCESS
(�аѾ\�u��h�v�C)

�Ω�ھ� IP �s�����ꤺ�e���s�u�C

MAIL_ACCESS �M ORIG_MAIL_ACCESS ��M�̴��M�A�o�ǹ�M���ȥi�ϥ� SEND_ACCESS �M ORIG_SEND_ACCESS �i�Ϊ���}�M�q�D��T�A�٥i�ϥθg�� PORT_ACCESS ��M��i�Ϊ��Ҧ���T�A�]�A IP ��}�M�s���𸹽X��T�C


�s����M��X��

�� 17-2 ��ܻP SEND_ACCESS�BORIG_SEND_ACCESS�BMAIL_ACCESS�BORIG_MAIL_ACCESS �M FROM_ACCESS ��M�����s���M�X�СC�Ъ`�N�APORT_ACCESS ��M��䴩�@�ղ������P���X�� (�аѨ��� 17-3)�C

�a���޼ƪ��X�Х����N��޼ƱƧǦ�Ū��ǡA�p�U��ҥܡC�Ҧp�G

ORIG_SEND_ACCESS

  tcp_local|*|tcp_local|* $N$D30|Relaying$ not$ allowed

�b�����p�U�A���T�����Ǭ�����ɶ��ᱵ�ڵ��r��C�Ъ`�N�A�X�Х����i�H�O��󶶧ǡC�]���A�H�U���ب㦳�����ۦP�����G�G

30|Relaying$ not$ allowed$D$N
$N30|Relaying$ not$ allowed$D
30|$N$DRelaying$ not$ allowed

�� 17-2  �s���M�X�� 

�X��

�y�z

$A

�p�G�w�ϥ� SASL�A�h�]�w���X�СC�аѾ\�u�ˬd�S��X���v�C

$B

�N�l�󭫷s�ɦV�� Bitbucket�C

$D

�p�G�ШD���𻼰e���ڡA�h�]�w���X�� (�b FROM_ACCESS �����i��)�C�аѾ\�u�ˬd�S��X���v�C

$F

�p�G�ШD���ѻ��e���ڡA�h�]�w���X�� (�b FROM_ACCESS �����i��)�C�аѾ\�u�ˬd�S��X���v�C

$H

�N�l��O�s�� .HELD �ɮסC

$S

�p�G�ШD���\���e���ڡA�h�]�w���X�� (�b FROM_ACCESS �����i��)�C�аѾ\�u�ˬd�S��X���v�C

$T

�p�G�w�ϥ� TLS�A�h�]�w���X�СC�аѾ\�u�ˬd�S��X���v�C

$U

�p�G�Ω� ORIG_SEND_ACCESS�BSEND_ACCESS�BORIG_MAIL_ACCESS �M MAIL_ACCESS ���A�бq��M���}�Y��o��Ӿ�Ƥ޼ơA�ó]�w��3�� MM_DEBUG�C�t�~�A�٥i�ҥγq�D�h�Ū����� (�p�G�i��)�C���G�O�A�z�i�ھڶ��� (�Ҧp�ӷ� IP ��}�B��l��}�M����̦�}��) �ҥΰ���C

$Y

���\�s��C

$V

��Ҧ�����̰��j��˱�C

$Z

��Ҧ�����̰��j����C

�H�޼�Ū��DZƧǪ��a���޼ƪ��X��+ (�ФťH�r�6��DZƧǦ��M��I)

$Uinteger

�q��M���}�Y��o��Ӿ�Ƥ޼ơA�ó]�w��3�� MM_DEBUG�C�t�~�A�٥i�ҥγq�D�h�Ū����� (�p�G�i��)�C���G�O�A�z�{�b�i�ھڽѦp�ӷ� IP ��}�B��l��}�M����̦�}�����رҥΰ���C

$Jaddress

* �H��w address �%N��l�T���� From: ��}�C

$Kaddress

* ++ �H��waddress �%N��l Sender: ��}�C

$Iuser|identifier

�ˬd�S�w�ϥΪ̪��s�� ID�C

$<�r��

+++ �p�G����ŦX�A�h�N string �ǰe�ܨt�ΰO�� (UNIX user.notice �u��M�Y����) �Ψƥ�O�� (NT)�C

$>�r��

+++ �p�G�s��D��ڵ��A�h�N string �ǰe�ܨt�ΰO�� (UNIX user.notice �u��M�Y����) �Ψƥ�O�� (NT)�C

$Ddelay

����^3�� delay ���j�ɶ����ʤ$��@��F���ȷ|�ɭP�N����I�[�첧�ʤ����C�ӫ�O�W�F�t�ȷ|�ɭP�N����ȬI�[���}���� (FROM_ACCESS ��檺 SMTP MAIL FROM: ��O�F��L��檺 SMTP RCPT TO: ��O) �W�C

$Ttag

�H tag ���r���C

$Aheader

�N���Y�檺 header �s�W�ܶl��C

$Gconversion_tag

�p�G�Ω� ORIG_SEND_ACCESS�BSEND_ACCESS�BORIG_MAIL_ACCESS �M MAIL_ACCESS ���A�h��|�q��M���G��Ū��@�ӭȡA�ñN�ӭȰ����@�վA�Ω�ثe����̪��ഫ�аO�C�p�G�P FROM_ACCESS �t�X�ϥΡA�h�ഫ�аO�A�Ω�Ҧ�����̡C�b�q��MŪ��޼ƧǦC���A$G ��� $A (���Y��}) ����C�аѾ\�u�l���ഫ�аO�v�C

$Sx,y,z

* �i�H�q��M���G��Ū����[�� | �9j�޼ơC���޼ƥѤ@��T�Ӿ�ƭȲզ��A�o�Ǿ�ƭȥγr���9j�C�Ĥ@�ӭȬ��@�~�ƥ�إߤ@�ӷs���̤p blocklimit�A�ĤG�ӭȫإߤ@�ӷs���̤p recipientlimit�A�ӲĤT�ӭȫإߤ@�ӷs���̤p recipientcutoff�C�b�wŪ��Ҧ��^��޼ƫ�A�q��M���G��Ū��Ӥ޼ơC�аѾ\�u��w����l��j�p�����v�A�H��o�ԲӸ�T�C

$Xerror-code

�p�G�ڵ��l��A�h�o�X��w�� error-code ���� SMTP ��~�N�X�C

$,spamadjust_arg

���\�z���s���M�?�� spamadjust �z��@�~�C�Ӥ޼ƪ��Φ��P spamadjust �޼ƪ��Φ��ۦP�C�t�Ъ`�N�䤤���ǹ�M�|�w��C�즬��̶i��M�ΡC���w������ spamadjust �@�~���|�M�ΦܩҦ�������̡C

$Nstring

�ϥο�ܩʪ���~��r string �ڵ��s��C

$Fstring

$N string ���P�q��F�Y�A�ϥο�ܩʪ���~��r string �ڵ��s��C

*�ȾA�Ω� FROM_ACCESS ���C

+�Y�n�ϥαa���޼ƪ��h�ӺX�СA�ШϥΫ����9j�u�r�� | �9j�޼ơA�ë�Ӧ���椤�C�X�����ǩ�m�޼ơC

++ ���� $K �X�Цb FROM_ACCESS ��M�?�ͮġA�ӷ��q�D�������]�t authrewrite ����r�C

+++ �b3�I���D�H��̮ɡA�ϥ� $D �X�Ш���ڵ��A�ȧ�;�O�@�Ӧn��k�C�S�O�O�A�̦n�b��� $> ���ةΩڵ��s�� $< ���ؤ��ϥ� $D�C

SEND_ACCESS �M ORIG_SEND_ACCESS
���

�z�i�H�ϥ� SEND_ACCESS �M ORIG_SEND_ACCESS ��M�?��ǰe�M/�α����l�󪺤H��C�s���ˬd�i�ϥζl�󪺰T���� From: ��}�M�T���� To: ��}�A�åi�A�Ѷl��w�i�J���ӳq�D�H�ζl��N�xձq���ӳq�D�o�X�C

�p�G�s�b SEND_ACCESS �� ORIG_SEND_ACCESS ��M��A�h���g�� MTA �ǰe���C�Ӷl�󪺨C�Ӧ���̨ӻ��AMTA �N�ϥΥH�U�榡 (�Ъ`�N�����9j�u�r�� | ���Ϊk) ���r�걽�y�Ӫ��G

src-channel|from-address|dst-channel|to-address

src-channel �O�l��b�䤤�Φ���C���q�D�Ffrom-address �O�l��Ыت̪���}�Fdst-channel �O�l��N�n�Q��C�ǰe�ܪ��q�D�Fto-address �O�n�N�l��ǰe�쪺��}�C�b�o�|����쪺���@����줤�ϥάP���N�ϸ����ŦX�A�X����@�q�D�Φ�}�C

���B����}�O�T���ʦ�}�F�Y�T���� From: ��}�M�T���� To: ��}�C��� SEND_ACCESS�A�t�η|�b��歫�g�B�O�W�X�R���@�~���ˬd�T���� To: ��}�F��� ORIG_SEND_ACCESS�A�t�η|�b���g���O�W�X�R���e�ˬd����w�� To: ��}�C

�p�G�j�M�r��ŦX���� (�Y��椤���ت�����)�A�h�t�αN�ˬd��M�����G��X�C�p�G��X�]�t�X�� $Y �� $y�A�h�t�αN���\���ӯS�w To: ��}�Φ���C�C�p�G��X�]�t�X�� $N�B$n�B$F �� $f �������@�ӡA�h�t�αN�ڵ���ӯS�w��}�Φ���C�C�b�ڵ������p�U�A��M��X���|���ѿ�ܩʪ��ڵ���r�C�Ӧr��N�]�t�b MTA �o�X���ڵ���~���C�p�G����X���r�� (�� $N�B$n�B$F �� $f �X�Ф��~)�A�h�N�ϥιw�]�ڵ���r�C�p�ݨ�L�X�Ъ��y�z�A�аѾ\�s����M��X���C

�N MTA �ﶵ ACCESS_ORCPT �]�w�� 1 �i�N��L�����C���w���[�J����ȡA�ӱ���ȷ|�ǰe�ܥ]�t��l����� (ORCPT) ��}�� SEND_ACCESS�BORIG_SEND_ACCESS�BMAIL_ACCESS �� ORIG_MAIL_ACCESS ��M��C�p�G�l��S�� ORCPT ��}�A�h�ϥέ�l�����ק� RCPT TO:��}�Ӵ%N�C�w�]�� 0�A����Ȧb���3B�G

src-channel|from-address|dst-channel|to-address|ORCPT_address

�b�H�U�d�Ҥ��AUNIX �ϥΪ̥N�z�{�� (�p mail�BPine ��) �ǰe���l��Ӧۥ��� l �q�D�A�ǰe�ܺ�ں��l��q�L�Y�������� TCP/IP �q�D�o�X�C���]�t�Τ����\����ϥΪ� (Postmaster ���~) �V��ں��ǰe�l��A��O���\�����Ӧۺ�ں��l��C�h�H�U�d�Ҥ��ҥܪ� SEND_ACCESS ��M��O��@������@�إi���k�C�b����M�?�A���w���a�D��W�٬� sesta.com�C�b�q�D�W�١utcp_*�v���A�ϥθU�Φr���H�K�ŦX���i�઺ TCP/IP �q�D�W�� (�Ҧp tcp_local)�C

�{���X�d�� 17-1  SEND_ACCESS ��M��

SEND_ACCESS

  *|postmaster@sesta.com|*|*    $Y
  *|*|*|postmaster@sesta.com    $Y
  l|*@sesta.com|tcp_*|*         $NInternet$ postings$ are$ not$  \
    permitted

�b�ڵ��T�����A�ϥά�Ÿ��ӤޥΰT�������Ů�C�p�G�S���o�Ǭ�Ÿ��A�ڵ��N���e����A�åB�ù�W�N����ܡu��ں��v�Ӥ��O�u�����\�i���ں��H�e�v�C�Ъ`�N�A���d�ҩ����F��L�i�઺�u����v�H�e�ӷ��A�p�Ӧ۰�� PC ���l��t�ΩΨӦ� POP �� IMAP �Τ�ݪ��u����v�H�e�C


�`�N

�xնǰe�l�󪺥Τ�ݨM�w�O�_�T��n��xնǰe�l�󪺨ϥΪ���� MTA �ڵ���~��r�C�p�G�ϥ� SEND_ACCESS �ڵ����e�� SMTP �l��A�h MTA �ȵo�X�]�t��ܩʩڵ���r�� SMTP �ڵ��N�X�FSMTP �ǰe�Τ�ݭt�d�ϥθӸ�T�غc�n�Ǧ^����l�H��̪��h�^�l��C


MAIL_ACCESS �M ORIG_MAIL_ACCESS
��M��

MAIL_ACCESS ��M��O SEND_ACCESS �M PORT_ACCESS ��M�?�����C���N SEND_ACCESS ���q�D�M��}��T�P PORT_ACCESS �� IP ��}�M�s���𸹽X��T���X�b�@�_�C�P�˦a�AORIG_MAIL_ACCESS ��M��O ORIG_SEND_ACCESS �M PORT_ACCESS ��M�?�����CMAIL_ACCESS ������r��榡���G

port-access-probe-info|app-info|submit-type|send_access-probe-info

�P�˦a�AORIG_MAIL_ACCESS ������r��榡���G

port-access-probe-info|app-info|submit-type|orig_send_access-probe-info

�b�o�̡A��󤺰e�� SMTP �l��Aport-access-probe-info �� PORT_ACCESS ��M�?��q�`�]�t���Ҧ���T�զ��Q�_�h���ťաCapp-info �]�t HELO/EHLO SMTP ��O���n��t�ΦW�١C���W����ܦb�r�꥽�!A�åH�׽u�P�r�ꪺ��l���� (�q�`���uSMTP�v) �9j�C�n��t�ΦW�٦b����Y��į�ΩM�f�r�譱�D�`���ΡCsubmit-type �i��O MAIL�BSEND�BSAML �� SOML ���䤤���@�A�o��M��N�l�󴣥浹 Messaging Server �ķ������q�`�A���Ȭ� MAIL�A�N��ۧ@���l�󴣥�F�b�V SMTP ��A������s���ШD (�βզX���s��/�l��ШD) �����p�U�A�i��|�X�{ SEND�BSAML �� SOML�C�ӹ�� MAIL_ACCESS ��M�A�ǰe�s����T�� SEND_ACCESS ��M�?��q�`�]�t���Ҧ���T�զ��C�P�˦a�A��� ORIG_MAIL_ACCESS ��M�Aorig-send-access-probe-info �� ORIG_SEND_ACCESS ��M�?��q�`�]�t���Ҧ���T�զ��C

�N MTA �ﶵ ACCESS_ORCPT �]�w�� 1 �i�N��L�����C���w���[�J����ȡA�ӱ���ȷ|�ǰe�ܥ]�t��l����� (ORCPT) ��}�� SEND_ACCESS�BORIG_SEND_ACCESS�BMAIL_ACCESS �� ORIG_MAIL_ACCESS ��M��C�p�G�l��S�� ORCPT ��}�A�h�ϥέ�l�����ק�RCPT TO:��}�Ӵ%N�C�w�]�� 0�A����Ȧb���3B�C�d�ҡG

port-access-probe-info|app-info|submit-type|send_access-probe-info|ORCPT_address

�N���e�� TCP/IP �s�u��T�]�t�b�q�D�M��}��T�Ҧb���P�@��M�?�A�i��z���K�a��@�Y������������A�p�j��\���ǰT���� From:��}�X�{�b�ӦۯS�w IP ��}���l�󤤡C�o�A�Ω󭭨�y�q�l�l��A�ι��y�ϥΪ̥��T�t�m�L�̪� POP �M IMAP �Τ�ݪ� From:��}�C�Ҧp�A�Y���I�Ʊ椹�\�T���� From:��} vip@siroe.com �ȥX�{�b�Ӧ� IP ��} 1.2.3.1 �M 1.2.3.2 ���l��W�A�ýT�O�Ӧ� 1.2.0.0 �l�����t�Ϊ��l��W���T���� From: ��}���Ӧ� siroe.com�A�h�i�H�ϥΥH�U�d�Ҥ��ҥܪ� MAIL_ACCESS ��M��C

�{���X�d�� 17-2  MAIL_ACCESS ��M��

MAIL_ACCESS

!Entries for vip's two systems
!
  TCP|*|25|1.2.3.1|*|SMTP|MAIL|tcp_*|vip@siroe.com|*|*  $Y
  TCP|*|25|1.2.3.2|*|SMTP|MAIL|tcp_*|vip@siroe.com|*|*  $Y
!
! Disallow attempts to use vip's From:address from other
! systems
!
  TCP|*|25|*|*|SMTP|MAIL|tcp_*|vip@siroe.com|*|*  \
      $N500$ Not$ authorized$ to$ use$ this$ From:$ address
!
! Allow sending from within our subnet with siroe.com From:
! addresses
!
  TCP|*|25|1.2.*.*|*|SMTP|MAIL|tcp_*|*@siroe.com|*|*  $Y
!
! Allow notifications through
!
  TCP|*|25|1.2.*.*|*|SMTP|MAIL|tcp_*||*|*  $Y
!
! Block sending from within our subnet with non-siroe.com
! addresses
!
  TCP|*|25|1.2.*.*|*|SMTP|MAIL|tcp_*|*|*|*  \
      $NOnly$ siroe.com$ From:$ addresses$ authorized

FROM_ACCESS ��M��

�i�H�ϥ� FROM_ACCESS ��M�?��ǰe�l�󪺤H��A�M/�Ψϥθg�{�Ҫ���}�m�����T�w�� From: ��}�C

FROM_ACCESS ��M�?��J����r������� MAIL_ACCESS ��M�?��J����r��A�h���F�ؼгq�D�M��}�A�W�[�F�g�{�Ҫ��H��̸�T (�p�G��)�C�]���A�p�G�s�b FROM_ACCESS ��M��A�h��C�@���xնi�檺�l�󴣥�ӻ��AMessaging Server �N�ϥΥH�U�榡 (�Ъ`�N�����9j�u�r�� | ���Ϊk) ���r��j�M�Ӫ��G

port-access-probe-info|app-info|submit-type|src-channel|from-address|auth-from

�H�U port-access-probe-info �� PORT_ACCESS ��M�?��q�`�]�t���Ҧ���T�զ��Q�_�h���ťաCapp-info �]�A HELO/EHLO SMTP ��O���n��t�ΦW�١C���W����ܦb�r�꥽�!A�åH�׽u�P�r�ꪺ��l���� (�q�`���uSMTP�v) �9j�C�n��t�ΦW�٦b����Y��į�ΩM�f�r�譱�D�`���ΡCsubmit-type �i��O MAIL�BSEND�BSAML �� SOML ���䤤���@�A�o��M��N�l�󴣥浹 MTA ����k�C�q�`�A���Ȭ� MAIL�A�N��ۧ@���l�󴣥�F�b�V SMTP ��A������s���ШD (�βզX���s��/�l��ШD) �����p�U�A�i��|�X�{ SEND�BSAML �� SOML�Csrc-channel �O���Ͷl�󪺳q�D(�Y��l��Φ���C)�Ffrom-address �O���T�w���l��Ыت̦�}�Fauth-from �O�g�{�Ҫ��Ыت̪���} (�p�G������T) �ά��ť� (�p�G�S���g�{�Ҫ���T)�C

�p�G����r��ŦX���� (�Y��椤���ت�����)�A�h�t�αN�ˬd��M�����G��X�C�p�G��X�]�t�X�� $Y �� $y�A�h�t�αN���\���ӯS�w To: ��}�Φ���C�C�p�G��X�]�t�X�� $N�B$n�B$F �� $f �������@�ӡA�h�t�αN�ڵ���ӯS�w��}�Φ���C�C�b�ڵ������p�U�A��M��X���|���ѿ�ܩʪ��ڵ���r�C�Ӧr��N�]�t�b Messaging Server �o�X���ڵ���~���C�p�G����X���r�� (�� $N�B$n�B$F �� $f �X�Ф��~)�A�h�N�ϥιw�]�ڵ���r�C�p�ݨ�L�X�Ъ��y�z�A�аѾ\�s����M��X���C

���F���Ыت̨M�w�O�_���\����l�󤧥~�AFROM_ACCESS �٥i�Ω�g�� $J �X�Ч��ܰT���� From:��}�A�θg�� $K �X�Эק� authrewrite �q�D����r���ĪG (�b����l��W�s�W Sender: ���Y��})�C�Ҧp�A�i�H�ϥΦ���M��θg�{�Ҫ���}���P��N��l�T���� From: ��}�C

�{���X�d�� 17-3  FROM_ACCESS ��M��

FROM_ACCESS

  *|SMTP|*|tcp_auth|*|       $Y
  *|SMTP|*|tcp_auth|*|*      $Y$J$3

�b�N authrewrite �]�w���D�s�Ȫ��Y�Ǩӷ��q�D�W�ϥ� FROM_ACCESS ��M��ק�ĪG�ɡA�p�G�n��˨ϥθg�{�Ҫ���}�A�h�L�ݨϥ� FROM_ACCESS�C

�Ҧp�A�p�G�b tcp_local �q�D�W�]�w�F authrewrite 2�A�h�L�ݨϥΥH�U FROM_ACCESS ��M��A�]���Ȩϥ� authrewrite ���H��o���ĪG (���˷s�W�g�{�Ҫ���})�G

FROM_ACCESS

  *|SMTP|*|tcp_auth|*|     $Y
  *|SMTP|*|tcp_auth|*|*    $Y$K$3

��O�AFROM_ACCESS ���u���ت��b�󤹳\�i���[����M�ӷL�����ܡA�p�H�U�d�Ҥ��ҥܡC�p�G�z�n�N Sender: ���Y�� (��ܸg�{�Ҫ� SMTP AUTH ����̦�}) �s�W�ܤ��e���l��A�h�i�H�Ȩϥ� authrewrite ����r�C��O�A���]�u����g�{�Ҫ� SMTP AUTH ����̦�}�P�T���� From: ��}���P�ɡA�~�N�� Sender: ��}�s�W�ܤ��e���l�� (�Y�p�G��}�۲šA�h�����s�W Sender: ���Y��)�A�öi�@�B���]�z�Ʊ� SMTP AUTH �M�T���� From: ��}�N���|�ȶȦ]���T���� From: �]�t��ܩʪ��l��}��T�ӳQ���P�C

FROM_ACCESS

!If no authenticated address is available, do nothing
  *|SMTP|*|tcp_auth|*|              $Y
!If authenticated address matches envelope From:, do nothing
  *|SMTP|*|tcp_auth|*|$2*           $Y
!If authenticated address matches envelope From: sans
! subaddress, do nothing
  *|SMTP|*|tcp_auth|*+*@*|$2*@$4*    $Y
!Fall though to...
! ...authenticated address present, but didn't match, so force
!Sender:header
  *|SMTP|*|tcp_auth|*|*              $Y$K$3

PORT_ACCESS ��M��

���e�{���i�H�ھ� IP ��}�M�s���𸹽X����ܦa����Ωڵ����e���s�u�C���e�{���b�ҰʮɱN�d��W�� PORT_ACCESS ����M��C�p�G�s�b�A���e�{���N�H�U�����榡�榡�Ƴs�u��T�G

TCP|server-address|server-port|client-address|client-port

���e�{���N�xղŦX�Ҧ��� PORT_ACCESS ��M���ءC�p�G��M���G�]�t $N �� $F�A�h�s�u�N�Q�ߧY��C����L��M���G����ܳs�u�N�Q����C$N �� $F ���᭱�i��|�a���ڵ��T���C�p�G�a���ڵ��T���A�t�αN�b��s�u���e�N�T���u�s�u�ǰe�^�h�C�Ъ`�N�A�b�N�r��u�s�u�ǰe�^�h���e�A�t�η|������[ CRLF �פ�Ÿ��C


�`�N

MMP ���ϥ� PORT_ACCESS ��M��C�p�G�z�n�ڵ��Ӧ۬Y�� IP ��}�� SMTP �s�u�åB�z�ϥΪ��O MMP�A�h�����ϥ� TCPAccess �ﶵ�C�аѾ\�u�ϥ� MMP �t�m�l��s���v�C�p�G�z�n�ϥι�M��ӱ��� SMTP �s�u�A�Шϥ� INTERNAL_IP ��M�� (�аѾ\���\�V�~�����I�i�� SMTP ��e)�C


�p�G��M����ŦX�A�h����ܩʦr�ꪺ�X�� $< �|�� Messaging Server �N�r��ǰe�ܨt�ΰO�� (UNIX) �Ψƥ�O�� (NT)�C�p�G�s��Q�ڵ��A�h����ܩʦr�ꪺ�X�� $> �|�� Messaging Server �N�r��ǰe�ܨt�ΰO�� (UNIX) �Ψƥ�O�� (NT)�C�p�G�]�w LOG_CONNECTION MTA �ﶵ���� 1 ��ó]�w $N �X�ХH�ϳs�u�Q�ڵ��A�h�A��w $T �X�бN�ɭP�uT�v���سQ�g�J�s�u�O��C�p�G�]�w LOG_CONNECTION MTA �ﶵ���� 4 ��A�h����Ѫ���r�i��|�]�t�b PORT_ACCESS ���ؤ��A�H�K�]�t�b�uC�v�s�u�O��ؤ��C�Y�n��w������r�A�Цb���ت��k��[�J��ӫ����9j�u�r���A�᭱�H���һݪ���r�C�� 17-3 ���C�X�F�i�Ϊ��X�СC

�� 17-3  PORT_ACCESS ��M�X��

�X��

�y�z

$Y

���\�s��C

�a���޼ƪ��X�Ы�Ӥ޼ƪ�Ū��DZƧ�+

$< �r��

�p�G����ŦX�A�h�N�r��ǰe�ܨt�ΰO�� (UNIX) �Ψƥ�O�� (NT)�C

$> �r��

�p�G�s��Q�ڵ��A�h�N�r��ǰe�ܨt�ΰO�� (UNIX) �Ψƥ�O�� (NT)�C

$N �r��

�ϥο�ܩʪ���~��r�r��ڵ��s��C

$F �r��

$N �r�ꪺ�P�q��F�Y�A�ϥο�ܩʪ���~��r�r��ڵ��s��C

$T ��r

�p�G�]�w LOG_CONNECTION MTA �ﶵ���� 1 ��ó]�w $N �X�ХH�ϳs�u�Q�ڵ��A�h $T �|�ɭP�t�αN�uT�v���ؼg�J�s�u�O��F��ܩʤ�r (��ܦb��ӫ����9j�u�r�����᭱) �i��]�t�b�s�u�O��ؤ��C

+�Y�n�ϥαa���޼ƪ��h�ӺX�СA�ШϥΫ����9j�u�r�� | �9j�޼ơA�ë�Ӧ���椤�C�X�����ǩ�m�޼ơC

�Ҧp�A����W�ڵ������a�����r���S�w�D��~�A�H�U��M�N�ȱ���Ӧ۳�@��� SMTP �s�u (�s���� 25�A�Y�@�� SMTP �s����)�G

PORT_ACCESS

  TCP|*|25|192.123.10.70|*  $N500
  TCP|*|25|192.123.10.*|*   $Y
  TCP|*|25|*|*              $N500$ Bzzzt$ thank$ you$ for$  \
     playing.

�Ъ`�N�A�b�ܧ� PORT_ACCESS ��M�?��A�z�N�ݭn���s�Ұʬ��e�{���A�H�K���e�{����ݨ�o���ܧ�C(�p�G�z�n�ϥΤw�sĶ�� MTA �t�m�A�h�N����ݭn���s�sĶ�z���t�m�A�H�N�ܧ�֤J�w�sĶ���t�m���C)

PORT_ACCESS ��M��M�Ω����� IP ���ڵ��C�Y�n�b�q�l�l���}�ŧO����q�Ϊ�����ASEND_ACCESS �� MAIL_ACCESS ��M��i���A�X�C

�����w IP ��}�� MTA ���s�u

�z�L�ϥ� Port Access ��M�?���@�ε{���w conn_throttle.so�A�i����S�w IP ��}�s�u�� MTA ���W�v�C�ھگS�w IP ��}����s�u��󨾤�ڵ��A�ȧ�;���ϥΪ��L�׳s�u�D�`���ΡC

conn_throttle.so �O PORT_ACCESS ��M�?���@�ε{���w�A�Ω󭭨�ӦۯS�w IP ��}���L���W�c�� MTA �s�u�C�Ҧ��t�m�ﶵ���Q��w���s�u throttle �@�ε{���w���ѼơA�p�U�ҥܡG

$[msg_svr_base/lib/conn_throttle.so,throttle,IP-address,max-rate]

IP-address �O���ݨt�Ϊ��p���I�Q�i���}�C max-rate �O�N���� IP ��}�j���@���C���ss�u���̤j�W�v�C

�`���W�� throttle_p �i��|��N throttle�A�Ω�P�w�`���������C�p�G�Y�dzs�u�b�L�h���s�����ƹL�h�A�h throttle_p �|�b�N�өڵ��o�dzs�u�C�p�G�̤j�W�v�O 100�A�åB�b�W�@���d��w�� 250 ���s�u�xաA�h�t�Τ���|�b�Ӥ��d����e 100 ���s�u����껷�ݯ��I�A�ӥB�ٷ|�b�U�@���d��~�����o�ǯ��I�C�������A�C���yL��A�t�αN�q�xճs�u���`�Ƥ���h�̤j�W�v�ơA����u�n�s�u�`�Ƥj��̤j�W�v�A�K�|�A�����껷�ݨt�ΡC

�p�G��w�� IP ��}���W�X�C���j��̤j�s�u�W�v�A�h�@�ε{���w�I�s�N���ѡC

�p�G�W�X�W�v�A�h�I�s�N���\�A��|�Ǧ^��󤺮e�C�o�i�H�q�L $C/$E �զX�����A�p�H�U�d�ҩҥܡG

PORT_ACCESS

  TCP|*|25|*|* \
$C$[
msg_svr_base/lib/conn_throttle.so,throttle,$1,10] \
$N421$ Connection$ not$ accepted$ at$ this$ time$E

�䤤�A

$C �N�Ϲ�M�{���~��ҰʤU�@�Ӫ�涵�ءF�N�����ت���X�r��Χ@��M�{�Ǫ��s��J�r��C

$[msg_svr_base/lib/conn_throttle.so,throttle,$1,10] �O�{���w�I�s�A�䤤�Athrottle �O�{���w�`���A$1 �O��A�� IP ��}�A10 �O�C���ss�u���{�ɭȡC

$N421$ Connection$ not$ accepted$ at$ this$ time �N�ڵ��s��öǦ^ 421 SMTP �N�X (���������ڵ�) �M�T���u�����s�u���Q����v�C

$E �ߧY�����M�{�ǡC���N�ϥΦ����ت���X�r��@����M�{�Ǫ��̲׵��G�C


��ɮM�Φs���

Messaging Server �|���i�ভ�a�ˬd�s����M�C���ˬd�o�ͪ��T�nɶ���M��ϥΤ����q�l�l���w (�?���ˬd����T�i�ή�)�C

��� SMTP ��w�A�b�ǰe�ݥi�H�ǰe����̸�T�ζl���Ƥ��e�A�|�o�� FROM_ACCESS �ڵ��A�H�^3 MAIL FROM: ��O�C�b�ǰe�ݶ}�l�ǰe�l���Ƥ��e�A�|�o�� SEND_ACCESS �� MAIL_ACCESS �ڵ��A�H�^3 RCPT TO: ��O�C�p�G SMTP �l��Q�ڵ��AMessaging Server �N���|����άݨ�l���ơA�]���i�̤p�ư�榹���ڵ�����ӡC

�p�G�s�b�h�Ӧs����M��AMessaging Server �N���i��@�@�ˬd�C�]�N�O���AFROM_ACCESS�BSEND_ACCESS�BORIG_SEND_ACCESS�BMAIL_ACCESS �M ORIG_MAIL_ACCESS ��M�?�i��ͮġC


��զs����M

imsimta test -rewrite ���ε{�� (�S�O�O�a�� -from�B-source_channel�B-sender �M -destination_channel �ﶵ��) ����զs����M�Q�&��ΡC�аѾ\�uSun Java System Messaging Server Administration Reference�v(http://docs.sun.com/doc/819-0106) �H��o�ԲӸ�T�C�H�U�d�Ҥ���ܤF�d�� SEND_ACCESS ��M��H�ε��G����C

MAPPING TABLE:

SEND_ACCESS

  tcp_local|friendly@siroe.com|l|User@sesta.com     $Y
  tcp_local|unwelcome@varrius.com|l|User@sesta.com  $NGo$ away!

PROBE:

$
TEST/REWRITE/FROM="friendly@siroe.com" -
_$
/SOURCE=tcp_local/DESTINATION=l User@sesta.com
...
Submitted address list:
l
    User (SESTA.COM) *NOTIFY FAILURES* *NOTIFY DELAYS* Submitted notifications list:


$
TEST/REWRITE/FROM="unwelcome@varrius.com" -
_$ /SOURCE=tcp_local/DESTINATION=l User@sesta.com
...
Submitted address list:
Address list error -- 5.7.1 Go away!User@sesta.com

Submitted notifications list:


�s�W SMTP ��e

�̹w�]�AMessaging Server �Q�t�m������ SMTP ��e���xաF�]�N�O���A���|�ڵ��N�l�󴣥浹�Ӧۥ��g�{�Ҫ��~���ӷ� (�~���t�άO����A���Ҧb���D��~���Ҧ���L�t��) ���~����}���xաC���w�]�t�m������ SMTP ��e�D�`�D�ʡA�]�����N�Ҧ���L�t�γ���~���t�ΡC

�� IMAP �M POP �Τ�ݹxճz�L Messaging Server �t�Ϊ� SMTP ��A���N�l�󴣥��~����}�A�ӸӦ�}���ϥ� SMTP AUTH (SASL) �i��{�ҮɡA�t�η|�ڵ��o�Ǵ���xաC�]���A�z�i��Ʊ�ק�t�m�A�Ϥ��i�H�ѧO�ۤv�������t�ΩM�l���A�q�ӨϨӦ۳o�Ǧa�誺��e�`�Q����C

�ܩ���Ǩt�ΩM�l���Q�ѧO�������t�ΩM�l���A�o�q�`�� INTERNAL_IP ��M�?��A�Ӫ���� msg_svr_base/config/mappings �ɮפ��C

�Ҧp�A�b IP ��}�� 123.45.67.89 �� Messaging Server �t�ΤW�A�w�] INTERNAL_IP ��M��N��ܦp�U�G

INTERNAL_IP

   $(123.45.67.89/32)   $Y
   127.0.0.1   $Y
   *   $N

�b�o�̡A�ϥ� $(IP-pattern/signicant-prefix-bits) �y�k����l���ث�w�A���ŦX 123.45.67.89 ���Ҧ� 32 �줸�� IP ��}���ŦX�A�óQ������}�C�ĤG�Ӷ��رN�j�� IP ��} 127.0.0.1 �ѧO��������}�C�̫�@�Ӷ��ث�w�A�Ҧ���L IP ��}����3�Q������}�C�Ъ`�N�A�Ҧ����ثe���ܤ֭n���@�ӪŮ�C

�z�i�H�z�L�b�̫�@�� $N ���ثe��w��L IP ��}�Τl���ӷs�W��L���ءC�o�Ƕ��إ����b�����w IP ��}�Τl��� (�ϥ� $[.../...] �y�k��w�l���)�A�b�k���w $Y�C�Ϊ̱z�i�H�ק�{�� $(.../...) ���إH�����@�몺�l���C

�Ҧp�A�p�G�P�@�ӽd�ү��I�㦳�@�� class-C ���A�]�N�O���A���֦��Ҧ��� 123.45.67.0 �l���A�h�����I�ݭn�z�L�ܧ�ǰt��}�ҨϥΪ��줸�ƥH�ק��l���ءC�b�U������M�?�A�ڭ̱N 32 �줸�ܧ� 24 �줸�C�o�i�� class-C ���W���Ҧ��Τ�ݧ��i�H�z�L�� SMTP ��e��A����e�l��C

INTERNAL_IP

   $(123.45.67.89/24)   $Y
   127.0.0.1   $Y
   *   $N

�Ϊ̡A�p�G�����I�Ⱦ֦� 123.45.67.80 �� 123.45.67.99 �d�򤺪� IP ��}�A�h�����I�ݭn�ϥΡG

INTERNAL_IP

!Match IP addresses in the range 123.45.67.80-123.45.67.95
   $(123.45.67.80/28)   $Y
!Match IP addresses in the range 123.45.67.96-123.45.67.99
   $(123.45.67.96/30)   $Y
   127.0.0.1   $Y
   *   $N

�Ъ`�N�Aimsimta test -match ���ε{���i�Ω��ˬd IP ��}�O�_�ŦX�S�w�� $(.../...) ��ձ��Cimsimta test -mapping ���ε{����`�Ω��ˬd INTERNAL_IP ��M��O�_��U�� IP ��}��J���e���Ǧ^�һݵ��G�C

�ק� INTERNAL_IP ��M���A�нT�w�o�X imsimta restart ��O (�p�G�z���ϥΤw�sĶ���t�m���) �� imsimta refresh ��O (�p�G�z�ϥΤw�sĶ���t�m���)�A�H���ܧ�ͮġC

�����M�ɮשM�@���M��榡���i�@�B��T�A�H�Φ��� imsimta ��O�椽�ε{������T����� Messaging Server Reference Manual ���C

���\�V�~�����I�i�� SMTP ��e

�Ҧ����� IP ��}��3�p�W�ҭz�s�W�� INTERNAL_IP ��M��C�p�G�z���\�q�ͦn�ΦX�@�t��/���I�i�� SMTP ��e�A��²�檺��k�N�O�N���̻P�z����ڤ��� IP ��}�@�_�]�t�b�z�� INTERNAL_IP ��M�?�C

�p�G�z���Ʊ�N�o�Ǩt��/���@��ڤ����t��/���I (�Ҧp�A�X��O��Ψ�L����ت��A�z�Ʊ�Ϥ���ڤ����t���M�㦳��e�v�����ͦn�D�����t��)�A�٥i�H�ϥΨ�L��k�t�m�t�ΡC

�@�ؤ�k�O�]�w�S��q�D�A�H�����Ӧۦ����ͦn�t�Ϊ��l��C�����k�O�A�إߤ@�ӻP�z�{�� tcp_internal �q�D���� tcp_friendly �q�D�A��x��D��W�٬� tcp_friendly-daemon�A�ëإߤ@�ӻP�z�� INTERNAL_IP ��M������ FRIENDLY_IP ��M��A��W�C�X�n�t�Ϊ� IP ��}�C�M��b�ثe���g�W�h�᭱�G

! Do mapping lookup for internal IP addresses
[]    $E$R${INTERNAL_IP,$L}$U%[$L]@tcp_intranet-daemon

�[�J�s�����g�W�h�G

! Do mapping lookup for "friendly", non-internal IP addresses []
$E$R${FRIENDLY_IP,$L}$U%[$L]@tcp_friendly-daemon

�t�@�ؤ�k�O�N�H�U�榡���s���طs�W�� ORIG_SEND_ACCESS ��M�?�̫�@�� $N ���ت��W���G

  tcp_local|*@siroe.com|tcp_local|*    $Y

�䤤�Asiroe.com �O�ͦn��쪺�W�١A�÷s�W�H�U�榡�� ORIG_MAIL_ACCESS ��M��G

ORIG_MAIL_ACCESS

   TCP|*|25|$(match-siroe.com-IP-addresses)|*|SMTP|MAIL|    \
tcp_local|*@siroe.com|tcp_local|*     $Y
   TCP|*|*|*|*|SMTP|MAIL|tcp_local|*|tcp_local|*    $N

�䤤�A$(...) IP ��}�y�k�P�W�@�`���ҭz���y�k�ۦP�C�u�n��}���T�AORIG_SEND_ACCESS �ˬd�K�|���\�A�]���ڭ̥i�H�~���� ORIG_MAIL_ACCESS �ˬd�A���ˬd��[�Y��A�öȦb IP ��}�]�ŦX siroe.com IP ��}�����p�U�~�ন�\�C


�t�m SMTP ��e����

�z�i�H�ϥΦs����M����L�H�z�L�z�� Messaging Server �t����e SMTP �l��C�Ҧp�A�z�i�H����L�H�ϥαz���l��t�ΦV�ƥH�d�p����ں��q�l�H�c��e�U���l��C

�̹w�]�AMessaging Server �|����Ҧ� SMTP ��e���ʡA�]�A�ѥ��� POP �M IMAP �ϥΪ̶i�檺��e�C

�Y�n���ꥼ�g���v����e�P�ɤ��\�X�k������ϥΪ̶i����e�A�h�ݭn�t�m Messaging Server�A�Ϩ䪾�D�p��Ϥ3o�����ϥΪ̡C�Ҧp�A�ϥ� POP �� IMAP ������ϥΪ̨̾a Messaging Server �i�� SMTP ��e�C

�Y�n���� SMTP ��e�A�z�������G

�Y�n�ҥΤ����D��M�Τ�ݪ� SMTP ��e�\��A�z�����N�u�����vIP ��}�Τl���s�W�� INTERNAL_IP ��M��C

MTA �p��Ϥ$����l��M�~���l��

���F����l����e���ʡAMTA ������Ϥ7��۱z���I�������l��M���ۺ�ں��óz�L�z���t�Φ^���ں��~���l��C�e�̬O�z�n���\���l��A��̬O�z�n���ꪺ�l��C�z�i�H�b���e SMTP �q�D (�q�`�� tcp_local �q�D) �W�ϥ� switchchannel ����r�ӹ�{�Ϥ!A�̹w�]�w�]�w�����C

switchchannel ����r�i�� SMTP ��A���d��P���e�� SMTP �s�u���p����� IP ��}�CMessaging Server �ϥθ� IP ��}�H�αz�����g�W�h�Ϥ7��۱z��줺���� SMTP �s�u�M�Ӧ۱z���~�����s�u�C�M��A�i�H�ϥΦ���T�Ӥ�����l��q�T�M�~���l��q�T�C

�U���y�z�� MTA �t�m�O�̹w�]�]�w���A�b���t�m�U�A��A���i�H�Ϥ$����l��q�T�M�~���l��q�T�C

�ϥΤW�z�t�m�]�w�A�z��줺���ͪ� SMTP �l��N�g�� tcp_intranet �q�D�i�ӡC�Ҧ���L SMTP �l��N�g�� tcp_local �q�D�i�ӡC�t�αN�ھڶl��i�Ӫ��q�D�Ϥ$����l��M�~���l��C

�o�O�p���{���H����O switchchannel ����r�C������r�Q�M�Φ� tcp_local �q�D�C��l��i�J�z�� SMTP ��A���ɡA������r�|�Ϧ�A���d��P���e���s�u���p���ӷ� IP ��}�C��A���N�xչ鷺�e���s�u����� IP ��}�i��ϦV�T���ʭ��g�A�H�d�����p���q�D�C�p�G�ӷ� IP ��}�ŦX�z INTERNAL_IP ��M�?�� IP ��}�Τl���A�h�I�s�ӹ�M�?���g�W�h�|�N�a�}���g�� tcp_intranet �q�D�C

�ѩ� tcp_intranet �q�D�аO�� allowswitchchannel ����r�A�]���l��|�Q�ഫ�� tcp_intranet �q�D�ñq�ӳq�D�i�J�C�p�G�l��q�� IP ��}���b INTERNAL_IP ��M�?���Y�Өt�ζi�J�A�h�ϦV�T���ʭ��g�i��|���g�� tcp_local �q�D�A�]�i��|���g���L�q�D�C��O�A�����|���g�� tcp_intranet �q�D�A�åB�ѩ��L�q�D�̹w�]�аO�� noswitchchannel�A�]���l��]���|�ഫ���L�q�D�A�ӬO�O�d�b tcp_local �q�D���C


�`�N

�Ъ`�N�A�ϥΦr��utcp_local�v���Ҧ���M����ഫ�ɮ׶��إi��ݭn�ھڥγ~�ܧ󬰡utcp_*�v�Ρutcp_intranet�v�C


�Ϥ8g�{�ҨϥΪ̪��l��

�z�����I�i��㦳���ݩ�z��������u����v�Τ�ݨϥΪ̡C��o�ǨϥΪ̴���l��ɡA�l��N�q�~�� IP ��}���� �w �Ҧp��N��ں��A�Ȩ�3�̡C�p�G�z�ϥΪ̨ϥΪ��l��Τ�ݥi�H��� SASL �{�ҡA�h�L�̸g�{�Ҫ��s�u�N��M��L��N�~���s�u�Ϥ6}�ӡC���ɱz�i�H���\�g�{�Ҫ�����A�өڵ����g�{�Ҫ���e����xաC�z�i�H�b���e SMTP �q�D (�q�`�O tcp_local �q�D) �W�ϥ� saslswitchchannel ����r�ӰϤ8g�{�Ҫ��s�u�M���g�{�Ҫ��s�u�C

saslswitchchannel ����r�ϥΤ@�Ӥ޼ƨӫ�w�n�ഫ�쪺�q�D�F�p�G SMTP �H��̻{�Ҧ��\�A�h�L�̴��檺�l��|�Q��i�J��w���ഫ�q�D�C

�Y�n�s�W���ϧO���{�Ҵ���A�СG

  1. �b�z���t�m�ɮפ��A�ϥΤ��P���W�٥[�J�s�� TCP/IP �q�D�w�q�A�Ҧp�G
  2. tcp_auth smtp single_sys mx mustsaslserver noswitchchannel
    TCP-INTERNAL

    ���q�D��3���\�@��q�D�ഫ (�]�N�O���A�ӳq�D�W3�㦳��e�w�]�椤��T����t��w�� noswitchchannel)�C���q�D�W3�㦳 mustsaslserver�C

  3. �ק�z�� tcp_local �q�D�A�b�䤤�s�W maysaslserver �M saslswitchchannel tcp_auth�A�p�H�U�d�ҩҥܡG
  4. tcp_local smtp mx single_sys maysaslserver saslswitchchannel tcp_auth  \
    switchchannel
    |TCP-DAEMON

�ϥΦ��t�m�A���ǥi�ϥΥ���K�X�i��{�Ҫ��ϥΪ̶ǰe�� SMTP �l��N�i�J tcp_auth �q�D�C�Ӧۤ����D����g�{�Ҫ� SMTP �l�󤴱N�i�J tcp_internal�C�Ҧ���L SMTP �l��N�i�J tcp_local�C

����l����e

�{�b�Ъ`�N�H�U�d�ҡG����g���v���H��z�L�z���t����e SMTP �l��C����A�аO��z�n���\����ϥΪ���e SMTP �l��C�Ҧp�APOP �M IMAP �ϥΪ̨̾a�ϥ� Messaging Server �ǰe�L�̪��l��C�Ъ`�N�A����ϥΪ̥i��O����b����ϥΪ� (�L�̪��l��q���� IP ��}�i�J)�A�]�i��O����b���ݦ���@������ϥΪ̶i��{�Ҫ��ϥΪ̡C

�z�n�����ں��W�����H�ϥαz����A���i����e�C�ϥΥH�U�p�`���y�z���t�m�A�z�i�H�Ϥ3o�����O���ϥΪ̨ë���A�?���O�C�S�O�O�A�z�n����l��i�J�z�� tcp_local �q�D�ñq�P�@�q�D�o�X�C�z�i�H�ϥ� ORIG_SEND_ACCESS ��M���{���ت��C

�z�i�H�ϥ� ORIG_SEND_ACCESS ��M��ھڨӷ��q�D�M�ؼгq�D����q�T�C�b���Ҥ��A�n����Ӧ۩M�Ǧ^ tcp_local �q�D���q�T�C�i�H�ϥΥH�U ORIG_SEND_ACCESS ��M���{�G

ORIG_SEND_ACCESS

   tcp_local|*|tcp_local|*        $NRelaying$ not$ permitted

�b���d�Ҥ��A���ث��l�󤣯�i�J tcp_local �q�D�ê����Ǧ^�C�]�N�O���A�Ӷ��ؤ����\�~���l��i�J�z�� SMTP ��A���A�óQ������e�^��ں��C

�Шϥ� ORIG_SEND_ACCESS ��M�� (�Ӥ��O SEND_ACCESS ��M��) �H�K���ꤣ�|�M�Φܭ�ӲŦX ims-ms �q�D����} (��i�g�ѧO�W�ζl�󦬥�H�M��w�q�X�R�^��~����})�C�ϥ� SEND_ACCESS ��M��A�ϥΪ̻ݭn�ܤj����סA�~�ह�\�~���ϥΪ̦V�i�V�~�X�R�^�~���ϥΪ̪��l�󦬥�H�M��ǰe�l��A�ΦV�N�l����H�^�~����}���ϥΪ̶ǰe�l��C

�ϥ� DNS �d�� (�]�A�Ω� SMTP ��e���ꪺ RBL �ˬd)

�b Messaging Server ���A���h�ؤ��P����k�i�H�T�O�n���e����H���Ҧ�����l�󧡨Ӧۨ㦳���� DNS �W�٪���}�C��²�檺��k�O�N mailfromdnsverify �q�D����r��b tcp_local �q�D�W�C

Messaging Server �ٴ��ѤF dns_verify �{���A�i��z�ϥ� ORIG_MAIL_ACCESS �����H�U�W�h�A�T�O�n���e����H���Ҧ�����l�󧡨Ӧۨ㦳���� DNS �W�٪���}�G

ORIG_MAIL_ACCESS

  TCP|*|*|*|*|SMTP|MAIL|*|*@*|*|* \
$[msg_svr_base/lib/dns_verify.so, \
dns_verify,$6|$$y|$$NInvalid$ host:$ $$6$ -$ %e]

�H�W�d�Ҥ�������Ŧb������M���ؤ��㦳�y�k�N�q�C�ϱ׽u�r���O�X�k�a�~���U�@�檺��k�C

��i�ϥ� dns_verify �v���ھ� RBL (�Y�ɶ¬}�M��)�BMAPS (�l���ݥΨ���t��)�BDUL (�����ϥΪ̲M��) �� ORBS (�}����e�欰�ק�t��) �M���ˬd���e���s�u�A�@���O�@�t�ΧK�� UBE �v�T���t�@�عxաC�ϥηs�� mailfromdnsverify ����r�A�ϥΪ��٥i�H�ϥΤ@�س�W���u����t�m�v����k�i�榹���ˬd�A�Ӥ����I�s dns_verify�C�o�ا�²�檺��k�O�ϥ� dispatcher.cnf �ɮפ��� DNS_VERIFY_DOMAIN �ﶵ�C�Ҧp�A�b [SERVICE=SMTP] �@�`���A�N�ﶵ����ҳ]�w���n�ˬd���U�زM��C

[SERVICE=SMTP]
PORT=25
!...rest of normal options...
DNS_VERIFY_DOMAIN=rbl.maps.vix.com
DNS_VERIFY_DOMAIN=dul.maps.vix.com
!...etc...

�b���d�Ҥ��A�l��b SMTP �ŧO�Q�ڵ��A�]�N�O���A�l��b SMTP ��ܴv��Y�Q�ڵ��A�]�����|�ǰe�� MTA�C�o�ا�²���k�����I�O�A���N�ˬd�Ҧ����`���e�� SMTP �l��A�]�A�Ӧۤ����ϥΪ̪��l��C�p�G�z����ں��i�s���ʤU���A�o�|�ɭP�IJv���C�H�μ�b�����D�C�t�@�ؤ�k�O�q PORT_ACCESS ��M��� ORIG_MAIL_ACCESS ��M��I�s dns_verify�C�b PORT_ACCESS ��M�?�A�z�i�H�Ϫ�l���ؤ��ˬd����� IP ��}�ζl�󴣥�̡A�èϫ�Ӫ����ع��L�Ҧ��H����һݪ��ˬd�C�Ϊ̡A�b ORIG_MAIL_ACCESS ��M�?�A�p�G�ȹ�z�L tcp_local �q�D�i�Ӫ��l��M���ˬd�A�h�i���L�Ӧ۱z�������t��/�Τ�ݪ��l���ˬd�C�ϥΫ�V dns_verify �����ؤ��d�Ҧp�U�G

PORT_ACCESS

!Allow internal connections in unconditionally
  *|*|*|*|* $C$|INTERNAL_IP;$3|$Y$E
!Check other connections against RBL list
  TCP|*|25|*|* \
$C$[
msg_svr_base/lib/dns_verify.so, \
dns_verify_domain_port,$1,rbl.maps.vix.com.]EXTERNAL$E

ORIG_MAIL_ACCESS

  TCP|*|25|*|*|SMTP|*|tcp_local|*@*|*|* \
$C$[
msg_svr_base/lib/dns_verify.so, \
dns_verify_domain,$1,rbl.maps.vix.com.]$E

�䴩��� DNS ����Ʈw

dns_verify �{���䴩��� DNS ����Ʈw�A�Ӹ�Ʈw�i�Ω�T�w�i��ǰe�U���l�󪺤��e�� SMTP �s�u�C�Y�Ǥ��Ϊ� DNS ��Ʈw���]�t�q�`�Ω󦹥ت��� TXT �O��A�ӬO�ȥ]�t A �O��C

�b�嫬�]�w���ADNS ���w��S�w IP ��}�� TXT �O��]�t�@�Ӧb�ڵ��l��ɶǦ^ SMTP �Τ�ݪ���~�T���C��O�A�p�G����� TXT �O��A�ӬO��� A �O��A�h Messaging Server 5.2 ���e�� dns_verify �����|�Ǧ^�T���u�L�i�Ϊ���~��r�v�C

dns_verify �ثe�䴩�b�L�i�� TXT �O��p�U��w�w�]��r���ﶵ�C�Ҧp�A�H�U PORT_ACCESS ��M����ܦp��ҥθӿﶵ�G

PORT_ACCESS

    *|*|*|*|* $C$|INTERNAL_IP;$3|$Y$E  \
    TCP|*|25|*|*  \
$C$[
<msg_svr_base/lib/dns_verify.so  \
,dns_verify_domain_port,$1,dnsblock.siroe.com,Your$ host$ ($1)$  \
found$ on$ dnsblock$ list]$E
    * $YEXTERNAL

�b���d�Ҥ��A�p�G�b��� dnsblock.siroe.com ���d�ߤ���컷�ݨt�ΡA��O�S���i�Ϊ� TXT �O��A�h�|�Ǧ^�T���u�b dnsblock �M��W���z���D�� a.b.c.d�v�C


�B�z�j�q�s���

�b��M�?�ϥΤj�q���ت����I3�Ҷq��´���M��A�b�䤤�إߴX�Ӥ@��U�Φr�����ءA�H�I�s�@���Ʈw�i��S�w�d��C�P�����b��M�?�ϥΤj�q���جۤ�A�إߴX�өI�s�@���Ʈw�H�i��S�w�d�ߪ���M�?�ا󬰰��ġC

�@�ӯS�ҬO�A�Y�ǯ��I�Q����C�ӨϥΪ̡A�H�M�w�֥i�H���o��ں��q�l�l��C�ϥΦs���M�� (�p ORIG_SEND_ACCESS) �i�H��K�a��@��������C������γ~�A�z�L�N�j�q�S�w��T (�Ҧp�S�w��}) �x�s�b�@���Ʈw���A�ëإ߹�M�?�ج�3�a�I�s�@���Ʈw�A�i�j�T���@�IJv�M�į�C

�Ҧp�A�i�Ҷq�p�U�ҥܪ� ORIG_SEND_ACCESS ��M��C

ORIG_SEND_ACCESS

!Users allowed to send to Internet
!
  *|adam@siroe.com|tcp_local|*    $Y
  *|betty@siroe.com|tcp_local|*   $Y
!...etc...
!
! Users not allowed to send to Internet
!
  *|norman@siroe.com|tcp_local|*  $NInternet$ access$ not$ permitted
  *|opal@siroe.com|tcp_local|*    $NInternet$ access$ not$ permitted
!...etc...
!
! Users allowed to receive from the Internet
!
  tcp_*|*|*|adam@siroe.com        $Y
  tcp_*|*|*|betty@siroe.com       $Y
!...etc...
!
! Users not allowed to receive from the Internet
!
  tcp_*|*|*|norman@siroe.com      $NInternet$ e-mail$ not$ accepted
  tcp_*|*|*|opal@siroe.com        $NInternet$ e-mail$ not$ accepted
!...etc...

�P�ϥέӧO��J�C�ӨϥΪ̪���M��ۤ�A�H�U�d�Ҥ��ҥܪ��]�w�IJv�� (�p�G�]�t�ƥH�d�p���ϥΪ̶��ءA�h�IJv��)�A�ӹ���ܤF�@���Ʈw����l�X��r�ɽd�ҩM ORIG_SEND_ACCESS ��M��d�ҡC�Y�n�N����l�X�ɮ׽sĶ����Ʈw�榡�A�а�� imsimta crdb ��O�G

% imsimta crdb input-file-spec output-database-spec

�p�ݦ��� imsimta crdb ���ε{�����ԲӸ�T�A�аѾ\�uSun Java System Messaging Server Administration Reference�v�C

��Ʈw����

 

SEND|adam@domain.com    $Y
SEND|betty@domain.com   $Y
!...etc...
SEND|norman@domain.com  $NInternet$ access$ not$ permitted
SEND|opal@domain.com    $NInternet$ access$ not$ permitted
!...etc...
RECV|adam@domain.com    $Y
RECV|betty@domain.com   $Y
!...etc...
RECV|norman@domain.com  $NInternet$ e-mail$ not$ accepted
RECV|opal@domain.com    $NInternet$ e-mail$ not$ accepted

 

��M��

 

ORIG_SEND_ACCESS

!Check if may send to Internet
!
  *|*|*|tcp_local       $C${SEND|$1}$E
!
! Check if may receive from Internet
!
  tcp_*|*|*|*           $C${RECV|$3}$E

�b���d�Ҥ��A�b�@���Ʈw����ϥΥ�N�r�� SEND| �M RECV| (�H�Φb��M��Ѧ����ͪ��@���Ʈw����) ���ѤF�@�إi�Ϥ3o��ر����k�C�p���ҥܡA�ϥ� $C �M $E �X�Х]��@���Ʈw����O��M��I�s�@���Ʈw���嫬�覡�C

�H�W�d����ܤF�ھڤ@���Ʈw�����ˬd²���M�?���p�C�㦳��h������M���i�q�ϥΤ@���Ʈw����q�C


�� 2 ���!G�q�l�H�c�z�ᄍ

�q�l�H�c�z�ᄍ (�]�٬��z�ᄍ) �|�z��l����Y���]�t��w�r�ꪺ�l��A�îM�Ϋ�w�ʧ@�ܳo�Ƕl��C�޲z��i�H�z��z�L�q�D�� MTA �o���ϥΪ̪��l��y�CMessaging Server �z�ᄍ�x�s�b��A���W�A�åѦ�A���i����A�]���A���̦��ɳQ�٬���A���ݳW�h (SSR)�C

�����%]�t�H�U�U�`�G


�z�ᄍ�䴩

Messaging Server �z�ᄍ���z��{���y���A�Y�z���ں���ת���� 9�C�аѾ\ RFC3028�A�H��o����z��y�k�M�y�q����h��T�C���~�AMessaging Server �٤䴩�H�U�z�冀��G


�z�ᄍ²��

�z�ᄍ�Ѥ@�өΦh�ӱ�󦡰ʧ@�զ��A�o�ǰʧ@�|�ھڶl����Y�����r��M�Ω�l��C�@���޲z��A�z�i�H�إ߳q�D�ŧO���z�ᄍ�M MTA �d�򪺿z�ᄍ�A�H����e���ݭn���l��C�ϥΪ̥i�H�ϥ� Messenger Express ���L�̦ۤv���q�l�H�c�إߦU�۪��z�ᄍ�C����S�w����b Messenger Express �u�W����y�z�C

��A���N��H�U�u��ǮM�οz�ᄍ�G

  1. �ϥΪ̯ŧO���z�ᄍ
  2. �p�G�ӤH�q�l�H�c�z�ᄍ�i�H��T����Ωڵ��l��A�h�z�ᄍ��Ӷl�󪺳B�z�����C��O�p�G����̨S���q�l�H�c�z�ᄍ�A�Ϊ̦p�G�ϥΪ̪��q�l�H�c�z�ᄍ�L�k��T�M�Φܰ��D�l��AMessaging Server �b�U�@�B�N�M�γq�D�ŧO���z�ᄍ�C�w��U�ϥΪ̳]�w�z�ᄍ�C

  3. �q�D�ŧO���z�ᄍ
  4. �p�G�q�D�ŧO���z�ᄍ�i�H��T����Ωڵ��l��A�h�z�ᄍ��Ӷl�󪺳B�z�����C�_�h�AMessaging Server �N�b�U�@�B���M�� MTA �d�򪺿z�ᄍ (�p�G��)�C

  5. MTA �d�򪺿z�ᄍ

�̹w�]�A�C�ӨϥΪ̧��S���q�l�H�c�z�ᄍ�C��ϥΪ̨ϥ� Messenger Express �����إߤ@�өΦh�ӿz�ᄍ�ɡA�o�ǿz�ᄍ�N�x�s�b�ؿ�A�æb���ؿ�P�B�ƹL�{�v��� MTA �^��C


�إߨϥΪ̯ŧO���z�ᄍ

�w��U�ϥΪ̪��l��z�ᄍ�A�Ω�ؼЬ��S�w�ϥΪ̤��q�l�H�c���l��C�ȥi�ϥ� Messenger Express �ӫإ߰w��U�ϥΪ̪��l��z�ᄍ�C


�إ߳q�D�ŧO���z�ᄍ

�q�D�ŧO���z�ᄍ�A�Ω�b�q�D���Φ���C���C�Ӷl��C�����z�ᄍ���嫬�γ~�O����q�L�S�w�q�D���l��C

�Y�n�إ߳q�D�ŧO���z�ᄍ�A�СG

  1. �ϥ� Sieve �s�g�z�ᄍ�C
  2. �N�z�ᄍ�x�s��H�U�ؿ��ɮפ��G
  3. ../config/file.filter

    ���ɮץ����i�Q�Ҧ��HŪ��A���ݩ� MTA �� UID�C

  4. �Цb�q�D�t�m���]�t�H�U���e�G
  5. destinationfilter file:IMTA_TABLE:file.filter

  6. ���s�sĶ�t�m�í��s�Ұʬ��e�{���C
  7. �Ъ`�N�A�ܧ�z�ᄍ�ɮפ��ݭn���s�sĶ�έ��s�Ұʬ��e�{���C

destinationfilter �q�D����r�i�ҥΧΦ���C����M�γq�D���l��W���l��z��\��Csourcefilter �q�D����r�i�ҥ��� (�q) ��M�γq�D��C���l��W���l��z��\��C�C������r���㦳�@�ӥ��ݰѼơA�Ω��w�P�ӳq�D���p����3�q�D�z�ᄍ�ɮת���|�C

destinationfilter �q�D����r���y�k�p�U�G

destinationfilter URL-pattern

sourcefilter �q�D����r���y�k�p�U�G

sourcefilter URL-pattern

�䤤�AURL-pattern �O�@�� URL�A�Ω��w���D�q�D���z�ᄍ�ɮפ���|�C�b�H�U�d�Ҥ��Achannel-name �O�q�D���W�١C

destinationfilter file:///usr/tmp/filters/channel-name.filter

filter �q�D����r�i�b�M�Υ����q�D�W�ҥζl��z��\��C������r�]�t�@�ӥ��ݰѼơA�Ω��w�P�g�ѳq�D�����l�󪺨C�ӰT���ʦ�������p���z�ᄍ�ɮפ���|�C

filter �q�D����r���y�k�p�U�G

filter URL-pattern

URL-pattern �O�@�� URL�A�b�B�z���S��4��ǦC��A�|�N��|���w����̦�}���z�ᄍ�ɮסCURL-pattern �i�H�]�t�S�?�4��ǦC�A�p�G�J��ӧǦC�A�N�ϥαq���D����̦�} (local-part@host.domain) ���^��r���N�C�o�Ǵ4��ǦC�b�� 17-4����ܻ���C

fileinto ����r��w��M�ιq�l�H�c�z�ᄍ fileinto �B��l��p����ܦ�}�C�H�U�d�ҫ�w�O�_3�N��Ƨ��W�٧@���l��}���J��Ӫ���}�A��N�Ҧ����s�b���l��}�C

fileinto $U+$S@$D

�� 17-4  filter �q�D����r URL-pattern �4��аO (���Ϥ$j�p�g) 

����

�t�q

*

���s�թ���C

**

�X�R�ݩ� mailForwardingAddress�C���ݩʥi�H�O�ɭP�h�ӻ��e��}���ͪ��h���ݩʡC

$$

�4� $ �r��

$\

�j������r���p�g

$^

�j������r���j�g

$_

�b�����r�W�����j�p�g�ഫ

$~

�4��P��}��������p���D�ؿ��ɮ׸�|

$1S

�P $S �@�ˡA��O�p�G�S���i�Ϊ��l��}�A�h�����J��󤺮e

$2S

�P $S �@�ˡA��O�p�G�S���i�Ϊ��l��}�A�h�����J��󤺮e�çR���e�����r��

$3S

�P $S �@�ˡA��O�p�G�S���i�Ϊ��l��}�A�h�����J��󤺮e�é����᭱���r��

$A

�4���} local-part@ host.domain

$D

�4� host.domain

$E

���J�ĤG�ӳƥ��ݩ� LDAP_SPARE_1 ����

$F

���J���e�ɮ� (mailDeliveryFileURL �ݩ�) ���W��

$G

���J�ĤG�ӳƥ��ݩ� LDAP_SPARE_2 ����

$H

�4��D��

$I

���J�U�޺�� (�� domainUidSeparator ��w���9j�Ÿ��k�䪺 UID ����)�C�p�G�S���i�Ϊ��U�޺��A�ާ@�|����

$1I

�P $I �@�ˡA��O�p�G�S���i�Ϊ��U�޺��A�h�����J��󤺮e

$2I

�P $I �@�ˡA��O�p�G�S���i�Ϊ��U�޺��A�h�����J��󤺮e�çR���e�����r��

$3I

�P $I �@�ˡA��O�p�G�S���i�Ϊ��U�޺��A�h�����J��󤺮e�é����᭱���r��

$L

�4������

$M

���J UID�A�R���Ҧ��U�޺��

$P

���J��k�W�� (mailProgramDeliveryInfo �ݩ�)

$S

���J��ثe��}���p���l��}�C�l��}�O�l��}�9j�Ÿ� (�q�`�� +) ��즳��}���ϥΪ̳��!A��O���i�� MTA �ﶵ SUBADDRESS_CHAR ��w�C�p�G�����w�l��}�A�ާ@�|����

$U

���J�ثe��}���q�l�H�c���!C�i�H�O @ �Ÿ����䪺��Ӧ�}�A�άO�l��}�9j�Ÿ� (+) �e��}���䪺���!C


�إ� MTA �d�򪺿z�ᄍ

MTA �d�򪺿z�ᄍ�A�Ω�Φ���C�� MTA ���Ҧ��l��C�����z�ᄍ���嫬�γ~�O����U���l��Ψ�L���ݭn���l��A�L�׶l�󪺥ؼЦ�}�O���̡C�Y�n�إ� MTA �d�򪺿z�ᄍ�A�СG

  1. �ϥ� Sieve �s�g�z�ᄍ
  2. �N�z�ᄍ�x�s��H�U�ɮפ��G
  3. ../imta/config/imta.filter

    ���z�ᄍ�ɮץ����i�Q�Ҧ��HŪ��C�p�G�s�b�A�t�αN�۰ʨϥΦ��z�ᄍ�ɮסC

  4. ���s�sĶ�t�m�í��s�Ұʬ��e�{��

�ϥΤw�sĶ���t�m�ɡA�t�η|�N MTA �d�򪺿z�ᄍ�ɮר֤J�w�sĶ���t�m���C

�N�˱󪺶l���ѥX FILTER_DISCARD �q�D

�̹w�]�A�g�ѹq�l�H�c�z�ᄍ�˱󪺶l��N�ߧY�q�t�Τ��Q�˱� (�R��)�C��O�A��ϥΪ̪즸�]�w�q�l�H�c�z�ᄍ�� (�i��|�X��)�A�ΥX�󰣿�ت��A�N�R���@�~����@�q�ɶ��ܥ��n�C

�Y�n�N�q�l�H�c�z�ᄍ�R�����l��ȮɫO�d�b�t�ΤW�H�ݧR���A�Х�b�z�� MTA �t�m���s�W filter_discard �q�D�A�èϥ� notices �q�D����r��w�l��b�R���e�Q�O�d���ɶ���� (�q�`���Ѽ�)�A�p�H�U�d�ҩҥܡG

filter_discard notices 7
FILTER-DISCARD

�M��b MTA �ﶵ�ɮפ��]�w�ﶵ FILTER_DISCARD=2�C3�N filter_discard ��C�ϰ줤���l���ϥΪ̭ӤH�U�����Ƨ�������!C�b�����p�U�A�Ъ`�N�A�t�Τ��|�� filter_discard ��C�ϰ줤���l��ǰeĵ�i�T���A�]���|�b�ϥΪ̵o�X�h�^�ШD�ɱN�o�Ƕl���^���H��̡C�t�ι惡���l��Ĩ�ߤ@�ʧ@�O�A�b�̲׳q���ȹL�aA�Φp�G�ϥ� imsimta return ���������ε{���ШD��ʰh�^�ɡA�̲ץH�L�T���覡�R���o�Ƕl��C

�b Messaging Server 6 2004Q2 ���e�Ajettison �z��ʧ@�O�_�ϥ� filter_discard �q�D�� FILTER_DISCARD MTA �ﶵ�i�汱��C�{�b�h�� FILTER_JETTISON �ﶵ����A�ӿﶵ���w�]�� FILTER_DISCARD �]�w�M�w�CFILTER_DISCARD �q�`�w�]�� 1 (�˱󲾦� bitbucket �q�D)�C


�ϥΪ̼h�ſz�ᄍ����

�p�G�ϥΪ̩��z�ᄍ����w�yB��A�h�z�i�H���\�h�B�J�Ӭ��z�ᄍ����C���B�惡���Ҵy�z�C

  1. �Y�n�� fileinto �z�勵�`�B��A�Цb imta.cnf �ɮפ��d�� ims-ms �q�D�O�_�аO�p�U�G
  2. fileinto $u+$s@$d

  3. �q�ϥΪ̪� LDAP ���ؤ���o�ϥΪ̼h�Ū��z�ᄍ�C
  4. �ϥΪ̼h�Ū��z�ᄍ�x�s�b MailSieveRuleSource �ݩʤU�� LDAP ���ؤ��C�Y�n�ϥ� ldapsearch ��O�^��ϥΪ̼h�ſz�ᄍ�A�аO�?�̬O�H base64 �s�X���A�]���A�z�ݭn�ϥ� -Bo �t����X�i��ѽX�C

    ./ldapsearch -D "cn=directory manager" -w password -b "o=alcatraz.sesta.com,o=isp" -Bo uid=test

    �U�z imsimta test -rewrite ��O�]�N�۰ʸѽX�C

  5. ���� MTA �O�_�i�H�ݨ�ϥΪ̪��z�ᄍ�C
  6. �o�X��O�G

    # imsimta test -rewrite -filter -debug user@sesta.com

    �o�N��X�z�b�e���B�J���^��ϥΪ̤��z�ᄍ�C�p�G�z���ݨ�z�ᄍ�A�h�ݭn�d�X LDAP ���بS���N��Ǧ^����]�C�p�G imsimta test -rewrite ��X��ܤF�z�ᄍ�A�h�z�|�A�Ѩ� MTA �i�ݨ�ϥΪ̪��z�ᄍ�C�U�@�ӨB�J�O�ϥ� imsimta test -expression ��O��տz�ᄍ����Ķ�C

  7. �ϥ� imsimta test -exp ���ϥΪ̪��z�ᄍ����C�H�U��T�O���ݪ��G
    1. mailSieveRuleSource �ݩʤ����ϥΪ̤��z��{���y���y�z�C�аѾ\�H�W�B�J�C
    2. �Ω�IJ�o�z�ᄍ�� rfc2822 �l��C
    3. �n�D�z�ᄍ��l��i�檺�ާ@���y�z�C
  8. �إߤ�r�ɮ� (�Ҧp�Gtemp.filter)�A���ɮץ]�t���ϥΪ̤� mailSieveRuleSource: values ���z��{���y���y�z�C�d�ҡG
  9. require "fileinto";
    if anyof(header :contains
    ["To","Cc","Bcc","Resent-to","Resent-cc",
       "Resent-bcc"] "commsqa"){
       fileinto "QMSG";
    }

    �q浲�G�G�p�G commsqa �O�l�󪺦���̡A�h�N�Ӷl���k�ɦܦW�� QMSG ����Ƨ��C

  10. �إߦW�� test.msg ����r�ɮסA���ɮץ]�t�ϥΪ̴��Ѫ� rfc2822 �l���ɮפ����e�C
  11. �z�i�H�ϥΨϥΪ̶l���x�s�ϰ줤�� .msg �ɮסA�]�i�H�إߦW�� test_rfc2822.msg ����r�ɮסA���ɮץ]�t�ϥΪ̴��Ѫ� rfc2822 �l���ɮפ����e�C

  12. �ϥ� imsimta test -exp ��O�G
  13. # imsimta test -exp -mm -block -input=temp.filter -message=test_rfc2822.msg

  14. �ˬd��X�C
  15. imsimta test -exp ��O���̫�X��N��ܿz���Ķ�����G�A�p�U�ҥܡG

    Sieve Result: []
    �Ϊ̡G
    Sieve Result: [action]

    �䤤�Aaction �O��N�z�ᄍ�M�Ψ즹�l�󤧫�Ĩ�ʧ@�C

    �p�G�ŦX�z�ᄍ�����A�z�N�ݨ�Y�ǧ@�����G��ܪ��ʧ@�C�p�G���ŦX�A�h�z�ﵲ�G���ťաA�i��O�z�ᄍ�X�{�޿��~�� .msg �ɮפ��]�t�ŦX����T�C�p�G������L��~�A�h�O�z��{�����ɮץX�{�y�k��~�A�z�ݭn���䰣��C

    �p�ݦ����X����h�ԲӸ�T�A�аѾ\ imsimta test -exp ��X�C

  16. �p�G�z�ᄍ�b�y�k�W���ġA�åB���G�O���T���A�h�U�@�ӨB�J�O�ˬd tcp_local_slave.log ����O���ɡC
  17. �z��ժ��l���ɮץi��P�ǰe���l���ɮפ������ۦP�C�d�\�������e���ߤ@��k�O�ˬd tcp_local_slave.log �ɮסC���O��N��T��ܥ��b�ǰe�� MTA ���l��H�οz�ᄍ�p��M�Ω�Ӷl��C

    �p�ݦ�����o tcp_local_slave.log �����ɮת���h��T�A�аѾ\�u��������r�v���� slave_debug ����r�C

imsimta test -exp ��X

���㪺 imsimta test -exp ��O�p�U�ҥܡG

# imsimta test -exp -mm -block -input=temp.filter -message=rfc2822.msg

��X�d�Ҧp�U�G

�{���X�d�� 17-4  imsimta test -exp ��X

# imsimta test -exp -mm -block -input tmp.filter -message=rfc2822.msg
Expression: if header :contains ["to"] ["pamw"] (1)
Expression: {
Expression: redirect "usr3@sesta.com";
Expression: keep;
Expression: }
Expression:
Expression: Dump:header:2000114;0 3 1 :contains 1 "to" 1
"pamw" if 8 ;
Dump: redirect:2000121;0 1 1 "usr3@sesta.com" ; keep:2000117;0 (2)
Dump: 0
Result: 0
Filter result: [ redirect "usr3@sesta.com" keep ] (3)

 

1) Expression:��X����ܥ��b�q tmp.filter ��r�ɮפ�Ū��í�R���z�ᄍ�C�o�ǿz�ᄍ�ﰣ��{���ɤ��O�S�O���ΡC

2) Dump:��X����ܹq����Ķ�z��y�z�����G�C�z���|�ݨ����~�A�åB��X��G�P�z����J�ǰt�C�Ҧp�A�ɦL��ܤ�r redirect, usr3@sesta.com�A�o�P redirect "usr3@sesta.com"; �z�ᄍ�ɮפ���������

�p�G����ܦ��ǰt��r�A�h�z3�ӥ[�H�`�N�A�_�h�ﰣ��{���ɤ]���|�S�O���ΡC

3)�b��X�������A�z�N�ݨ� Filter result:�y�z�C�P���e�y�z���@�ˡA����إi�઺���G�G

Sieve Result: []             �Ϊ̡G             Sieve Result: [�ʧ@]

�䤤�A�ʧ@�O��z��{���ɱĨ�ʧ@�C�Ъ`�N�A���ɵ��G3���ťաC�Ҧp�A���˱󪺿z�ᄍ�A�z3�Ӵ�ը䤣�O�`�˱�z��ժ��C�� .msg �ɮסC�p�G�A���������Y�ǰʧ@�A�Ҧp�G

Filter result: [ fileinto "QMSG" keep]

�o�N��� rfc2822.msg �ɮפ�����r�P�z�ᄍ���۲šC�b���S�w�d�Ҥ��A�z�ᄍ�|�N�l���k�ɦܸ�Ƨ� QMSG ���A�æb����X���O�d��ƥ��C�b�����p�U�A���G�ʧ@�� fileinto �P keep�C

�b��տz�ᄍ�ɡA�z3�Ӵ�զU�� .msg �ɮץH��o��ص��G�C�z3�ӥû��n��ջP�z�ᄍ�۲Ū��l��O�_�w�Q�z��X�A�ӱz���Ʊ��諸�l��h���i��z��C

�аO��A�p�G�U�Φr���ǰt�A�h�����ϥ� :matches ��աA�Ӥ��O :contains�C�Ҧp�A�p�G�z�Ʊ� from=*@sesta.com �ǰt�A�h�����ϥ� :matches�A�_�h��շ|�]��������ձ��ӥ��ѡC

imsimta test -exp �y�k

imsimta test -exp ���w�� RFC2822 �l��i��z��{���y���y�z��աA�ñN�z�ᄍ�����G�ǰe�ܼзǿ�X�C

�y�k�p�U�G

imsimta test -exp -mm -block -input=Sieve_language_scriptfile -message=rfc2822_message_file

�䤤�A

-block �N��ӿ�J���ӿz��{���ɡC�w�]���N�C���@�ӳ�W���{���ɨó�W�i����C�ȷ��F�ɮ׵��.ɤ~���z��C

-input=Sieve_file ���]�t�z��{���ɪ��ɮסC�̹w�]�A�q stdin Ū���յ{���ɦ�ε{���ɰϬq�C

-message=message_file �O�]�t�n���i��z��{���ɴ�ժ� RFC 2822 �l�󤧤�r�ɮסC�䥲���� RFC 2822 �l��A�Ӥ���O��C�ɮ� (�D zz*.00 �ɮ�)�C

�Ұʤ���A����O�|Ū��{���ɸ�T�A�b��նl�󪺤W�U�夤�i����A�üg�X���G�C���G��ܱN�Ĩ�ʧ@�H�ε{���ɤ��̲״y�z�����G�C

��L���Ϊ����w�Ÿ��p�U�G

-from=address ��w�n�b�T���ʴ�դ��ϥΪ� from: ��}�C�w�]���ϥ� RETURN_ADDRESS MTA �ﶵ��w���ȡC

-output=file �N���G�g�J file�C�w�]���N�{���ɵ��G�g�J stdout�C



�W�@��      �ؿ�      �d�      �U�@��     


Copyright 2005 Sun Microsystems, Inc. ���v�Ҧ��C