# Sample config file for rspamd # $Id$ # # pidfile - path to pid file # Default: pidfile = /var/run/rspamd.pid pidfile = "./rspamd.pid"; # Number of workers to process connections # Default: 1 workers = 1; # Socket for accepting mail to filter, can be unix socket if begin with '/' # (bind_socket=/var/run/rspamd.sock for example) bind_socket = localhost:11333; # Settings for controller interface control { # Bind socket for control interface bind_socket = localhost:11334; # Password for privilleged commands password = "q1"; }; # Sample metric definition metric { # Name of metric name = "testmetric"; # Score to count message as spam by this metric required_score = 10.1; }; # Logging settings logging { # Log type can be: console, syslog and file log_type = console; # Log level can be: DEBUG, INFO, WARN and ERROR log_level = DEBUG; # Log facility specifies facility for syslog logging, see syslog (3) for details # log_facility = "LOG_MAIL"; # Log file is used with log type "file" # log_file = "/var/log/rspamd.log" }; # Limit for statfile pool size # Default: 100M statfile_pool_size = 40M; # Sample statfile definition statfile { # Alias is used for learning and is used as symbol alias = "test.spam"; # Pattern is path to file, can include %r - recipient name and %f - mail from value pattern = "./test.spam"; # Weight in spam/ham classifier weight = 1.0; # Size of this statfile class size = 10M; # Tokenizer for this statfile # Deafault: osb-text tokenizer = "osb-text"; }; statfile { alias = "test.ham"; pattern = "./test.ham"; weight = -2.0; size = 10M; }; # Factors coefficients factors { "SURBL_MULTI" = 10.5; "winnow" = 5.5; }; # Options for lmtp worker lmtp { enabled = yes; # Bind socket for lmtp interface bind_socket = localhost:11335; # Metric that is considered as main. If we have spam result on # this metric, lmtp delivery would be failed metric = "default"; # Number of lmtp workers workers = 1; }; delivery { enabled = yes; # Path to delivery agent, %f is expanded as mail from address and %r # is expanded as recipient address # Expample: agent = "/usr/local/bin/procmail -f %f -d %r" agent = "/dev/null"; # Bind socket for lmtp interface # Example: bind_socket = localhost:25 # Whether we should use lmtp for MTA delivery lmtp = no; }; # SURBL module params, note that single quotes are mandatory here .module 'surbl' { # Address to redirector in host:port format redirector = "localhost:8080"; # Connect timeout for redirector redirector_connect_timeout = "1s"; # IO timeout for redirector (may be usefull to set this value rather big) redirector_read_timeout = "10s"; # This is suffix for surbl dns requests, # %b is replaced with bit metric if it is found suffix_%b_SURBL_MULTI = "multi.surbl.org"; # Bits that are used to determine specific URI black list # details are at http://www.surbl.org/lists.html#multi # sytax is: bit_{number} = "SYMBOL" bit_2 = "SC"; # sc.surbl.org bit_4 = "WS"; # ws.surbl.org bit_8 = "PH"; # ph.surbl.org bit_16 = "OB"; # ob.surbl.org bit_32 = "AB"; # ab.surbl.org bit_64 = "JP"; # jp.surbl.org # Metric for surbl module metric = "default"; # List of public known hostings (for which we should use 3 components of domain name instead of 2) hostings = "narod.ru,pp.ru,org.ru,net.ru"; # Whitelisted urls whitelist = "highsecure.ru,freebsd.org"; }; $to_blah = "To=/\"blah@blah\"/H"; $from_blah = "From=/blah@blah/H"; $subject_blah = "Subject=/blah/H"; .module 'regexp' { BLAH_SYMBOL = "${to_blah} & !(${from_blah} | ${subject_blah})"; }; url_filters = "surbl"; header_filters = "regexp";