1 |
lefcha |
1.26 |
.Dd February 16, 2004 |
2 |
lefcha |
1.11 |
.Dt IMAPFILTER 1 |
3 |
|
|
.Os |
4 |
|
|
.Sh NAME |
5 |
|
|
.Nm imapfilter |
6 |
|
|
.Nd mail filter |
7 |
|
|
.Sh SYNOPSIS |
8 |
|
|
.Nm |
9 |
lefcha |
1.16 |
.Op Fl hkpqvV |
10 |
lefcha |
1.11 |
.Op Fl c Ar configfile |
11 |
lefcha |
1.14 |
.Op Fl d Ar interval |
12 |
lefcha |
1.11 |
.Op Fl l Ar logfile |
13 |
|
|
.Sh DESCRIPTION |
14 |
|
|
.Nm |
15 |
lefcha |
1.24 |
is a mail filtering utility. It connects to remote mail servers using the |
16 |
lefcha |
1.26 |
Internet Message Access Protocol (IMAP) and processes messages based on the |
17 |
|
|
definition of filter rules. It can be used to delete, copy, move, flag, etc. |
18 |
|
|
messages residing in multiple mailboxes at different mail servers. The |
19 |
|
|
IMAP4rev1 and IMAP4 versions of the protocol are supported. |
20 |
lefcha |
1.11 |
.Pp |
21 |
|
|
The options are as follows: |
22 |
|
|
.Bl -tag -width Ds |
23 |
lefcha |
1.25 |
.It Fl D |
24 |
|
|
Debug mode; creates a temporary file name in |
25 |
|
|
.Pa /tmp/imapfilter.XXXX , |
26 |
|
|
where debugging messages about the program's progress are printed. |
27 |
|
|
.It Fl V |
28 |
|
|
Displays program's version. |
29 |
lefcha |
1.11 |
.It Fl c Ar configfile |
30 |
lefcha |
1.24 |
Configuration file to read settings and filters from. The default is |
31 |
lefcha |
1.11 |
.Pa $HOME/.imapfilterrc . |
32 |
lefcha |
1.14 |
.It Fl d Ar interval |
33 |
|
|
Runs imapfilter at daemon mode and repeatedly polls at the specified interval. |
34 |
|
|
.It Fl k |
35 |
|
|
Kills any other running instances of |
36 |
|
|
.Nm |
37 |
|
|
and removes the lockfile left from a past session. |
38 |
lefcha |
1.11 |
.It Fl l Ar logfile |
39 |
lefcha |
1.3 |
File that contains logs of error messages |
40 |
lefcha |
1.11 |
.Nm |
41 |
lefcha |
1.7 |
produces and optionally information about the deleted messages. |
42 |
lefcha |
1.14 |
.It Fl p |
43 |
|
|
Enters the interactive encrypted passwords editor. |
44 |
lefcha |
1.11 |
.It Fl q |
45 |
lefcha |
1.25 |
Quiet mode; prints less detailed information about the program's actions. |
46 |
|
|
Multiple |
47 |
|
|
.Fl q |
48 |
|
|
options decrease the verbosity. The minimum is -2. |
49 |
lefcha |
1.11 |
.It Fl v |
50 |
lefcha |
1.25 |
Verbose mode; prints more detailed information about the program's actions. |
51 |
|
|
Multiple |
52 |
|
|
.Fl v |
53 |
|
|
options increase the verbosity. The maximum is 2. |
54 |
lefcha |
1.11 |
.El |
55 |
lefcha |
1.23 |
.Pp |
56 |
|
|
While running in daemon mode, if the SIGUSR1 signal is send, |
57 |
|
|
.Nm |
58 |
|
|
wakes up from its sleep phase and rereads its configuration file. |
59 |
lefcha |
1.21 |
.Sh AUTHENTICATION AND ENCRYPTION |
60 |
|
|
.Nm |
61 |
|
|
supports the Challenge-Response Authentication Mechanism (CRAM) for |
62 |
|
|
user authentication. The authentication type associated with CRAM is |
63 |
|
|
CRAM-MD5. |
64 |
|
|
.Nm |
65 |
|
|
will authenticate using CRAM-MD5, if the mail server supports this |
66 |
|
|
authentication method, instead of plaintext password LOGIN. |
67 |
|
|
.Pp |
68 |
|
|
.Nm |
69 |
|
|
supports encryption of the connection with the IMAP STARTTLS extension, |
70 |
|
|
and will try to negotiate a TLS connection if the mail server supports it. |
71 |
|
|
.Pp |
72 |
|
|
.Nm |
73 |
|
|
supports imaps (port 993) SSL/TLS connections. The user must manually enable |
74 |
lefcha |
1.24 |
imaps SSL/TLS connections and specify the SSL/TLS protocol to be negotiated, |
75 |
|
|
through |
76 |
lefcha |
1.21 |
.Nm Ap s |
77 |
|
|
configuration file. |
78 |
lefcha |
1.14 |
.Sh PASSWORD EDITOR |
79 |
|
|
.Nm |
80 |
|
|
has the capability to encrypt the accounts' passwords and store them |
81 |
|
|
separately at |
82 |
|
|
.Pa $HOME/.imapfilter/passwords . |
83 |
|
|
These passwords are encrypted with a master password, supplied by |
84 |
lefcha |
1.24 |
the user. The Blowfish block cipher with a 128bit key in CBC mode |
85 |
|
|
is used to do the encryption. The master password is entered each |
86 |
lefcha |
1.14 |
time |
87 |
|
|
.Nm |
88 |
|
|
is run, in order to decrypt the password file and retrieve the |
89 |
|
|
actual passwords of the user's IMAP mail accounts. |
90 |
|
|
.Pp |
91 |
|
|
First of all, while defining accounts in the |
92 |
|
|
.Nm |
93 |
|
|
configuration file, the user must specify only the username and server |
94 |
|
|
in those accounts he/she wishes to encrypt the passwords before storage. |
95 |
|
|
Then, one can enter the interactive passwords' editor by using the |
96 |
|
|
.Fl p |
97 |
|
|
option. |
98 |
|
|
.Pp |
99 |
|
|
After entering the interactive password editor, a command line prompt |
100 |
lefcha |
1.24 |
is used to manage the passwords. The available commands are: |
101 |
lefcha |
1.14 |
.Bl -tag -width Ds |
102 |
|
|
.It Cm c |
103 |
lefcha |
1.24 |
Clears a password from an account. It takes as an argument a |
104 |
lefcha |
1.14 |
number, specifying which account's password should be cleared. |
105 |
|
|
.It Cm e |
106 |
lefcha |
1.24 |
Edits an account's password entry. It takes as an argument a |
107 |
lefcha |
1.14 |
number, the account's password to be edited. |
108 |
|
|
.It Cm h |
109 |
|
|
Prints a brief help message of all commands. |
110 |
|
|
.It Cm l |
111 |
lefcha |
1.24 |
Lists all accounts. Specifically a number that describes the |
112 |
lefcha |
1.14 |
account, the hostname of the IMAP mail server, the username |
113 |
|
|
and the password (if one is already specified). |
114 |
|
|
.It Cm p |
115 |
|
|
Changes the master password, used to encrypt all other passwords. |
116 |
|
|
.It Cm q |
117 |
|
|
Quits the password editor without saving changes. |
118 |
lefcha |
1.20 |
.It Cm w |
119 |
lefcha |
1.14 |
Saves changes. |
120 |
|
|
.It Cm x |
121 |
|
|
Saves changes and exits the password editor. |
122 |
|
|
.El |
123 |
lefcha |
1.26 |
.Sh INTERNALS |
124 |
lefcha |
1.24 |
After |
125 |
|
|
.Nm |
126 |
|
|
reads the configuration file and creates all necessary data structures, it |
127 |
|
|
starts by going through the list of accounts. It connects to the servers |
128 |
|
|
specified, in the order they were defined in the configuration file with |
129 |
|
|
the |
130 |
|
|
.Ar account |
131 |
|
|
keyword. It then goes through the list of mailboxes belonging to the server, |
132 |
|
|
in the order they were defined in the configuration file with the |
133 |
|
|
.Ar folder |
134 |
|
|
keyword. For each mailbox it applies the filters that were specified for it, |
135 |
|
|
in the order they were defined in the configuration file using the |
136 |
|
|
.Ar job |
137 |
|
|
keyword. This process continues until the last account, mailbox and filter. |
138 |
lefcha |
1.19 |
.Sh ENVIRONMENT |
139 |
lefcha |
1.11 |
.Bl -tag -width Ds |
140 |
lefcha |
1.14 |
.It Ev HOME |
141 |
lefcha |
1.11 |
User's home directory. |
142 |
|
|
.El |
143 |
|
|
.Sh FILES |
144 |
|
|
.Bl -tag -width Ds |
145 |
lefcha |
1.14 |
.It Pa $HOME/.imapfilterrc |
146 |
lefcha |
1.1 |
Default configuration file. |
147 |
lefcha |
1.14 |
.It Pa $HOME/.imapfilter/passwords |
148 |
|
|
File where the encrypted passwords are stored. |
149 |
lefcha |
1.18 |
.It Pa $HOME/.imapfilter/certificates |
150 |
|
|
File where the SSL/TLS certificates are stored. |
151 |
lefcha |
1.14 |
.It Pa $HOME/.imapfilter/lock |
152 |
|
|
Lock file containing the PID of |
153 |
|
|
.Nm . |
154 |
lefcha |
1.25 |
.It Pa /tmp/imapfilter.XXXX |
155 |
|
|
Debug file. |
156 |
lefcha |
1.11 |
.El |
157 |
|
|
.Sh SEE ALSO |
158 |
|
|
.Xr imapfilterrc 5 |
159 |
|
|
.Sh STANDARDS |
160 |
|
|
.Bl -tag -width Ds |
161 |
|
|
.It IMAP4rev1: |
162 |
lefcha |
1.22 |
RFC 3501, RFC 2683, RFC 2595, RFC 2342, RFC 2195 |
163 |
lefcha |
1.11 |
.El |
164 |
lefcha |
1.12 |
.Sh AUTHORS |
165 |
lefcha |
1.14 |
.An Lefteris Chatzibarbas Aq lefcha@hellug.gr |