Mark wrote:

> Gary,

>> Razor2 for use with amavisd-new. Mini HOWTO

> Thanks, nice.

> One general remark: it is better if the not-to-be-mucked-with files
> such as razor-agent.conf are not owned by (nor live in a directory
> owned by) vscan, just in case. It is safer to have them owned by root
> and let them live perhaps in /etc.

> For the same reason I also prefer if the directory /var/amavis
> is owned by root and not writable by vscan, but provide
> a subdirectory such as /var/amavis/home, owned by vscan,
> where SA and other dynamic data files can live:

>   $MYHOME = '/var/amavis';   # a convenient default for other settings
>   $helpers_home = "$MYHOME/home";  # prefer $MYHOME clean and owned by root
>   $pid_file  = "$helpers_home/amavisd.pid";
>   $lock_file = "$helpers_home/amavisd.lock";

> The ownerships/protections are then something like:

>   $ ll -d /var/amavis
>   drwxr-x--x  8 root   wheel  512 Aug  5 15:29 /var/amavis

>   $ ll -d /var/amavis/home
>   drwxr-x---  5 vscan  vscan  512 Aug 11 09:48 /var/amavis/home

>   $ ll /var/amavis/home/
>   drwxrwxr-x  2 vscan  vscan  512 Aug  5 02:17 .pyzor
>   drwxrwxr-x  2 vscan  vscan  512 Aug 11 09:44 .razor
>   drwxrwxr-x  2 vscan  vscan  512 Aug 11 10:09 .spamassassin
>   -rw-r-----  1 vscan  vscan    0 Aug 11 10:09 amavisd.lock
>   -rw-r-----  1 vscan  vscan    6 Aug 11 09:48 amavisd.pid

> Mark

Cool. Something worth pondering.

There are some bugs in razor I am aware of in versions 2.72 and 2.73
as it relates to razor-admin:

If /etc/razor/razor-admin.conf exists, it's possible that no files at all
will be created in the /path/to/amavis/.razor directory when you run:
su amavis -c 'razor-admin -create'

If /etc/razor/razor-admin.conf exists, the first time you run
'razor-admin -create' as root, some files that normally go in /root/.razor
will end up in /etc/razor. Here is a sample session, very sorry for
the length.

     ## clean up so we can test
~# rm -r .razor/
     ## clean up global files so we can test
~# rm /etc/razor/*
     ## create an empty file (razor will put real stuff in it later)
~# touch /etc/razor/razor-agent.conf
     ## create our razor files
~# razor-admin -create

~# ls -l /etc/razor
total 5
-rw-r--r--    1 root     root          724 Aug 11 07:55 razor-agent.conf
-rw-r--r--    1 root     root          209 Aug 11 07:55 razor-agent.log
-rw-r--r--    1 root     root           20 Aug 11 07:55 servers.catalogue.lst
-rw-r--r--    1 root     root           22 Aug 11 07:55 servers.discovery.lst
-rw-r--r--    1 root     root           38 Aug 11 07:55 servers.nomination.lst
     ## kind of strange - some of this stuff should not be *here*

~# ls -l /root/.razor
total 1
-rw-r--r--    1 root     root          484 Aug 11 07:55 
server.folly.cloudmark.com.conf
     ## really strange, missing almost everything we need

     ## let's see if this does us any good.
~# razor-admin -register
~# ls -l /root/.razor
total 7
lrwxrwxrwx    1 root     root           19 Aug 11 07:57 identity -> 
identity-ruDKXiT8Eg
-rw-------    1 root     root           90 Aug 11 07:57 identity-ruDKXiT8Eg
-rw-r--r--    1 root     root          328 Aug 11 07:57 razor-agent.log
-rw-r--r--    1 root     root          484 Aug 11 07:55 
server.folly.cloudmark.com.conf
-rw-r--r--    1 root     root          484 Aug 11 07:57 
server.joy.cloudmark.com.conf
-rw-r--r--    1 root     root           20 Aug 11 07:57 servers.catalogue.lst
-rw-r--r--    1 root     root           22 Aug 11 07:57 servers.discovery.lst
-rw-r--r--    1 root     root           38 Aug 11 07:57 servers.nomination.lst
      ## that's better - razor created what it needed.

     ## let's debug it
~# spamassassin --lint -D
<...>
 Razor-Log: Computed user confpath from env: /root/.razor
 Razor-Log: No /root/.razor/razor-agent.conf found, skipping.
 Razor-Log: read_file: 15 items read from /etc/razor/razor-agent.conf
 Razor-Log: Computed razorhome from env: /root/.razor
 Razor-Log: Found razorhome: /root/.razor
<...>
     ## razor is happy, at least it did find what it needs.
     
     ## clean up to test amavis this time
~# rm -r /var/lib/amavis/.razor/
      ## create files
~# su amavis -c 'razor-admin -create'
~# ls -l /var/lib/amavis/.razor/
total 0
     ## what the heck? we should have *some* files!
     
     ## let's see if this helps
~# su amavis -c 'razor-admin -register'
~# ls -l /var/lib/amavis/.razor/
total 6
lrwxrwxrwx    1 amavis   amavis         19 Aug 11 08:10 identity -> 
identity-rurU5PRBW4
-rw-------    1 amavis   amavis         90 Aug 11 08:10 identity-rurU5PRBW4
-rw-r--r--    1 amavis   amavis        348 Aug 11 08:10 razor-agent.log
-rw-r--r--    1 amavis   amavis        484 Aug 11 08:10 
server.joy.cloudmark.com.conf
-rw-r--r--    1 amavis   amavis         20 Aug 11 08:10 servers.catalogue.lst
-rw-r--r--    1 amavis   amavis         22 Aug 11 08:10 servers.discovery.lst
-rw-r--r--    1 amavis   amavis         38 Aug 11 08:10 servers.nomination.lst
     ## scared me for a moment, at least we have files now!
## that's strange, root got 'server.folly.cloudmark.com.conf' and I did not

     ## let's see if this helps
sfm:~# su amavis -c 'razor-admin -create'
     ## yes, now the file is there, this 2.72 version of razor *is* buggy.
     
     ## let's debug now
~# su amavis -c 'spamassassin --lint -D'
<...>
 Razor-Log: Computed user confpath from env: /var/lib/amavis/.razor
 Razor-Log: No /var/lib/amavis/.razor/razor-agent.conf found, skipping.
 Razor-Log: read_file: 15 items read from /etc/razor/razor-agent.conf
 Razor-Log: Computed razorhome from env: /var/lib/amavis/.razor
 Razor-Log: Found razorhome: /var/lib/amavis/.razor
<...>
     ## razor is happy, at least it did find what it needs.

Conclusion: Even using versions with bugs, and even if you do leave
/etc/razor/razor-agent.conf in place as a global conf file, razor will
figure out where it lives as long as you run 'razor-admin -create' and
'razor-admin -register' as the user that is running SpamAssassin.

Don't forget to set debuglevel = 0, in /etc/razor/razor-agent.conf

Gary V



-------------------------------------------------------
SF.Net email is Sponsored by the Better Software Conference & EXPO
September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices
Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA
Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf
_______________________________________________
AMaViS-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/amavis-user
AMaViS-FAQ:http://www.amavis.org/amavis-faq.php3
AMaViS-HowTos:http://www.amavis.org/howto/

Reply via email to