postfixµÄUCE£¨unsolicited commercial email£©¿ØÖÆ ¡¡¡¡ËùνUCE¿ØÖƾÍÊÇÖ¸¿ØÖÆpostfix½ÓÊÕ»òת·¢À´×ÔÓÚʲôµØ·½µÄÓʼþ¡£
¡¡¡¡È±Ê¡µØ£¬postfixת·¢·ûºÏÒÔÏÂÌõ¼þµÄÓʼþ£º
¡¡¡¡* À´×Ô¿Í»§¶ËipµØÖ··ûºÏ$mynetworksµÄÓʼþ¡£
¡¡¡¡* À´×Ô¿Í»§¶ËÖ÷»úÃû·ûºÏ$relay_domains¼°Æä×ÓÓòµÄÓʼþ¡£
¡¡¡¡* Ä¿µÄµØÎª$relay_domains¼°Æä×ÓÓòµÄÓʼþ¡£
¡¡¡¡È±Ê¡µØ£¬postfix½ÓÊÜ·ûºÏÒÔÏÂÌõ¼þµÄÓʼþ£º
¡¡¡¡* Ä¿µÄµØÎª$inet_interfacesµÄÓʼþ¡£
¡¡¡¡* Ä¿µÄµØÎª$mydestinationµÄÓʼþ¡£
¡¡¡¡* Ä¿µÄµØÎª$virtual_mapsµÄÓʼþ¡£
¡¡¡¡µ«ÊÇÎÒÃÇÒ²¿ÉÒÔͨ¹ýÏÂÃæµÄ¹æÔòÀ´ÊµÏÖ¸üÇ¿´óµÄ¿ØÖƹ¦ÄÜ¡£
¡¡
¡¡1£® ÐÅÍ·¹ýÂË
¡¡¡¡Í¨¹ýheader_checks²ÎÊýÏÞÖÆ½ÓÊÕÓʼþµÄÐÅÍ·µÄ¸ñʽ£¬Èç¹û·ûºÏÖ¸¶¨µÄ¸ñʽ£¬Ôò¾Ü¾ø½ÓÊÕ¸ÃÓʼþ¡£¿ÉÒÔÖ¸¶¨Ò»¸ö»ò¶à¸ö²éѯÁÐ±í£¬Èç¹ûÐÂÓʼþµÄÐÅÍ··ûºÏÁбíÖеÄijһÏîÔò¾Ü¾ø¸Ã½ÓÊÕÓʼþ¡£È磺
¡¡¡¡header_checks = regexp:/etc/postfix/header_checks
¡¡¡¡header_checks = pcre:/etc/postfix/header_checks
¡¡¡¡È±Ê¡µØ£¬postfix²»½øÐÐÐÅÍ·¹ýÂË¡£
¡¡
¡¡2£®¿Í»§¶ËÖ÷»úÃû/µØÖ·ÏÞÖÆ
¡¡¡¡Í¨¹ýsmtpd_client_restrictions²ÎÊýÏÞÖÆ¿ÉÒÔÏòpostfix·¢ÆðSMTP Á¬½ÓµÄ¿Í»§¶ËµÄÖ÷»úÃû»òipµØÖ·¡£¿ÉÒÔÖ¸¶¨Ò»¸ö»ò¶à¸ö²ÎÊýÖµ£¬ÖмäÓöººÅ¸ô¿ª¡£ÏÞÖÆ¹æÔòÊǰ´ÕÕ²éѯµÄ˳Ðò½øÐе쬵ÚÒ»Ìõ·ûºÏÌõ¼þµÄ¹æÔò±»Ö´ÐС£¿ÉÓõĹæÔòÓУº
¡¡¡¡reject_unknown_client£ºÈç¹û¿Í»§¶ËµÄipµØÖ·ÔÚDNSÖÐûÓÐPTR¼Ç¼Ôò¾Ü¾ø×ª·¢¸Ã¿Í»§¶ËµÄÁ¬½ÓÇëÇ󡣿ÉÒÔÓÃunknown_client_reject_code²ÎÊýÖ¸¶¨·µ»Ø¸ø¿Í»§»úµÄ´íÎó´úÂ루ȱʡΪ450£©¡£Èç¹ûÄãÓÐÓû§Ã»ÓÐ×÷DNS¼Ç¼Ôò²»ÒªÆôÓøÃÑ¡Ïî¡£
¡¡¡¡permit_mynetworks£ºÈç¹û¿Í»§¶ËµÄipµØÖ··ûºÏ$mynetworks²ÎÊý¶¨ÒåµÄ·¶Î§Ôò½ÓÊܸÿͻ§¶ËµÄÁ¬½ÓÇëÇ󣬲¢×ª·¢¸ÃÓʼþ¡£
¡¡¡¡check_client_access maptype:mapname£º¸ù¾Ý¿Í»§¶ËµÄÖ÷»úÃû¡¢¸¸ÓòÃû¡¢ipµØÖ·»òÊôÓÚµÄÍøÂçËÑË÷accessÊý¾Ý¿â¡£Èç¹ûËÑË÷µÄ½á¹ûΪREJECT »òÕß '[45]XX text' Ôò¾Ü¾ø¸Ã¿Í»§¶ËµÄÁ¬½ÓÇëÇó£»Èç¹ûËÑË÷µÄ½á¹ûΪOK¡¢RELAY »òÊý×ÖÔò½ÓÊܸÿͻ§¶ËµÄÁ¬½ÓÇëÇ󣬲¢×ª·¢¸ÃÓʼþ¡£¡£¿ÉÒÔÓÃaccess_map_reject_code²ÎÊýÖ¸¶¨·µ»Ø¸ø¿Í»§»úµÄ´íÎó´úÂ루ȱʡΪ554£©¡£
¡¡¡¡reject_maps_rbl£ºÈç¹û¿Í»§¶ËµÄÍøÂçµØÖ··ûºÏ$maps_rbl_domains²ÎÊýµÄÖµÔò¾Ü¾ø¸Ã¿Í»§¶ËµÄÁ¬½ÓÇëÇ󡣿ÉÒÔÓÃmaps_rbl_reject_code²ÎÊýÖ¸¶¨·µ»Ø¸ø¿Í»§»úµÄ´íÎó´úÂ루ȱʡΪ554£©¡£
¡¡¡¡Ê¾Àý£º
¡¡¡¡smtpd_client_restrictions = hash:/etc/postfix/access, reject_maps_rbl
¡¡¡¡smtpd_client_restrictions = permit_mynetworks, reject_unknown_client
¡¡¡¡¸Ã²ÎÊýµÄȱʡֵΪ£º
¡¡¡¡smtpd_client_restrictions =
¡¡¡¡Ò²¼´½ÓÊÕÀ´×ÔÈκοͻ§¶ËµÄSMTPÁ¬½Ó¡£
¡¡¡¡
3. ÊÇ·ñÇëÇóHELOÃüÁî
¡¡¡¡¿ÉÒÔͨ¹ýsmtpd_helo_required²ÎÊýÖ¸¶¨¿Í»§¶ËÔÚSMTP»á»°µÄ¿ªÊ¼ÊÇ·ñ·¢ËÍÒ»¸öHELOÃüÁî¡£Äã¿ÉÒÔÖ¸¶¨¸Ã²ÎÊýµÄֵΪyes»òno¡£È±Ê¡ÖµÎª£º
¡¡¡¡smtpd_helo_required = no
¡¡¡¡
4. HELOÖ÷»úÃûÏÞÖÆ
¡¡¡¡¿ÉÒÔͨ¹ýsmtpd_helo_restrictions²ÎÊýÖ¸¶¨¿Í»§¶ËÔÚÖ´ÐÐHELOÃüÁîʱ·¢Ë͸øpostfixµÄÖ÷»úÃû¡£È±Ê¡µØ£¬postfix½ÓÊÕ¿Í»§¶Ë·¢Ë͵ÄÈÎÒâÐÎʽµÄÖ÷»úÃû¡£¿ÉÒÔÖ¸¶¨Ò»¸ö»ò¶à¸ö²ÎÊýÖµ£¬ÖмäÓöººÅ¸ô¿ª¡£ÏÞÖÆ¹æÔòÊǰ´ÕÕ²éѯµÄ˳Ðò½øÐе쬵ÚÒ»Ìõ·ûºÏÌõ¼þµÄ¹æÔò±»Ö´ÐС£¿ÉÓõĹæÔòÓУº
¡¡¡¡reject_invalid_hostname£ºÈç¹ûHELOÃüÁîËù´øµÄÖ÷»úÃû²ÎÊý²»·ûºÏÓï·¨¹æ·¶Ôò¾Ü¾ø¿Í»§»úµÄÁ¬½ÓÇëÇ󡣿ÉÒÔÓÃinvalid_hostname_reject_code²ÎÊýÖ¸¶¨·µ»Ø¸ø¿Í»§»úµÄ´íÎó´úÂ루ȱʡΪ501£©¡£
¡¡¡¡permit_naked_ip_address£ºRFCÒªÇó¿Í»§¶ËµÄHELOÃüÁî°üº¬µÄipµØÖ··ÅÔÚ·½À¨ºÅÄÚ£¬Äã¿ÉÒÔÓÃpermit_naked_ip_address²ÎÊýÈ¡Ïû¸ÃÏÞÖÆ¡£ÒòΪÓеÄmail¿Í»§¶Ë²»×ñÊØ¸ÃRFCµÄ¹æ¶¨¡£
¡¡¡¡reject_unknown_hostname£ºÈç¹û¿Í»§¶ËÖ´ÐÐHELOÃüÁîʱµÄÖ÷»úÃûÔÚDNSÖÐûÓÐÏàÓ¦µÄA »ò MX ¼Ç¼Ôò¾Ü¾ø¸Ã¿Í»§¶ËµÄÁ¬½ÓÇëÇ󡣿ÉÒÔÓÃinvalid_hostname_reject_code²ÎÊýÖ¸¶¨·µ»Ø¸ø¿Í»§»úµÄ´íÎó´úÂ루ȱʡΪ450£©¡£
¡¡¡¡reject_non_fqdn_hostname£ºÈç¹û¿Í»§¶ËÖ´ÐÐHELOÃüÁîʱµÄÖ÷»úÃû²»ÊÇRFC¹æ¶¨µÄÍêÕûµÄÓòÃûÔò¾Ü¾ø¿Í»§¶ËµÄÁ¬½ÓÇëÇ󡣿ÉÒÔÓÃinvalid_hostname_reject_code²ÎÊýÖ¸¶¨·µ»Ø¸ø¿Í»§»úµÄ´íÎó´úÂ루ȱʡΪ504£©¡£
¡¡¡¡check_helo_access maptype:mapname£º¸ù¾Ý¿Í»§¶ËHELOµÄÖ÷»úÃû¡¢¸¸ÓòÃûËÑË÷accessÊý¾Ý¿â¡£Èç¹ûËÑË÷µÄ½á¹ûΪREJECT »òÕß '[45]XX text' Ôò¾Ü¾ø¸Ã¿Í»§¶ËµÄÁ¬½ÓÇëÇó£»Èç¹ûËÑË÷µÄ½á¹ûΪOK¡¢RELAY »òÊý×ÖÔò½ÓÊܸÿͻ§¶ËµÄÁ¬½ÓÇëÇ󡣿ÉÒÔÓÃaccess_map_reject_code²ÎÊýÖ¸¶¨·µ»Ø¸ø¿Í»§»úµÄ´íÎó´úÂ루ȱʡΪ554£©¡£
¡¡¡¡Ê¾Àý£º
¡¡¡¡smtpd_helo_restrictions = permit_mynetworks, reject_invalid_hostname
¡¡
¡¡5. RFC 821ÐÅÍ·ÏÞÖÆ
¡¡¡¡RFC 821¶ÔÓʼþµÄÐÅÍ·×öÁËÑϸñµÄ¹æ¶¨£¬µ«Êǹ㷺ʹÓõÄsendmail²¢²»Ö§
¡¡¡¡³Ö¸Ã¹æ¶¨£¬ËùÒÔ¶ÔÓڸòÎÊýÎÒÃÇÖ»ÄÜ˵²»£¬¼´£º
¡¡¡¡strict_rfc821_envelopes = no
¡¡¡¡
6. ͨ¹ý·¢¼þÈ˵ØÖ·½øÐÐÏÞÖÆ
¡¡¡¡¿ÉÒÔÓÃsmtpd_sender_restrictions²ÎÊýͨ¹ý·¢¼þÈËÔÚÖ´ÐÐMAIL FROMÃüÁîʱÌṩµÄµØÖ·½øÐÐÏÞÖÆ¡£¿ÉÒÔÖ¸¶¨Ò»¸ö»ò¶à¸ö²ÎÊýÖµ£¬ÖмäÓöººÅ¸ô¿ª¡£ÏÞÖÆ¹æÔòÊǰ´ÕÕ²éѯµÄ˳Ðò½øÐе쬵ÚÒ»Ìõ·ûºÏÌõ¼þµÄ¹æÔò±»Ö´ÐС£¿ÉÓõĹæÔòÓУº
¡¡¡¡reject_unknown_sender_domain£ºÈç¹ûMAIL FROMÃüÁîÌṩµÄÖ÷»úÃûÔÚDNSÖÐûÓÐÏàÓ¦µÄA »ò MX ¼Ç¼Ôò¾Ü¾ø¸Ã¿Í»§¶ËµÄÁ¬½ÓÇëÇ󡣿ÉÒÔÓÃunknown_address_reject_code²ÎÊýÖ¸¶¨·µ»Ø¸ø¿Í»§»úµÄ´íÎó´úÂ루ȱʡΪ450£©¡£
¡¡¡¡check_sender_access maptype:mapname£º¸ù¾ÝMAIL FROMÃüÁîÌṩµÄÖ÷»úÃû¡¢¸¸ÓòËÑË÷accessÊý¾Ý¿â¡£Èç¹ûËÑË÷µÄ½á¹ûΪREJECT »òÕß '[45]XX text' Ôò¾Ü¾ø¸Ã¿Í»§¶ËµÄÁ¬½ÓÇëÇó£»Èç¹ûËÑË÷µÄ½á¹ûΪOK¡¢RELAY »òÊý×ÖÔò½ÓÊܸÿͻ§¶ËµÄÁ¬½ÓÇëÇ󡣿ÉÒÔÓÃaccess_map_reject_code²ÎÊýÖ¸¶¨·µ»Ø¸ø¿Í»§»úµÄ´íÎó´úÂ루ȱʡΪ554£©¡£¿ÉÒÔͨ¹ý¸Ã²ÎÊý¹ýÂËÀ´×ÔijЩ²»ÊÜ»¶ÓµÄ·¢¼þÈ˵ÄÓʼþ¡£
¡¡¡¡reject_non_fqdn_sender£ºÈç¹ûMAIL FROMÃüÁîÌṩµÄÖ÷»úÃû²»ÊÇRFC¹æ¶¨µÄÍêÕûµÄÓòÃûÔò¾Ü¾ø¿Í»§¶ËµÄÁ¬½ÓÇëÇ󡣿ÉÒÔÓÃnon_fqdn_reject_code ²ÎÊýÖ¸¶¨·µ»Ø¸ø¿Í»§»úµÄ´íÎó´úÂ루ȱʡΪ504£©¡£
¡¡¡¡È±Ê¡µØ£¬postfix½ÓÊÜÀ´×ÔÈκη¢¼þÈ˵ÄÓʼþ¡£
¡¡¡¡Ê¾Àý£º
¡¡¡¡smtpd_sender_restrictions = hash:/etc/postfix/access, reject_unknown_sender_domain
¡¡¡¡
7. ͨ¹ýÊÕ¼þÈ˵ØÖ·½øÐйýÂË
¡¡¡¡¿ÉÒÔÓÃsmtpd_recipient_restrictions²ÎÊýͨ¹ý·¢¼þÈËÔÚÖ´ÐÐRCPT TOÃüÁîʱÌṩµÄµØÖ·½øÐÐÏÞÖÆ¡£È±Ê¡ÖµÎª£º
¡¡¡¡smtpd_recipient_restrictions = permit_mynetworks, check_relay_domains
¡¡¡¡¿ÉÒÔÖ¸¶¨Ò»¸ö»ò¶à¸ö²ÎÊýÖµ£¬ÖмäÓöººÅ¸ô¿ª¡£ÏÞÖÆ¹æÔòÊǰ´ÕÕ²éѯµÄ˳Ðò½øÐе쬵ÚÒ»Ìõ·ûºÏÌõ¼þµÄ¹æÔò±»Ö´ÐС£¿ÉÓõĹæÔòÓУº
¡¡¡¡check_relay_domains£ºÈç¹û·ûºÏÒÔϵÄÌõ¼þ£¬Ôò½ÓÊÜSMTPÁ¬½ÓÇëÇ󣬷ñÔò¾Ü¾ø¸ÃÁ¬½Ó£¬¿ÉÒÔÓÃrelay_domains_reject_code ²ÎÊýÖ¸¶¨·µ»Ø¸ø¿Í»§»úµÄ´íÎó´úÂ루ȱʡΪ504£©¡£
¡¡¡¡* ¿Í»§¶ËÖ÷»úÃû·ûºÏ$relay_domains¼°Æä×ÓÓò
¡¡¡¡* Ä¿µÄµØÎª$inet_interfaces¡¢$mydestination»ò$virtual_maps
¡¡¡¡permit_auth_destination£º²»¹Ü¿Í»§¶ËµÄÖ÷»úÃû£¬Ö»Òª·ûºÏÒÔϵÄÌõ¼þ£¬¾Í
¡¡¡¡½ÓÊÜSMTPÁ¬½ÓÇëÇó£º
¡¡¡¡* ½âÎöºóµÄÄ¿±êµØÖ··ûºÏ$relay_domains¼°Æä×ÓÓò
¡¡¡¡* ½âÎöºóµÄÄ¿±êµØÖ··ûºÏ$inet_interfaces¡¢$mydestination»ò$virtual_maps
¡¡¡¡reject_unauth_destination£º²»¹Ü¿Í»§¶ËµÄÖ÷»úÃû£¬Ö»Òª·ûºÏÒÔϵÄÌõ¼þ£¬¾Í¾Ü¾ø¸Ã¿Í»§¶ËSMTPÁ¬½ÓÇëÇó£º
¡¡¡¡* ½âÎöºóµÄÄ¿±êµØÖ··ûºÏ$relay_domains¼°Æä×ÓÓò
¡¡¡¡* ½âÎöºóµÄÄ¿±êµØÖ··ûºÏ$inet_interfaces¡¢$mydestination»ò$virtual_maps
¡¡¡¡check_recipient_access£º¸ù¾Ý½âÎöºóµÄÄ¿±êµØÖ·¡¢¸¸ÓòËÑË÷accessÊý¾Ý¿â¡£Èç¹ûËÑË÷µÄ½á¹ûΪREJECT »òÕß '[45]XX text' Ôò¾Ü¾ø¸Ã¿Í»§¶ËµÄÁ¬½ÓÇëÇó£»Èç¹ûËÑË÷µÄ½á¹ûΪOK¡¢RELAY »òÊý×ÖÔò½ÓÊܸÿͻ§¶ËµÄÁ¬½ÓÇëÇ󡣿ÉÒÔÓÃaccess_map_reject_code²ÎÊýÖ¸¶¨·µ»Ø¸ø¿Í»§»úµÄ´íÎó´úÂ루ȱʡΪ554£©¡£
¡¡¡¡reject_unknown_recipient_domain£ºÈç¹ûÊÕ¼þÈ˵ÄÓʼþµØÖ·ÔÚDNSÖÐûÓÐÏàÓ¦µÄA »ò MX ¼Ç¼Ôò¾Ü¾ø¸Ã¿Í»§¶ËµÄÁ¬½ÓÇëÇ󡣿ÉÒÔÓÃunknown_address_reject_code²ÎÊýÖ¸¶¨·µ»Ø¸ø¿Í»§»úµÄ´íÎó´úÂ루ȱʡΪ450£©¡£
¡¡¡¡reject_non_fqdn_recipient£ºÈç¹û·¢¼þÈËÔÚÖ´ÐÐRCPT TOÃüÁîʱÌṩµÄµØÖ·
¡¡¡¡²»ÊÇÍêÕûµÄÓòÃûÔò¾Ü¾øÆäSMTPÁ¬½ÓÇëÇ󡣿ÉÒÔÓÃThe non_fqdn_reject_code²ÎÊýÖ¸¶¨·µ»Ø¸ø¿Í»§»úµÄ´íÎó´úÂ루ȱʡΪ504£©¡£