$$Surgemail Antivirus$$

||include||style.htm|| ||ifdef||g_newui_advanced|| ||define||url_info||&doframes=false&displaymode=advanced|| ||else|| ||define||url_info||&doframes=false|| ||endif|| ||include||body.htm|| ||ifdef||message||

||message||

||endif||

$$Antivirus$$ | ||ifequal||displaymode||advanced|| $$Switch to$$: ||else|| $$Switch to$$: ||endif||

$$Viruses blocked by$$: ||viruses_blocked||

> $$Surgemail has integrated support for Avast under Windows and Linux. Alternatively almost any virus scanner can be used with surgemail, see the manual$$.
> WARNING: Using an external "virus wall" SMTP scanner in front of $$surgemail$$ is a very bad idea.

$$Virus scanner integration methods$$
||define||no_avast||true|| ||ifdef||avast_supported|| ||undef||no_avast|| ||endif|| ||ifdef||avast_supported_linux|| ||undef||no_avast|| ||endif||
$$Avast antivirus$$ : | $$Avast is a third party product manufactured by$$ $$Alwil software$$, $$and is currently provided free with surgemail see this link to check if this is still true: $$ $$NetWin$$. $$For more information see $$$$installation instructions$$ $$in help,$$ $$advanced status$$ , $$and$$ $$license status$$.
||include||table.htm|| ||ifdef||avast_supported||
$$3rd party Avast Installation$$ | $$Status$$: ||avast_status|| ($$refresh status$$) ||ifdef||avast_url|| ||endif||
||endif|| ||ifdef||avast_supported_linux||
$$3rd party Avast Installation$$ | ($$read this$$) ||ifdef||avast_url|| ||endif||
||endif||
||lang_get(g_virus_avast_desc)|| | ||ifdef||avast_supported|| ($$must be checked for surgemail to use Avast$$)||endif|| ||ifdef||avast_supported_linux|| ($$must be checked, and vpipe filter defined for $$surgemail$$ to use Avast$$)||endif|| ||ifdef||no_avast|| $$Avast only available on windows or linux server$$ ||endif||
||ifequal||displaymode||advanced||
||lang_get(g_virus_avast_hour_desc)|| |
||lang_get(g_virus_allow_unmonitorable_desc)|| |
||lang_get(g_allow_passzip_to_desc)|| |
||lang_get(g_allow_passzip_from_desc)|| |
||lang_get(g_virus_avast_attachments_desc)|| |
||endif||

||ifequal||displaymode||advanced||
||else||
||endif|| ||ifdef||settings_saved||$$settings saved$$||endif|| ||ifequal||displaymode||advanced|| ($$switch back to$$ $$standard$$ $$mode$$) ||else|| ( 5 $$additional settings in$$ $$advanced$$ $$mode$$) ||endif||

$$Command line antivirus$$ : | $$Any command line scanner that deletes infected messages or that uses return codes can be integrated with surgemail. For more info see documentation. This is the most flexible and commonly used method to integrate a virus scanner$$.

> ||include||table.htm||
> ||lang_get(g_virus_cmd_desc)||
> ||ifequal||displaymode||advanced||
> ||lang_get(g_virus_cmd_codes_desc)||
> ||lang_get(g_virus_cmd_max_desc)||
> ||lang_get(g_virus_cmd_nodel_desc)||
> ||lang_get(g_vipre_enable_desc)||
> ||lang_get(g_virus_cmd_drop_desc)||
> ||lang_get(g_virus_cmd_email_desc)||
> ||lang_get(g_virus_cmd_size_desc)||
> ||lang_get(g_virus_cmd_sleep_desc)||
> ||endif|| ||ifequal||displaymode||advanced||
> ||else||
> ||endif|| ||ifdef||settings_saved||$$settings saved$$||endif|| ||ifequal||displaymode||advanced|| ($$switch back to$$ $$standard$$ $$mode$$) ||else|| ( 8 $$additional settings in$$ advanced $$mode$$) ||endif||

$$SMTP scanner integration$$ : | $$Any external smtp scanner can be used as a virus scanner for surgemail$$.

> ||include||table.htm||
> List of gateway rules
> ||lang_get(g_gateway_ifnot_desc)||
> ||ifequal||displaymode||advanced||
> ||lang_get(g_gateway_ignorewild_ip_desc)||
> ||lang_get(g_relay_allow_ip_desc)||
> ||endif|| ||ifequal||displaymode||advanced||
> ||else||
> ||endif|| ||ifdef||settings_saved||$$settings saved$$||endif|| ||ifequal||displaymode||advanced|| ($$switch back to$$ $$standard$$ $$mode$$) ||else|| ( 2 $$additional settings in$$ $$advanced$$ $$mode$$) ||endif||

FProt daemon integration : |

> ||include||table.htm||
> ||lang_get(g_virus_fprot_desc)||
> ||ifequal||displaymode||advanced|| ||endif|| ||ifequal||displaymode||advanced||
> ||else||
> ||endif|| ||ifdef||settings_saved||$$settings saved$$||endif|| ||ifequal||displaymode||advanced|| ($$switch back to$$ $$standard$$ $$mode$$) ||else|| ( $$no additional settings in$$ $$advanced$$ $$mode$$) ||endif||

