edno / kleis
此包已被废弃,不再维护。没有建议的替代包。
Squid Guard 基础前端
1.2
2017-02-11 15:55 UTC
Requires
- php: >=5.5.9
- graham-campbell/markdown: ^7.0
- laravel/framework: 5.2.*
- whitehat101/apr1-md5: ~1.0
Requires (Dev)
- codeception/codeception: ^2.2
- fzaninotto/faker: ~1.4
- laravel/homestead: ^3.0
- mockery/mockery: 0.9.*
- oprudkyi/codeception-events-scripting: *
- symfony/css-selector: 2.8.*|3.0.*
- symfony/dom-crawler: 2.8.*|3.0.*
This package is auto-updated.
Last update: 2020-08-22 07:14:16 UTC
README
Kleis是一个用于Squid代理的用户和组管理器。它还允许管理SquidGuard的白名单。Kleis在数据库中维护用户列表及其所属组,然后可以将这些信息导出为平面文件,以集成到Squid和SquidGuard的配置中。
因此,为了管理您的代理用户集合的高级功能,您不需要使用LDAP目录。
Kleis导出以下文件
- 密码文件,类似于htaccess文件,由Squid在认证模式下使用
- 类别文件(例如,未成年人、成年人、雇员、教师...),用于SquidGuard
- 组文件(由组管理器管理),也可用于SquidGuard
- 白名单文件(完整域名或URL),用于添加到您与SquidGuard一起使用的列表中
您不需要在Kleis所在的服务器上安装Squid和SquidGuard。无论您的实施方式如何,您最终都需要将Kleis生成的文件放置在正确的位置。Kleis文档中提供了一个集成示例。
安装
请参阅Wiki中的安装。
与Squid和SquidGuard集成
以下假设您已经安装了Squid,并与之配对了功能性的SquidGuard。您应该在squid.conf文件中拥有类似`auth_param basic program /usr/lib/squid3/basic_ncsa_auth /etc/squid3/passwords`的内容。
导出文件
Kleis可以通过运行命令来导出有用的文件。以下命令
cd /var/www/kleis
php artisan export:accounts
php artisan export:categories
php artisan export:groups
php artisan export:whitelist
分别生成用户帐户、类别、组和白名单文件。这些文件生成在/var/www/kleis/storage/app/export/
中,因此您需要使此目录可由用户修改。在下面的示例中,我们不使用组。
然后将文件移动到正确的位置
cp /var/www/kleis/storage/app/export/accounts/accounts.txt /etc/squid3/passwords cp /var/www/kleis/storage/app/export/categories/*.txt /var/lib/squidguard/db/ cp /var/www/kleis/storage/app/export/proxylists/*.txt /var/lib/squidguard/db/
此时,您应该更新SquidGuard的黑名单。完成后,重新生成SquidGuard基础,然后重启Squid
squidGuard -C all /usr/sbin/service squid3 restart
注意事项
无论您是手动进行集成还是使用作业调度器(例如crontab或jenkins),您都必须注意不同文件的权利
- 密码文件必须属于代理用户。为了不更改此设置,您可以添加您的调度器用户到代理组,并使密码文件可由组修改。
- 组和白名单文件有相同的需求。这尤其重要:如果代理用户无法正确读取文件,SquidGuard将进入“紧急”模式,允许所有流量通过。
- 要通过命令service重新启动squid3,您应该使用sudo。使用其他脚本重新启动Squid可能会更改文件的所有者和权限,并阻止您的计划任务用户更新。