Apache HTTP 代理的配置

ESET 提供的 Apache HTTP 代理安装程序已预先配置。但需要进行其他自定义配置,才能使服务正常工作。

Apache HTTP 代理的复制配置(服务器代理 - 服务器)

1.修改位于 C:\Program Files\Apache HTTP Proxy 2.[x.xx]\conf 中的 Apache HTTP Proxy 配置文件 httpd.conf

a.默认情况下,端口 2222 用于与 ESET Management 服务器代理进行通信。如果在安装期间更改了端口,则使用更改的端口号。将行 AllowCONNECT 443 563 2222 8883 53535 中的 2222 更改为您的端口号。

b.添加单独的 ProxyMatch 段:

I.服务器代理用于连接到 ESET PROTECT 服务器的地址。

II.您的 ESET PROTECT 服务器的所有其他地址(IP、FQDN)
(添加以下完整代码;IP 地址 10.1.1.10 和主机名 hostname.example 仅是用于替换为您的地址的示例。还可以生成本知识库文章中的 ProxyMatch 表达式。)
 

<ProxyMatch ^(hostname\.example(:[0-9]+)?(\/.*)?|10\.1\.1\.10(:[0-9]+)?(\/.*)?)$>

Allow from all

</ProxyMatch>

c.重新启动 Apache HTTP Proxy 服务。

2.设置合适的服务器代理策略,以确保服务器代理将代理用于复制。

Apache HTTP 代理的缓存配置

1.使用以下命令停止 ApacheHttpProxy 服务:

sc stop ApacheHttpProxy

2.使用简单文本编辑器打开文件 C:\Program Files\Apache HTTP Proxy 2.[x.xx]\conf\httpd.conf。在文件末尾添加以下行:

ServerRoot "C:\Program Files\Apache HTTP Proxy 2.[x.xx]"

DocumentRoot "C:\Program Files\Apache HTTP Proxy 2.[x.xx]\htdocs"

<Directory "C:\Program Files\Apache HTTP Proxy 2.[x.xx]\htdocs">

Options Indexes FollowSymLinks

AllowOverride None

Require all granted

</Directory>

CacheRoot "C:\Program Files\Apache HTTP Proxy 2.[x.xx]\cache"

3.保存文件并启动 Apache 服务。

sc start ApacheHttpProxy

 


note

如果希望缓存目录位于其他位置(例如,另一个磁盘驱动器上(如 D:\Apache HTTP Proxy\cache)),则在上述代码的最后一行,将 "C:\Program Files\Apache HTTP Proxy 2.[x.xx]\cache" 更改为 "D:\Apache HTTP Proxy\cache"

用于用户名和密码的 Apache HTTP 代理的配置

用户名和密码设置只可以用于缓存。身份验证在服务器代理 - 服务器通信中所使用的复制协议中不受支持。

1.打开提升的命令提示符并执行以下命令即可停用 ApacheHttpProxy 服务:

sc stop ApacheHttpProxy

2.验证以下模块是否存在于 C:\Program Files\Apache HTTP Proxy 2.[x.xx]\conf\httpd.conf 中:

LoadModule authn_core_module modules\mod_authn_core.dll

LoadModule authn_file_module modules\mod_authn_file.dll

LoadModule authz_groupfile_module modules\mod_authz_groupfile.dll

LoadModule auth_basic_module modules\mod_auth_basic.dll

3.将以下行添加到 <Proxy *> 下的 C:\Program Files\Apache HTTP Proxy 2.[x.xx]\conf\httpd.conf

AuthType Basic

AuthName "Password Required"

AuthUserFile password.file

AuthGroupFile group.file

Require group usergroup

4.使用 htpasswd 命令在 Apache HTTP Proxy\bin\ 文件夹中创建名为 password.file 的文件(系统会提示您输入密码):

htpasswd.exe -c ..\password.file username

5.使用以下内容在 Apache HTTP Proxy\ 文件夹中手动创建 group.file 文件:

usergroup:username

6.在提升的命令提示符下执行以下命令即可启动 ApacheHttpProxy 服务:

sc start ApacheHttpProxy

7.通过使用浏览器访问以下 URL,测试到 HTTP 代理的连接:

http://[IP address]:3128/index.html


note

在成功完成安装 Apache HTTP 代理后,可以选择仅允许 ESET 通信(阻止其他所有通信 - 默认值)或允许所有通信。执行以下所述的必要配置更改:

仅转发 ESET 通信

代理链接(所有通信)

显示当前缓存的内容列表

"C:\Program Files\Apache HTTP Proxy 2.[x.xx]\bin\htcacheclean.exe" -a -p "C:\ProgramData\Apache HTTP Proxy\cache"

使用htcacheclean工具清理磁盘缓存。查看以下建议的命令(设置缓存大小为 20 GB,设置缓存文件限制为 ~128000):

"C:\Program Files\Apache HTTP Proxy 2.[x.xx]\bin\htcacheclean.exe" -n -t^
-p"C:\ProgramData\Apache HTTP Proxy\cache" -l20000M -L128000

计划每小时运行缓存清理:

schtasks /Create /F /RU "SYSTEM" /SC HOURLY /TN ESETApacheHttpProxyCleanTask^
/TR "\"C:\Program Files\Apache HTTP Proxy 2.[x.xx]\bin\htcacheclean.exe\"^
-n -t -p \"C:\ProgramData\Apache HTTP Proxy\cache\" -l20000M -L128000"

如果您选择允许所有通信,推荐的命令如下所示:

"C:\Program Files\Apache HTTP Proxy 2.[x.xx]\bin\htcacheclean.exe" -n -t^
-p"C:\ProgramData\Apache HTTP Proxy\cache" -l20000M

schtasks /Create /F /RU "SYSTEM" /SC HOURLY /TN ESETApacheHttpProxyCleanTask^
/TR "\"C:\Program Files\Apache HTTP Proxy 2.[x.xx]\bin\htcacheclean.exe\"^
-n -t -p \"C:\ProgramData\Apache HTTP Proxy\cache\" -l20000M"


note

上述命令行末尾处的 ^ 字符必不可少,如果不包含该字符,则该命令不会正确执行。

有关详细信息,请访问知识库文章Apache 身份验证和授权文档