You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

merged-local.conf 27KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944
  1. history_redis {
  2. enabled = false;
  3. }
  4. neural {
  5. enabled = false;
  6. }
  7. bayes_expiry {
  8. enabled = false;
  9. }
  10. metric_exporter {
  11. enabled = false;
  12. }
  13. emails {
  14. "whitelist" = [
  15. "rspamd-test.com"
  16. ]
  17. rules {
  18. "RSPAMD_EMAILBL_FULL" {
  19. dnsbl = "test5.uribl";
  20. replyto = true;
  21. }
  22. "RSPAMD_EMAILBL_DOMAINONLY" {
  23. dnsbl = "test6.uribl";
  24. domain_only = true;
  25. replyto = true;
  26. }
  27. }
  28. }
  29. external_relay {
  30. enabled = {= env.EXTERNAL_RELAY_ENABLED =};
  31. rules {
  32. EXTERNAL_RELAY_AUTHENTICATED {
  33. strategy = "authenticated";
  34. user_map = "{= env.TESTDIR =}/configs/maps/external_relay.user_map";
  35. }
  36. EXTERNAL_RELAY_COUNT {
  37. count = 4;
  38. strategy = "count";
  39. }
  40. EXTERNAL_RELAY_HOSTNAME_MAP {
  41. hostname_map = "{= env.TESTDIR =}/configs/maps/external_relay.hostname_map";
  42. strategy = "hostname_map";
  43. }
  44. EXTERNAL_RELAY_LOCAL {
  45. strategy = "local";
  46. }
  47. }
  48. }
  49. greylist {
  50. check_local = true;
  51. timeout = 4;
  52. }
  53. logging = {
  54. type = "file",
  55. level = "debug"
  56. filename = "{= env.TMPDIR =}/rspamd.log"
  57. log_usec = true;
  58. }
  59. mid = {
  60. source = {
  61. url = [
  62. "https://maps.rspamd.com/rspamd/mid.inc.zst",
  63. "fallback+file://{= env.TESTDIR =}/../../../conf/mid.inc",
  64. "file://{= env.TESTDIR =}/configs/maps/mid.list"
  65. ];
  66. }
  67. }
  68. mime_types {
  69. file = [
  70. "https://maps.rspamd.com/rspamd/mime_types.inc.zst",
  71. "fallback+file://{= env.TESTDIR =}/../../../conf/mime_types.inc"
  72. ];
  73. extension_map {
  74. html = "text/html";
  75. txt [
  76. "message/disposition-notification",
  77. "text/plain",
  78. "text/rfc822-headers",
  79. ]
  80. pdf [
  81. "application/octet-stream",
  82. "application/pdf",
  83. ]
  84. }
  85. filename_whitelist = "{= env.TESTDIR =}/configs/maps/mime_types.wl";
  86. }
  87. options = {
  88. pidfile = "{= env.TMPDIR =}/rspamd.pid"
  89. dns {
  90. nameserver = ["8.8.8.8", "8.8.4.4"];
  91. retransmits = 10;
  92. timeout = 2s;
  93. fake_records = [{
  94. # non-existent records requested by 350_surbl tests
  95. name = "114.73.21.104.test4.uribl", type = "a", rcode = "norec"},
  96. {name = "153.23.128.52.test4.uribl", type = "a", rcode = "norec"},
  97. {name = "158.136.181.135.test4.uribl", type = "a", rcode = "norec"},
  98. {name = "177.115.236.44.test4.uribl", type = "a", rcode = "norec"},
  99. {name = "180.136.102.34.test4.uribl", type = "a", rcode = "norec"},
  100. {name = "180.144.67.172.test4.uribl", type = "a", rcode = "norec"},
  101. {name = "2.7.9.4.5.1.8.6.0.0.0.0.0.0.0.0.0.0.0.0.7.3.0.3.0.0.7.4.6.0.6.2.test4.uribl", type = "a", rcode = "norec"},
  102. {name = "217.228.62.64.test4.uribl", type = "a", rcode = "norec"},
  103. {name = "34.216.184.93.test4.uribl", type = "a", rcode = "norec"},
  104. {name = "4.b.0.9.3.4.c.a.0.0.0.0.0.0.0.0.0.0.0.0.1.3.0.3.0.0.7.4.6.0.6.2.test4.uribl", type = "a", rcode = "norec"},
  105. {name = "4eikheqjb4rb3y4oxgnfxek9wrwnyii4.test.uribl", type = "a", rcode = "norec"},
  106. {name = "6.4.9.1.8.c.5.2.3.9.8.1.8.4.2.0.1.0.0.0.0.2.2.0.0.0.8.2.6.0.6.2.test4.uribl", type = "a", rcode = "norec"},
  107. {name = "69so7b146n15x6qkr8rj9x8iqb7zfr1s.test.uribl", type = "a", rcode = "norec"},
  108. {name = "6cqpxfrojdnzawwjmacjwtstzwehxnzb.test.uribl", type = "a", rcode = "norec"},
  109. {name = "7.5.2.e.9.5.e.f.f.f.1.9.c.3.0.f.0.0.0.0.0.0.0.0.1.0.c.3.0.0.6.2.test4.uribl", type = "a", rcode = "norec"},
  110. {name = "baddomain.com.test2.uribl", type = "a", rcode = "norec"},
  111. {name = "baddomain.com.test3.uribl", type = "a", rcode = "norec"},
  112. {name = "bbjo9td11ewijyjkq8rsn4j3kxhthz4m.test.uribl", type = "a", rcode = "norec"},
  113. {name = "emailbl.com.test2.uribl", type = "a", rcode = "norec"},
  114. {name = "emailbl.com.test3.uribl", type = "a", rcode = "norec"},
  115. {name = "emailbl.com.test6.uribl", type = "a", rcode = "norec"},
  116. {name = "example.com.test3.uribl", type = "a", rcode = "norec"},
  117. {name = "example.com.test6.uribl", type = "a", rcode = "norec"},
  118. {name = "example.com.test7.uribl", type = "a", rcode = "norec"},
  119. {name = "example.net.test3.uribl", type = "a", rcode = "norec"},
  120. {name = "example.net.test7.uribl", type = "a", rcode = "norec"},
  121. {name = "example.org.test2.uribl", type = "a", rcode = "norec"},
  122. {name = "example.org.test3.uribl", type = "a", rcode = "norec"},
  123. {name = "example.org.test7.uribl", type = "a", rcode = "norec"},
  124. {name = "example.ru.test2.uribl", type = "a", rcode = "norec"},
  125. {name = "example.ru.test7.uribl", type = "a", rcode = "norec"},
  126. {name = "gdhhir83i5pjk6s8i3e5afwa4md7uns7.test.uribl", type = "a", rcode = "norec"},
  127. {name = "k8qo8m33z19cqejfncirs85rf4nr9h3u.test.uribl", type = "a", rcode = "norec"},
  128. {name = "kr1adm7tnzuudiftdt1g4t6yg1rbt1ez.test.uribl", type = "a", rcode = "norec"},
  129. {name = "rspamd.com.test2.uribl", type = "a", rcode = "norec"},
  130. {name = "rspamd.com.test3.uribl", type = "a", rcode = "norec"},
  131. {name = "rspamd.com.test7.uribl", type = "a", rcode = "norec"},
  132. {name = "rspamd.tk.test3.uribl", type = "a", rcode = "norec"},
  133. {name = "rspamd.tk.test7.uribl", type = "a", rcode = "norec"},
  134. {name = "sanchez.com.test2.uribl", type = "a", rcode = "norec"},
  135. {name = "sanchez.com.test3.uribl", type = "a", rcode = "norec"},
  136. {name = "sanchez.com.test7.uribl", type = "a", rcode = "norec"},
  137. {name = "subdomain.emailbl.com.test6.uribl", type = "a", rcode = "norec"},
  138. {name = "testtest.com.test2.uribl", type = "a", rcode = "norec"},
  139. {name = "testtest.com.test3.uribl", type = "a", rcode = "norec"},
  140. {name = "testtest.com.test7.uribl", type = "a", rcode = "norec"},
  141. {name = "user.baddomain.com.test5.uribl", type = "a", rcode = "norec"},
  142. {name = "user.example.com.test5.uribl", type = "a", rcode = "norec"},
  143. {name = "xn--80arbjktj.xn--p1ai.test3.uribl", type = "a", rcode = "norec"},
  144. {name = "xn--80arbjktj.xn--p1ai.test7.uribl", type = "a", rcode = "norec"},
  145. {name = "y84tis6xzaf41h4p5kzxiw6puixnm43k.test.uribl", type = "a", rcode = "norec"},
  146. # other stuff is here too! :\
  147. { # ed25519
  148. name = "test._domainkey.example.com";
  149. type = txt;
  150. replies = ["k=ed25519; p=yi50DjK5O9pqbFpNHklsv9lqaS0ArSYu02qp1S0DW1Y="];
  151. },
  152. {
  153. name = "brisbane._domainkey.football.example.com";
  154. type = txt;
  155. replies = ["v=DKIM1; k=ed25519; p=11qYAYKxCrfVS/7TyWQHOg7hcvPapiMlrwIaaPcHURo="];
  156. },
  157. {
  158. name = "test._domainkey.football.example.com";
  159. type = txt;
  160. replies = ["v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDkHlOQoBTzWRiGs5V6NpP3idY6Wk08a5qhdR6wy5bdOKb2jLQiY/J16JYi0Qvx/byYzCNb3W91y3FutACDfzwQ/BC/e/8uBsCR+yz1Lxj+PL6lHvqMKrM3rG4hstT5QjvHO9PzoxZyVYLzBfO2EeC3Ip3G+2kryOTIKT+l/K4w3QIDAQAB"],
  161. },
  162. {
  163. name = "dkim._domainkey.cacophony.za.org",
  164. type = "txt";
  165. replies = ["v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDXtxBE5IiNRMcq2/lc2zErfdCvDFyQNBnMjbOjBQrPST2k4fdGbtpe5Iu5uS01Met+dAEf94XL8I0hwmYw+n70PP834zfJGi2egwGqrakpaWsCDPvIJZLkxJCJKQRA/zrQ622uEXdvYixVbsEGVw7U4wAGSmT5rU2eU1y63AlOlQIDAQAB"];
  166. },
  167. {
  168. name = "eddsa._domainkey.cacophony.za.org",
  169. type = "txt";
  170. replies = ["v=DKIM1; k=ed25519; p=+nU+aC33ICeS4zx8VUjFYCtxj0fRbHWQn2gP2hTkm9w="];
  171. },
  172. {
  173. name = "dkim._domainkey.invalid.za.org",
  174. type = "txt";
  175. replies = ["v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDEEXmNGQq7PUrr9Mg4UakTFHgXBCy2DOztkrZm+0OrVWtiRzGluxBkbOWTBwuU3/Yw97yTphBMQxzWFN603/f/KPAQcF/Lc1l+6kmIBBxNXjjGuOK/3PYKZVntUdKmqcQBYfnHdzH2Tohbuyx1a7xqnv6VSChqQrZU4CwkeT3+eQIDAQAB"];
  176. },
  177. {
  178. name = "eddsa._domainkey.invalid.za.org",
  179. type = "txt";
  180. replies = ["v=DKIM1; k=ed25519; p=Wkkrp5DJTvknDMGWYv8vm3p3sZjiQp03LZo80RregY8="];
  181. },
  182. {
  183. name = "dkim._domainkey.rspamd.com",
  184. type = "txt";
  185. replies = ["v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCd/XhZBEGGAss48lEuMmwZv9lOFf6FTllBiQ3sPhdTpDdIPaW9TInW7iYnYD/bXHeVxYAyD/sKhYk6+qGBRu10rEi+iyPvLCIED+Boq0tEQosuKuV6Fjoomb+QhZY9KdjyZTjsrFPZ+wCkUY/30uTmpX2SwSqyxxlK0pUIsRgMAQIDAQAB"];
  186. },
  187. {
  188. name = "_dmarc.rspamd.com",
  189. type = "txt";
  190. rcode = 'norec';
  191. },
  192. {
  193. name = "dkim._domainkey.highsecure.ru",
  194. type = "txt";
  195. replies = ["p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDK4ZQYky30GH0Ak9OQ1fv3IdFNbpOtpa4S/PR20ZLgPXfd/FCA//ztUmu7kHlELI+/+4f8W+xX0oZlOc/cFxhopRjXZMlSsQqmWOZ40/GxWFBtcqafKu78FCqO7URqZUmMCM5Jlp4zt/yzH3dbYNG3i5PVlB5QtQnZvY+dvBL3dwIDAQAB"];
  196. },
  197. {
  198. name = "_dmarc.cacophony.za.org",
  199. type = "txt";
  200. replies = ["v=DMARC1; p=none; sp=reject"];
  201. },
  202. {
  203. name = "_dmarc.my.mom.za.org",
  204. type = "txt";
  205. replies = ["v=DMARC1; p=reject"];
  206. },
  207. {
  208. name = "example.net",
  209. type = "txt";
  210. replies = ["v=spf1 -all"];
  211. },
  212. {
  213. name = "fail4.org.org.za",
  214. type = "txt";
  215. replies = ["v=spf1 redirect=asdfsfewewrredfs"];
  216. },
  217. {
  218. name = "_dmarc.reject.cacophony.za.org",
  219. type = "txt";
  220. replies = ["v=DMARC1; p=reject"];
  221. },
  222. {
  223. name = "spf.cacophony.za.org",
  224. type = "txt";
  225. replies = ["v=spf1 ip4:8.8.4.4 -all"];
  226. },
  227. {
  228. name = "fail7.org.org.za",
  229. type = "a";
  230. rcode = 'norec';
  231. },
  232. {
  233. name = "fail6.org.org.za",
  234. type = "txt";
  235. replies = ["v=spf1 ip4:8.8.8.8 mx -all"];
  236. },
  237. {
  238. name = "fail6.org.org.za",
  239. type = "mx";
  240. rcode = 'norec';
  241. },
  242. {
  243. name = "fail7.org.org.za",
  244. type = "aaaa";
  245. rcode = 'norec';
  246. },
  247. {
  248. name = "_dmarc.quarantine.cacophony.za.org",
  249. type = "txt";
  250. replies = ["v=DMARC1; p=quarantine"];
  251. },
  252. {
  253. name = "_dmarc.yo.mom.za.org",
  254. type = "txt";
  255. replies = ["v=DMARC1; p=reject; aspf=s; adkim=s;"];
  256. },
  257. {
  258. name = "yo.mom.za.org",
  259. type = "txt";
  260. replies = ["v=spf1 ip4:37.48.67.26 -all"];
  261. },
  262. {
  263. name = "testdkim._domainkey.mom.za.org",
  264. type = "txt";
  265. replies = ["v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC3v4VPE1QMHUzsMRbC8VzXNq82mDjiv9Gi1NB/YYC+vIYZT+sE/Uxnr0Clk8C2jgzEr3jcxgQEWZfMtEEg/EfEJvh4SrXWv9c0gw1EEfxKxX9i+r8yBQtc/EWospWVDkhF2lAvQAK1lV1ZiU7psJ6fh1CI39uZyWdAktZzWLf0zQIDAQAB"];
  266. },
  267. {
  268. name = "_dmarc.rspamd.tk",
  269. type = "txt";
  270. replies = ["bio=a263adeab8acdcdb8b89e127b67d696061fdfbee"];
  271. },
  272. {
  273. name = "fail2.org.org.za",
  274. type = "txt";
  275. replies = ["v=spf1 ip4:8.8.4.4 include:www.dnssec-failed.org -all"];
  276. },
  277. {
  278. name = "fail3.org.org.za",
  279. type = "txt";
  280. replies = ["v=spf1 ip4:8.8.8.8 include:total.barf -all"];
  281. },
  282. {
  283. name = "mom.za.org",
  284. type = "txt";
  285. replies = ["v=spf1 ip4:37.48.67.26 -all"];
  286. },
  287. {
  288. name = "testdkim._domainkey.asdf.rspamd.tk", # testdkim._domainkey.asdf.rspamd.tk is an alias for rspamd.tk
  289. type = "txt";
  290. replies = ["bio=a263adeab8acdcdb8b89e127b67d696061fdfbee"];
  291. },
  292. {
  293. name = "testdkim._domainkey.rspamd.tk", # testdkim._domainkey.rspamd.tk is an alias for rspamd.tk
  294. type = "txt";
  295. replies = ["bio=a263adeab8acdcdb8b89e127b67d696061fdfbee"];
  296. },
  297. {
  298. name = "pass1.org.org.za",
  299. type = "txt";
  300. replies = ["v=spf1 include:pass2.org.org.za -all"];
  301. },
  302. {
  303. name = "95.142.99.88.in-addr.arpa",
  304. type = "ptr";
  305. replies = ["mail.highsecure.ru"];
  306. },
  307. {
  308. name = "mail.highsecure.ru",
  309. type = "a";
  310. replies = ["88.99.142.95"];
  311. },
  312. {
  313. name = "mail.highsecure.ru",
  314. type = "aaaa";
  315. rcode = 'norec';
  316. },
  317. {
  318. name = "1.0.66.128.in-addr.arpa",
  319. type = "ptr";
  320. rcode = 'nxdomain';
  321. },
  322. {
  323. name = "182.216.85.209.in-addr.arpa",
  324. type = "ptr";
  325. replies = ["mail-qt0-f182.google.com"];
  326. },
  327. {
  328. name = "crazyspf.cacophony.za.org",
  329. type = "txt";
  330. replies = ["v=spf1 ptr:cacophony.za.org ptr:rspamd.com ptr:yahoo.com ptr:yahoo.net ptr:highsecure.ru -all"];
  331. },
  332. {
  333. name = "pass2.org.org.za",
  334. type = "txt";
  335. replies = ["v=spf1 ip4:8.8.8.8 -all"];
  336. },
  337. {
  338. name = "_dmarc.yoni.za.org",
  339. type = "txt";
  340. replies = ["v=DMARC1; p=reject; sp=none;"];
  341. },
  342. {
  343. name = "fail10.org.org.za",
  344. type = "txt";
  345. replies = ["v=spf1 redirect=fail5.org.org.za"];
  346. },
  347. {
  348. name = "fail11.org.org.za",
  349. type = "txt";
  350. replies = ["v=sPF1 ip4:8.8.8.8 -all"];
  351. },
  352. {
  353. name = "fail5.org.org.za",
  354. type = "txt";
  355. replies = ["v=spf1 OMGBARF"];
  356. },
  357. {
  358. name = "fail7.org.org.za",
  359. type = "txt";
  360. replies = ["v=spf1 ip4:8.8.8.8 a -all"];
  361. },
  362. {
  363. name = "trusted.com",
  364. type = "txt";
  365. replies = ["v=spf1 ip4:192.168.1.1"];
  366. },
  367. {
  368. name = "external.com",
  369. type = "txt";
  370. replies = ["v=spf1 ip4:37.48.67.26"];
  371. },
  372. {
  373. name = "co.za",
  374. type = "txt";
  375. rcode = 'norec';
  376. },
  377. {
  378. name = "testdkim1._domainkey.yoni.za.org",
  379. type = "txt";
  380. replies = ["v=DKIM1; k=rsa; p=BARF"];
  381. },
  382. {
  383. name = "_dmarc.yoni.za.net",
  384. type = "txt";
  385. replies = ["v=DMARC1; p=none; sp=quarantine"];
  386. },
  387. {
  388. name = "za",
  389. type = "txt";
  390. replies = ["Top-level domain for South Africa"];
  391. },
  392. {
  393. name = "_dmarc.foo.yoni.za.org",
  394. type = "txt";
  395. rcode = 'nxdomain';
  396. },
  397. {
  398. name = "_dmarc.foo.cacophony.za.org",
  399. type = "txt";
  400. rcode = 'nxdomain';
  401. },
  402. {
  403. name = "_dmarc.foo.yoni.za.net",
  404. type = "txt";
  405. rcode = 'nxdomain';
  406. },
  407. {
  408. name = "_dmarc.dnssec-failed.org",
  409. type = "txt";
  410. rcode = 'timeout';
  411. },
  412. {
  413. name = "_dmarc.example.com",
  414. type = "txt";
  415. rcode = 'nxdomain';
  416. },
  417. {
  418. name = "_dmarc.zero_pct.com",
  419. type = "txt";
  420. replies = ["v=DMARC1; p=reject; sp=quarantine; pct=0"];
  421. },
  422. {
  423. name = "example.com",
  424. type = "txt";
  425. replies = ["$Id: example.com 4415 2015-08-24 20:12:23Z davids $", "v=spf1 -all"];
  426. },
  427. {
  428. name = "example.com",
  429. type = "a";
  430. replies = ["93.184.216.34"];
  431. },
  432. {
  433. name = "testdkim1._domainkey.dnssec-failed.org",
  434. type = "txt";
  435. rcode = 'timeout';
  436. },
  437. {
  438. name = "total.barf",
  439. type = "txt";
  440. rcode = 'nxdomain';
  441. },
  442. {
  443. name = "_dmarc.foo.cacophony.za.org",
  444. type = "txt";
  445. rcode = 'nxdomain';
  446. },
  447. {
  448. name = "zzzzaaaa",
  449. type = "txt";
  450. rcode = 'nxdomain';
  451. },
  452. {
  453. name = "asdfsfewewrredfs",
  454. type = "txt";
  455. rcode = 'nxdomain';
  456. },
  457. {
  458. name = "95.142.99.88.asn.rspamd.com",
  459. type = "txt";
  460. replies = ["24940|88.99.0.0/16|DE|ripencc|"];
  461. },
  462. {
  463. name = "2.a.d.1.1.d.e.f.f.f.0.0.4.5.0.5.d.6.2.0.6.b.a.a.8.c.7.0.1.0.a.2.asn6.rspamd.com",
  464. type = "txt";
  465. replies = ["20857|2a01:7c8::/32|NL|ripencc|"];
  466. },
  467. {
  468. name = "2.a.d.1.1.d.e.f.f.f.0.0.4.5.0.5.d.6.2.0.6.b.a.a.8.c.7.0.1.0.a.2.rspamd.com",
  469. type = "txt";
  470. rcode = 'nxdomain';
  471. },
  472. {
  473. name = "2.a.d.1.1.d.e.f.f.f.0.0.4.5.0.5.d.6.2.0.6.b.a.a.8.c.7.0.1.0.a.2.rspamd.com",
  474. type = "a";
  475. rcode = 'nxdomain';
  476. },
  477. {
  478. name = "rspamd.com",
  479. type = "txt";
  480. replies = ["v=spf1 mx -all"];
  481. },
  482. {
  483. name = "rspamd.com",
  484. type = "mx";
  485. replies = ["10 mail.highsecure.ru"];
  486. },
  487. {
  488. name = "95.142.99.88.rspamd.com",
  489. type = "a";
  490. rcode = 'norec';
  491. },
  492. {
  493. name = "95.142.99.88.rspamd.com",
  494. type = "aaaa";
  495. rcode = 'norec';
  496. },
  497. {
  498. name = "2.0.0.127.rspamd.com",
  499. type = "a";
  500. replies = ["127.0.0.1"];
  501. },
  502. {
  503. name = "8.8.8.8.asn.rspamd.com",
  504. type = "txt";
  505. replies = ["15169|8.8.8.0/24|US|arin|"];
  506. },
  507. {
  508. name = "8.8.8.8.asn.rspamd.com",
  509. type = "a";
  510. rcode = 'nxdomain';
  511. },
  512. {
  513. name = "10.0.1.10.asn.rspamd.com",
  514. type = "txt";
  515. rcode = 'nxdomain';
  516. },
  517. {
  518. name = "10.0.1.10.asn.rspamd.com",
  519. type = "a";
  520. rcode = 'nxdomain';
  521. },
  522. {
  523. name = "10.0.1.11.asn.rspamd.com",
  524. type = "txt";
  525. rcode = 'nxdomain';
  526. },
  527. {
  528. name = "10.0.1.11.asn.rspamd.com",
  529. type = "a";
  530. rcode = 'nxdomain';
  531. },
  532. {
  533. name = "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.rspamd.com",
  534. type = "a";
  535. rcode = 'nxdomain';
  536. },
  537. {
  538. name = "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.e.f.rspamd.com",
  539. type = "a";
  540. rcode = 'nxdomain';
  541. },
  542. {
  543. name = "test.com",
  544. type = "txt";
  545. replies = [""];
  546. },
  547. {
  548. name = "other.com",
  549. type = "txt";
  550. rcode = 'norec';
  551. },
  552. {
  553. name = "bob",
  554. type = "txt";
  555. rcode = 'nxdomain';
  556. },
  557. {
  558. name = "mail.highsecure.ru",
  559. type = "aaaa";
  560. rcode = 'norec';
  561. },
  562. {
  563. name = "mail.highsecure.ru",
  564. type = "a";
  565. replies = ["88.99.142.95"];
  566. },
  567. {
  568. name = "4.3.2.1.rspamd.com",
  569. type = "a";
  570. rcode = 'nxdomain';
  571. },
  572. {
  573. name = "4.3.2.1.asn.rspamd.com",
  574. type = "txt";
  575. rcode = 'nxdomain';
  576. },
  577. {
  578. name = "1.0.0.127.rspamd.com",
  579. type = "a";
  580. rcode = 'nxdomain';
  581. },
  582. {
  583. name = "114.47.228.46.rspamd.com",
  584. type = "a";
  585. rcode = 'nxdomain';
  586. },
  587. {
  588. name = "114.47.228.46.asn.rspamd.com",
  589. type = "txt";
  590. replies = ["34010|46.228.40.0/21|GB|ripencc|"];
  591. },
  592. {
  593. name = "10.0.1.10.rspamd.com",
  594. type = "a";
  595. rcode = 'nxdomain';
  596. },
  597. {
  598. name = "10.0.1.11.rspamd.com",
  599. type = "a";
  600. rcode = 'nxdomain';
  601. },
  602. {
  603. name = "other.org",
  604. type = "txt";
  605. rcode = 'norec';
  606. },
  607. {
  608. name = "8.8.8.8.rspamd.com",
  609. type = "a";
  610. rcode = 'nxdomain';
  611. },
  612. {
  613. name = "rspamd.tk",
  614. type = "txt";
  615. replies = ["bio=a263adeab8acdcdb8b89e127b67d696061fdfbee"];
  616. },
  617. {
  618. name = "fail1.org.org.za",
  619. type = "txt";
  620. replies = ["v=spf1 redirect=www.dnssec-failed.org"];
  621. },
  622. {
  623. name = "www.dnssec-failed.org",
  624. type = "txt";
  625. rcode = 'timeout';
  626. },
  627. {
  628. name = "www.dnssec-failed.org",
  629. type = "mx";
  630. rcode = 'timeout';
  631. },
  632. {
  633. name = "www.dnssec-failed.org",
  634. type = "a";
  635. rcode = 'timeout';
  636. },
  637. {
  638. name = "www.dnssec-failed.org",
  639. type = "aaaa";
  640. rcode = 'norec';
  641. },
  642. {
  643. name = "cacophony.za.org",
  644. type = "txt";
  645. replies = ["v=spf1 redirect=asdfsfewewrredfs"];
  646. },
  647. {
  648. name = "fail9.org.org.za",
  649. type = "txt";
  650. replies = ["v=spf1 ip4:8.8.8.8 mx:www.dnssec-failed.org -all"];
  651. },
  652. {
  653. name = "fail8.org.org.za",
  654. type = "txt";
  655. replies = ["v=spf1 ip4:8.8.8.8 a:www.dnssec-failed.org -all"];
  656. },
  657. {
  658. name = "1.2.3.4.fake.rbl";
  659. type = "a";
  660. replies = ["127.0.0.2"];
  661. },
  662. {
  663. name = "2.2.3.4.fake.rbl";
  664. type = "a";
  665. replies = ["127.0.0.10"];
  666. },
  667. {
  668. name = "3.2.3.4.fake.rbl";
  669. type = "a";
  670. replies = ["127.0.0.2", "127.0.0.3"];
  671. },
  672. {
  673. name = "4.2.3.4.fake.rbl";
  674. type = "a";
  675. replies = ["127.0.0.2"];
  676. },
  677. {
  678. name = "4.2.3.4.fake.wl";
  679. type = "a";
  680. replies = ["127.0.0.2"];
  681. },
  682. {
  683. name = "4.3.2.1.fake.rbl";
  684. type = "a";
  685. rcode = 'nxdomain';
  686. },
  687. {
  688. name = "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.e.f.fake.rbl";
  689. type = "a";
  690. replies = ["127.0.0.2"];
  691. },
  692. {
  693. name = "131.193.18.151.fake.rbl";
  694. type = "a";
  695. replies = ["127.0.0.3"];
  696. },
  697. # SURBL tests
  698. {
  699. name = "rciuosbadgpq6b5wt436nhgnwzmfh9w9.test.uribl";
  700. type = a;
  701. replies = ["127.0.0.2"];
  702. },
  703. {
  704. # testtest.com
  705. name = "rcf1ecxtxrrpfncqzsdaiezjkf7f1rzz.test.uribl";
  706. type = a;
  707. replies = ["127.0.0.2"];
  708. },
  709. {
  710. name = "jhcszdsmo3wuj5mp8t38kdisdmr3ib3q.test.uribl";
  711. type = a;
  712. replies = ["127.0.0.2"];
  713. },
  714. {
  715. name = "g9ifs3q39oh5jwru94cj7ffaqd6rfyq6.test.uribl";
  716. type = a;
  717. replies = ["127.0.0.2"];
  718. },
  719. {
  720. name = "xn--80arbjktj.xn--p1ai.test2.uribl";
  721. type = a;
  722. replies = ["127.0.1.2"];
  723. },
  724. {
  725. name = "мойсайт.рф.test2.uribl";
  726. type = a;
  727. replies = ["127.0.1.2"];
  728. },
  729. {
  730. name = "user.emailbl.com.test5.uribl";
  731. type = a;
  732. replies = ["127.0.0.2"];
  733. },
  734. {
  735. name = "user.subdomain.emailbl.com.test5.uribl";
  736. type = a;
  737. replies = ["127.0.0.2"];
  738. },
  739. {
  740. name = "baddomain.com.test6.uribl";
  741. type = a;
  742. replies = ["127.0.0.2"];
  743. },
  744. {
  745. name = "user.subdomain.baddomain.com.test5.uribl";
  746. type = a;
  747. replies = ["127.0.0.2"];
  748. },
  749. {
  750. name = "example.com.test2.uribl";
  751. type = a;
  752. replies = ["127.0.1.2"];
  753. },
  754. {
  755. name = "user.example.com.test2.uribl";
  756. type = a;
  757. replies = ["127.0.1.5"];
  758. },
  759. {
  760. name = "example.net.test2.uribl";
  761. type = a;
  762. replies = ["127.0.1.4"];
  763. },
  764. {
  765. name = "rspamd.tk.test2.uribl";
  766. type = a;
  767. replies = ["127.0.1.4"];
  768. },
  769. {
  770. name = "example.org.test3.uribl";
  771. type = a;
  772. replies = ["127.0.0.2"];
  773. },
  774. {
  775. name = "example.ru.test3.uribl";
  776. type = a;
  777. replies = ["127.0.0.12"];
  778. },
  779. {
  780. name = "example.ru";
  781. type = a;
  782. replies = ["8.8.8.8", "8.8.8.9"];
  783. },
  784. {
  785. name = "8.8.8.8.test4.uribl";
  786. type = a;
  787. replies = ["127.0.0.4", "127.0.0.11"];
  788. },
  789. {
  790. name = "uppht14nj4fsoycu3huctg9d5psx9je4.test.uribl";
  791. type = a;
  792. replies = ["127.0.0.2"];
  793. },
  794. {
  795. name = "rspamd-test.com.test2.uribl";
  796. type = a;
  797. replies = ["127.0.1.2"];
  798. },
  799. {
  800. name = "9.8.8.8.test4.uribl";
  801. type = a;
  802. replies = ["127.0.0.3"];
  803. },
  804. {
  805. name = "4.very.dirty.sanchez.com.test7.uribl";
  806. type = a;
  807. replies = ["127.0.0.2"];
  808. },
  809. {
  810. name = "clean.dirty.sanchez.com.test7.uribl";
  811. type = a;
  812. replies = ["127.0.0.2"];
  813. },
  814. {
  815. name = "not.dirty.sanchez.com.test7.uribl";
  816. type = a;
  817. replies = ["127.0.0.2"];
  818. },
  819. {
  820. name = "41.black.sanchez.com.test7.uribl";
  821. type = a;
  822. replies = ["127.0.0.2"];
  823. },
  824. {
  825. name = "black.sanchez.com.test7.uribl";
  826. type = a;
  827. replies = ["127.0.0.2"];
  828. },
  829. {
  830. name = "dirty.sanchez.com.test8.uribl";
  831. type = a;
  832. replies = ["127.0.0.2"];
  833. },
  834. {
  835. name = "very.dirty.sanchez.com.test8.uribl";
  836. type = a;
  837. replies = ["127.0.0.2"];
  838. },
  839. {
  840. name = "41.black.sanchez.com.test8.uribl";
  841. type = a;
  842. replies = ["127.0.0.2"];
  843. },
  844. {
  845. name = "black.sanchez.com.test8.uribl";
  846. type = a;
  847. replies = ["127.0.0.2"];
  848. },
  849. {
  850. name = "example.com.test9.uribl";
  851. type = a;
  852. replies = ["127.0.0.2"];
  853. },
  854. {
  855. name = "example.org.test9.uribl";
  856. type = a;
  857. replies = ["127.0.0.2"];
  858. },
  859. {
  860. name = "8.8.8.8.test9.uribl";
  861. type = a;
  862. replies = ["127.0.0.2"];
  863. },
  864. {
  865. name = "site.resolveme",
  866. type = "a";
  867. replies = ["127.0.0.1"];
  868. },
  869. {
  870. name = "not-resolvable.com",
  871. type = "a";
  872. rcode = 'norec';
  873. },
  874. # TODO: add IPv6 tests
  875. ];
  876. }
  877. }
  878. phishing {
  879. symbol = "PHISHING";
  880. strict_domains = {
  881. STRICT_PHISHING = [
  882. "{= env.TESTDIR =}/configs/maps/strict.phishing",
  883. ];
  884. STRICTER_PHISHING = [
  885. "{= env.TESTDIR =}/configs/maps/stricter.phishing"
  886. ]
  887. }
  888. }
  889. redis {
  890. servers = "{= env.REDIS_ADDR =}:{= env.REDIS_PORT =}";
  891. expand_keys = true;
  892. }
  893. regexp {
  894. CONFIG_SELECTOR_RE_RCPT_SUBJECT {
  895. re = 'test=/test@user.com some subject/$',
  896. score = 100500,
  897. }
  898. }
  899. spf {
  900. external_relay = [
  901. "{= env.TESTDIR =}/configs/maps/external_relay_ip.list",
  902. ];
  903. }
  904. symbols {
  905. FOUR_POINTS = {
  906. score = 4.0,
  907. }
  908. SYM1 = {
  909. score = 1.0,
  910. }
  911. }
  912. worker "controller" {
  913. bind_socket = "{= env.LOCAL_ADDR =}:{= env.PORT_CONTROLLER =}";
  914. keypair {
  915. pubkey = "{= env.KEY_PUB1 =}";
  916. privkey = "{= env.KEY_PVT1 =}";
  917. }
  918. }
  919. worker "normal" {
  920. count = 1;
  921. bind_socket = "{= env.LOCAL_ADDR =}:{= env.PORT_NORMAL =}";
  922. keypair {
  923. pubkey = "{= env.KEY_PUB1 =}";
  924. privkey = "{= env.KEY_PVT1 =}";
  925. }
  926. }