1>>> # 2>>> # Initialize. 3>>> # 4>>> #! ../bin/postmap smtpd_check_access 5>>> #msg_verbose 1 6>>> smtpd_delay_reject 0 7OK 8>>> mynetworks 127.0.0.0/8,168.100.3.0/28 9OK 10>>> # 11>>> # Test the client restrictions. 12>>> # 13>>> client_restrictions hash:./smtpd_check_access 14OK 15>>> client 4.1.1_dsn 1.2.3.4 16./smtpd_check: mapping DSN status 4.1.1 into Client host status 4.0.0 17./smtpd_check: <queue id>: reject: CONNECT from 4.1.1_dsn[1.2.3.4]: 554 5.0.0 <4.1.1_dsn[1.2.3.4]>: Client host rejected: reject; proto=SMTP 18554 5.0.0 <4.1.1_dsn[1.2.3.4]>: Client host rejected: reject 19>>> client 4.1.2_dsn 1.2.3.4 20./smtpd_check: mapping DSN status 4.1.2 into Client host status 4.0.0 21./smtpd_check: <queue id>: reject: CONNECT from 4.1.2_dsn[1.2.3.4]: 554 5.0.0 <4.1.2_dsn[1.2.3.4]>: Client host rejected: reject; proto=SMTP 22554 5.0.0 <4.1.2_dsn[1.2.3.4]>: Client host rejected: reject 23>>> client 4.1.3_dsn 1.2.3.4 24./smtpd_check: mapping DSN status 4.1.3 into Client host status 4.0.0 25./smtpd_check: <queue id>: reject: CONNECT from 4.1.3_dsn[1.2.3.4]: 554 5.0.0 <4.1.3_dsn[1.2.3.4]>: Client host rejected: reject; proto=SMTP 26554 5.0.0 <4.1.3_dsn[1.2.3.4]>: Client host rejected: reject 27>>> client 4.1.4_dsn 1.2.3.4 28./smtpd_check: mapping DSN status 4.1.4 into Client host status 4.0.0 29./smtpd_check: <queue id>: reject: CONNECT from 4.1.4_dsn[1.2.3.4]: 554 5.0.0 <4.1.4_dsn[1.2.3.4]>: Client host rejected: reject; proto=SMTP 30554 5.0.0 <4.1.4_dsn[1.2.3.4]>: Client host rejected: reject 31>>> client 4.1.5_dsn 1.2.3.4 32./smtpd_check: mapping DSN status 4.1.5 into Client host status 4.0.0 33./smtpd_check: <queue id>: reject: CONNECT from 4.1.5_dsn[1.2.3.4]: 554 5.0.0 <4.1.5_dsn[1.2.3.4]>: Client host rejected: reject; proto=SMTP 34554 5.0.0 <4.1.5_dsn[1.2.3.4]>: Client host rejected: reject 35>>> client 4.1.6_dsn 1.2.3.4 36./smtpd_check: mapping DSN status 4.1.6 into Client host status 4.0.0 37./smtpd_check: <queue id>: reject: CONNECT from 4.1.6_dsn[1.2.3.4]: 554 5.0.0 <4.1.6_dsn[1.2.3.4]>: Client host rejected: reject; proto=SMTP 38554 5.0.0 <4.1.6_dsn[1.2.3.4]>: Client host rejected: reject 39>>> client 4.1.7_dsn 1.2.3.4 40./smtpd_check: mapping DSN status 4.1.7 into Client host status 4.0.0 41./smtpd_check: <queue id>: reject: CONNECT from 4.1.7_dsn[1.2.3.4]: 554 5.0.0 <4.1.7_dsn[1.2.3.4]>: Client host rejected: reject; proto=SMTP 42554 5.0.0 <4.1.7_dsn[1.2.3.4]>: Client host rejected: reject 43>>> client 4.1.8_dsn 1.2.3.4 44./smtpd_check: mapping DSN status 4.1.8 into Client host status 4.0.0 45./smtpd_check: <queue id>: reject: CONNECT from 4.1.8_dsn[1.2.3.4]: 554 5.0.0 <4.1.8_dsn[1.2.3.4]>: Client host rejected: reject; proto=SMTP 46554 5.0.0 <4.1.8_dsn[1.2.3.4]>: Client host rejected: reject 47>>> client 4.4.0_dsn 1.2.3.4 48./smtpd_check: <queue id>: reject: CONNECT from 4.4.0_dsn[1.2.3.4]: 554 5.4.0 <4.4.0_dsn[1.2.3.4]>: Client host rejected: reject; proto=SMTP 49554 5.4.0 <4.4.0_dsn[1.2.3.4]>: Client host rejected: reject 50>>> client dummy dummy 51OK 52>>> # 53>>> # Test the helo restrictions 54>>> # 55>>> helo_restrictions hash:./smtpd_check_access 56OK 57>>> helo 4.1.1_dsn 58./smtpd_check: mapping DSN status 4.1.1 into Helo command status 4.0.0 59./smtpd_check: <queue id>: reject: HELO from dummy[dummy]: 554 5.0.0 <4.1.1_dsn>: Helo command rejected: reject; proto=SMTP helo=<4.1.1_dsn> 60554 5.0.0 <4.1.1_dsn>: Helo command rejected: reject 61>>> helo 4.1.2_dsn 62./smtpd_check: mapping DSN status 4.1.2 into Helo command status 4.0.0 63./smtpd_check: <queue id>: reject: HELO from dummy[dummy]: 554 5.0.0 <4.1.2_dsn>: Helo command rejected: reject; proto=SMTP helo=<4.1.2_dsn> 64554 5.0.0 <4.1.2_dsn>: Helo command rejected: reject 65>>> helo 4.1.3_dsn 66./smtpd_check: mapping DSN status 4.1.3 into Helo command status 4.0.0 67./smtpd_check: <queue id>: reject: HELO from dummy[dummy]: 554 5.0.0 <4.1.3_dsn>: Helo command rejected: reject; proto=SMTP helo=<4.1.3_dsn> 68554 5.0.0 <4.1.3_dsn>: Helo command rejected: reject 69>>> helo 4.1.4_dsn 70./smtpd_check: mapping DSN status 4.1.4 into Helo command status 4.0.0 71./smtpd_check: <queue id>: reject: HELO from dummy[dummy]: 554 5.0.0 <4.1.4_dsn>: Helo command rejected: reject; proto=SMTP helo=<4.1.4_dsn> 72554 5.0.0 <4.1.4_dsn>: Helo command rejected: reject 73>>> helo 4.1.5_dsn 74./smtpd_check: mapping DSN status 4.1.5 into Helo command status 4.0.0 75./smtpd_check: <queue id>: reject: HELO from dummy[dummy]: 554 5.0.0 <4.1.5_dsn>: Helo command rejected: reject; proto=SMTP helo=<4.1.5_dsn> 76554 5.0.0 <4.1.5_dsn>: Helo command rejected: reject 77>>> helo 4.1.6_dsn 78./smtpd_check: mapping DSN status 4.1.6 into Helo command status 4.0.0 79./smtpd_check: <queue id>: reject: HELO from dummy[dummy]: 554 5.0.0 <4.1.6_dsn>: Helo command rejected: reject; proto=SMTP helo=<4.1.6_dsn> 80554 5.0.0 <4.1.6_dsn>: Helo command rejected: reject 81>>> helo 4.1.7_dsn 82./smtpd_check: mapping DSN status 4.1.7 into Helo command status 4.0.0 83./smtpd_check: <queue id>: reject: HELO from dummy[dummy]: 554 5.0.0 <4.1.7_dsn>: Helo command rejected: reject; proto=SMTP helo=<4.1.7_dsn> 84554 5.0.0 <4.1.7_dsn>: Helo command rejected: reject 85>>> helo 4.1.8_dsn 86./smtpd_check: mapping DSN status 4.1.8 into Helo command status 4.0.0 87./smtpd_check: <queue id>: reject: HELO from dummy[dummy]: 554 5.0.0 <4.1.8_dsn>: Helo command rejected: reject; proto=SMTP helo=<4.1.8_dsn> 88554 5.0.0 <4.1.8_dsn>: Helo command rejected: reject 89>>> helo 4.4.0_dsn 90./smtpd_check: <queue id>: reject: HELO from dummy[dummy]: 554 5.4.0 <4.4.0_dsn>: Helo command rejected: reject; proto=SMTP helo=<4.4.0_dsn> 91554 5.4.0 <4.4.0_dsn>: Helo command rejected: reject 92>>> # 93>>> # Test the sender restrictions 94>>> # 95>>> sender_restrictions hash:./smtpd_check_access 96OK 97>>> mail user@4.1.1_dsn 98./smtpd_check: mapping DSN status 4.1.1 into Sender address status 4.1.7 99./smtpd_check: <queue id>: reject: MAIL from dummy[dummy]: 554 5.1.7 <user@4.1.1_dsn>: Sender address rejected: reject; from=<user@4.1.1_dsn> proto=SMTP helo=<4.4.0_dsn> 100554 5.1.7 <user@4.1.1_dsn>: Sender address rejected: reject 101>>> mail user@4.1.2_dsn 102./smtpd_check: mapping DSN status 4.1.2 into Sender address status 4.1.8 103./smtpd_check: <queue id>: reject: MAIL from dummy[dummy]: 554 5.1.8 <user@4.1.2_dsn>: Sender address rejected: reject; from=<user@4.1.2_dsn> proto=SMTP helo=<4.4.0_dsn> 104554 5.1.8 <user@4.1.2_dsn>: Sender address rejected: reject 105>>> mail user@4.1.3_dsn 106./smtpd_check: mapping DSN status 4.1.3 into Sender address status 4.1.7 107./smtpd_check: <queue id>: reject: MAIL from dummy[dummy]: 554 5.1.7 <user@4.1.3_dsn>: Sender address rejected: reject; from=<user@4.1.3_dsn> proto=SMTP helo=<4.4.0_dsn> 108554 5.1.7 <user@4.1.3_dsn>: Sender address rejected: reject 109>>> mail user@4.1.4_dsn 110./smtpd_check: mapping DSN status 4.1.4 into Sender address status 4.1.7 111./smtpd_check: <queue id>: reject: MAIL from dummy[dummy]: 554 5.1.7 <user@4.1.4_dsn>: Sender address rejected: reject; from=<user@4.1.4_dsn> proto=SMTP helo=<4.4.0_dsn> 112554 5.1.7 <user@4.1.4_dsn>: Sender address rejected: reject 113>>> mail user@4.1.5_dsn 114./smtpd_check: mapping DSN status 4.1.5 into Sender address status 4.1.0 115./smtpd_check: <queue id>: reject: MAIL from dummy[dummy]: 554 5.1.0 <user@4.1.5_dsn>: Sender address rejected: reject; from=<user@4.1.5_dsn> proto=SMTP helo=<4.4.0_dsn> 116554 5.1.0 <user@4.1.5_dsn>: Sender address rejected: reject 117>>> mail user@4.1.6_dsn 118./smtpd_check: mapping DSN status 4.1.6 into Sender address status 4.1.7 119./smtpd_check: <queue id>: reject: MAIL from dummy[dummy]: 554 5.1.7 <user@4.1.6_dsn>: Sender address rejected: reject; from=<user@4.1.6_dsn> proto=SMTP helo=<4.4.0_dsn> 120554 5.1.7 <user@4.1.6_dsn>: Sender address rejected: reject 121>>> mail user@4.1.7_dsn 122./smtpd_check: <queue id>: reject: MAIL from dummy[dummy]: 554 5.1.7 <user@4.1.7_dsn>: Sender address rejected: reject; from=<user@4.1.7_dsn> proto=SMTP helo=<4.4.0_dsn> 123554 5.1.7 <user@4.1.7_dsn>: Sender address rejected: reject 124>>> mail user@4.1.8_dsn 125./smtpd_check: <queue id>: reject: MAIL from dummy[dummy]: 554 5.1.8 <user@4.1.8_dsn>: Sender address rejected: reject; from=<user@4.1.8_dsn> proto=SMTP helo=<4.4.0_dsn> 126554 5.1.8 <user@4.1.8_dsn>: Sender address rejected: reject 127>>> mail user@4.4.0_dsn 128./smtpd_check: <queue id>: reject: MAIL from dummy[dummy]: 554 5.4.0 <user@4.4.0_dsn>: Sender address rejected: reject; from=<user@4.4.0_dsn> proto=SMTP helo=<4.4.0_dsn> 129554 5.4.0 <user@4.4.0_dsn>: Sender address rejected: reject 130>>> # 131>>> # Test the recipient restrictions 132>>> # 133>>> recipient_restrictions hash:./smtpd_check_access 134OK 135>>> rcpt user@4.1.1_dsn 136./smtpd_check: <queue id>: reject: RCPT from dummy[dummy]: 554 5.1.1 <user@4.1.1_dsn>: Recipient address rejected: reject; from=<user@4.4.0_dsn> to=<user@4.1.1_dsn> proto=SMTP helo=<4.4.0_dsn> 137554 5.1.1 <user@4.1.1_dsn>: Recipient address rejected: reject 138>>> rcpt user@4.1.2_dsn 139./smtpd_check: <queue id>: reject: RCPT from dummy[dummy]: 554 5.1.2 <user@4.1.2_dsn>: Recipient address rejected: reject; from=<user@4.4.0_dsn> to=<user@4.1.2_dsn> proto=SMTP helo=<4.4.0_dsn> 140554 5.1.2 <user@4.1.2_dsn>: Recipient address rejected: reject 141>>> rcpt user@4.1.3_dsn 142./smtpd_check: <queue id>: reject: RCPT from dummy[dummy]: 554 5.1.3 <user@4.1.3_dsn>: Recipient address rejected: reject; from=<user@4.4.0_dsn> to=<user@4.1.3_dsn> proto=SMTP helo=<4.4.0_dsn> 143554 5.1.3 <user@4.1.3_dsn>: Recipient address rejected: reject 144>>> rcpt user@4.1.4_dsn 145./smtpd_check: <queue id>: reject: RCPT from dummy[dummy]: 554 5.1.4 <user@4.1.4_dsn>: Recipient address rejected: reject; from=<user@4.4.0_dsn> to=<user@4.1.4_dsn> proto=SMTP helo=<4.4.0_dsn> 146554 5.1.4 <user@4.1.4_dsn>: Recipient address rejected: reject 147>>> rcpt user@4.1.5_dsn 148./smtpd_check: <queue id>: reject: RCPT from dummy[dummy]: 554 5.1.5 <user@4.1.5_dsn>: Recipient address rejected: reject; from=<user@4.4.0_dsn> to=<user@4.1.5_dsn> proto=SMTP helo=<4.4.0_dsn> 149554 5.1.5 <user@4.1.5_dsn>: Recipient address rejected: reject 150>>> rcpt user@4.1.6_dsn 151./smtpd_check: <queue id>: reject: RCPT from dummy[dummy]: 554 5.1.6 <user@4.1.6_dsn>: Recipient address rejected: reject; from=<user@4.4.0_dsn> to=<user@4.1.6_dsn> proto=SMTP helo=<4.4.0_dsn> 152554 5.1.6 <user@4.1.6_dsn>: Recipient address rejected: reject 153>>> rcpt user@4.1.7_dsn 154./smtpd_check: mapping DSN status 4.1.7 into Recipient address status 4.1.3 155./smtpd_check: <queue id>: reject: RCPT from dummy[dummy]: 554 5.1.3 <user@4.1.7_dsn>: Recipient address rejected: reject; from=<user@4.4.0_dsn> to=<user@4.1.7_dsn> proto=SMTP helo=<4.4.0_dsn> 156554 5.1.3 <user@4.1.7_dsn>: Recipient address rejected: reject 157>>> rcpt user@4.1.8_dsn 158./smtpd_check: mapping DSN status 4.1.8 into Recipient address status 4.1.2 159./smtpd_check: <queue id>: reject: RCPT from dummy[dummy]: 554 5.1.2 <user@4.1.8_dsn>: Recipient address rejected: reject; from=<user@4.4.0_dsn> to=<user@4.1.8_dsn> proto=SMTP helo=<4.4.0_dsn> 160554 5.1.2 <user@4.1.8_dsn>: Recipient address rejected: reject 161>>> rcpt user@4.4.0_dsn 162./smtpd_check: <queue id>: reject: RCPT from dummy[dummy]: 554 5.4.0 <user@4.4.0_dsn>: Recipient address rejected: reject; from=<user@4.4.0_dsn> to=<user@4.4.0_dsn> proto=SMTP helo=<4.4.0_dsn> 163554 5.4.0 <user@4.4.0_dsn>: Recipient address rejected: reject 164