$$General purpose external filters$$
$$Virus filter integration$$ : | $$Efficient virus scanner integration mechanism, but scanner must support the documented protocol$$.
||include||table.htm||
List of external virus filters |
||lang_get(g_vpipe_skip_desc)|| |
||ifequal||displaymode||advanced||
||lang_get(g_virus_filter_require_desc)|| |
||lang_get(g_virus_restart_desc)|| |
||lang_get(g_vpipe_concurrent_desc)|| |
||lang_get(g_vpipe_fail_crash_desc)|| |
||lang_get(g_vpipe_notag_desc)|| |
||lang_get(g_vpipe_timeout_desc)|| |
||endif||

||ifequal||displaymode||advanced||
||else||
||endif|| ||ifdef||settings_saved||$$settings saved$$||endif|| ||ifequal||displaymode||advanced|| ($$switch back to$$ $$standard$$ $$mode$$) ||else|| ( 6 $$additional settings in$$ $$advanced$$ $$mode$$) ||endif||

$$Filter Pipe$$ : | $$Allows full customisation of message content or headers in any desired way by running an external filter on each message$$.

> ||include||table.htm||
> ||lang_get(g_filter_pipe_desc)||
> ||ifequal||displaymode||advanced||
> ||lang_get(g_filter_max_desc)||
> ||lang_get(g_filter_n_desc)||
> ||lang_get(g_filter_pipe_headers_desc)||
> ||lang_get(g_filter_pipe_noauth_desc)||
> ||lang_get(g_filter_pipe_skip_desc)||
> ||lang_get(g_filter_timeout_desc)||
> ||endif|| ||ifequal||displaymode||advanced||
> ||else||
> ||endif|| ||ifdef||settings_saved||$$settings saved$$||endif|| ||ifequal||displaymode||advanced|| ($$switch back to$$ $$standard$$ $$mode$$) ||else|| ( 6 $$additional settings in$$ $$advanced$$ $$mode$$) ||endif||

$$Scan command$$ : | $$External filter that allows messages to be accepted/bounced/dropped based on external command exit code$$.

> ||include||table.htm||
> ||lang_get(g_scan_cmd_desc)||
> ||lang_get(g_scan_action_desc)||
> ||ifequal||displaymode||advanced||
> ||lang_get(g_scan_cmd_failok_desc)||
> ||lang_get(g_scan_cmd_skip_desc)||
> ||lang_get(g_scan_cmd_testing_desc)||
> ||endif|| ||ifequal||displaymode||advanced||
> ||else||
> ||endif|| ||ifdef||settings_saved||$$settings saved$$||endif|| ||ifequal||displaymode||advanced|| ($$switch back to$$ $$standard$$ $$mode$$) ||else|| ( 3 $$additional settings in$$ $$advanced$$ $$mode$$) ||endif||

Aternative virus control mechanisms
$$Attachment renaming options$$ : | $$This can be useful while a virus scanner is not working or where required as an additional security measure dictated by company policy$$.
||include||table.htm||
||lang_get(g_block_files_desc)|| |
||lang_get(g_virus_rename_desc)|| |
||lang_get(g_rename_files_desc)|| |
||ifequal||displaymode||advanced||
||lang_get(g_block_longok_desc)|| |
||lang_get(g_block_skip_desc)|| |
||lang_get(g_rename_content_desc)|| |
||lang_get(g_virus_late_desc)|| |
||lang_get(g_virus_localhost_desc)|| |
||lang_get(g_virus_recent_skip_desc)|| |
||lang_get(g_virus_rename_skip_desc)|| |
||lang_get(g_virus_rename_skipauth_desc)|| |
||lang_get(g_virus_report_user_desc)|| |
||lang_get(g_virus_simple_skip_desc)|| |
||lang_get(g_virus_simple_skipauth_desc)|| |
||lang_get(g_virus_strangers_desc)|| |
||endif||

||ifequal||displaymode||advanced||
||else||
||endif|| ||ifdef||settings_saved||$$settings saved$$||endif|| ||ifequal||displaymode||advanced|| ($$switch back to$$ $$standard$$ $$mode$$) ||else|| ( 12 $$additional settings in$$ $$advanced$$ $$mode$$) ||endif||

$$Obscure settings$$ : | ($$all advanced$$).

> ||include||table.htm|| ||ifequal||displaymode||advanced||
> ||lang_get(g_user_virus_scan_desc)||
> ||lang_get(g_virus_disable_local_desc)||
> ||lang_get(g_virus_disable_remote_desc)||
> ||lang_get(g_virus_report_desc)||
> ||lang_get(g_virus_report_all_desc)||
> ||lang_get(g_virus_simple_desc)||
> ||lang_get(g_virus_simple_list_desc)||
> ||lang_get(g_virus_simple_test_desc)||
> ||lang_get(g_virus_simple_zip_desc)||
> ||endif|| ||ifequal||displaymode||advanced||
> ||else|| ||endif|| ||ifdef||settings_saved||$$settings saved$$||endif|| ||ifequal||displaymode||advanced|| ($$switch back to$$ $$standard$$ $$mode$$) ||else|| ( 9 $$additional settings in$$ $$advanced$$ $$mode$$) ||endif||

||ifequal||displaymode||advanced|| $$Hint$$: $$Setting background colour indicates whether it is a standard or advanced mode setting. Also settings in italics have been automatically added to the relevant sections of this web admin user interface. These are likely to be new or obscure$$.
||endif||