<div dir="ltr"><div dir="ltr">Thanks Amos!<br></div><div><br></div><div>I updated "auth_param basic credentialsttl" according to your advice and it is working great.</div><div><br></div><div>I am still having issues with the "<span style="color:rgb(80,0,80)">tcp_outgoing_address 192.168.8.12 acl_for_user3002" part, you mentioned:</span></div>> For ACLs with values that are expected to change often it is best to use<br>> an external_acl_type helper that manages the updates or fetches from<br>> somewhere the updates are handled without a reload.<div><br></div><div>My script updates the authenticator successfully, but when I update "<span style="color:rgb(80,0,80)">acl acl_for_user3002 proxy_auth user2" to the new username I have to reconfigure to take effect.</span><br></div><div>I read online for hours but to my best understanding external_acl_type are for auth and access control, but they don't work for my needs I believe.</div><div><br></div><div>Is there any way to use external_acl_type in a way I don't understand to solve this problem? Do I have to reconfigure every time I make changes to an ACL in squid.conf?</div><div><br></div><div>Thanks again for your help.</div><div><div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sat, Oct 31, 2020 at 5:48 PM Amos Jeffries <<a href="mailto:squid3@treenet.co.nz">squid3@treenet.co.nz</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On 31/10/20 1:34 pm, roee klinger wrote:<br>
> <br>
> Hey,<br>
> I have Squid configured to send users to different outgoing interface like so:<br>
> <br>
> ..<br>
> auth_param basic program /usr/lib/squid/basic_ncsa_auth /etc/squid/htpassword<br>
> acl acl_for_user3002 proxy_auth user2<br>
> tcp_outgoing_address 192.168.8.12 acl_for_user3002<br>
> http_port 3002 name=3002<br>
<br>
<br>
No need to name a *_port like this. The default name is the first <br>
parameter string ("3002" on this line).<br>
<br>
<br>
> http_access allow authenticated<br>
> ..<br>
> <br>
> When I wanted to change the username:password for user2, I run a bash script to change it in squid.conf and also in htpassword and then I run "squid -k reconfigure", if I don't reconfigure the old user still has access to the proxy and the new one doesn't for about 30 minutes.<br>
> <br>
<br>
No need to restart for that change. The helper you have there will <br>
automatically detect changes to the htpassword file and reload it.<br>
<br>
It is a little odd that the new user was not able to authenticate. Check <br>
that your test did not lookup and cache a non-existence result for them <br>
prior to being added.<br>
<br>
<br>
The delay is due to the credentials being valid for a period of time. To <br>
reduce workload on the auth system Squid caches credential details for a <br>
while.<br>
<br>
Set "auth_param basic credentialsttl " to shorter values to reduce the <br>
delay (default is 2hrs).<br>
<br>
<br>
> I am expecting to have 100s of users soon that will change credentials often, and also I would like to blacklist websites often and on the fly, so I was searching for a better way to manage this without reconfiguring every time, since sometimes a reconfigure can take up to 10-15 seconds.<br>
> <br>
<br>
This helper does not need a reconfigure at all as far as I can tell from <br>
the code.<br>
<br>
All the reconfigure was doing for you previously was triggering an early <br>
prune of the records in the credentials cache. Probably why you saw <br>
about 30min delay instead of about 2hrs.<br>
<br>
<br>
> I am new to Squid and wasn't able to find any info on this, am I doing this currently or there is a better way to change users/ACLs on the fly without reloading Squid?<br>
> <br>
<br>
Config changes in squid.conf itself needs a reconfigure or sometimes a <br>
restart.<br>
<br>
<br>
For auth and ACLs whose values that come into Squid from a helper it <br>
depends on the helper itself. Most can auto-detect changes to their <br>
background databases and not need anything from Squid to update the <br>
outputs. All helpers do have some form of caching of their results by <br>
Squid, so there are settings in squid.conf to tune that to your needs - <br>
as you can see from the auth issue above.<br>
<br>
<br>
For ACLs with values that are expected to change often it is best to use <br>
an external_acl_type helper that manages the updates or fetches from <br>
somewhere the updates are handled without a reload.<br>
<br>
<br>
<br>
Amos<br>
_______________________________________________<br>
squid-users mailing list<br>
<a href="mailto:squid-users@lists.squid-cache.org" target="_blank">squid-users@lists.squid-cache.org</a><br>
<a href="http://lists.squid-cache.org/listinfo/squid-users" rel="noreferrer" target="_blank">http://lists.squid-cache.org/listinfo/squid-users</a><br>
</blockquote></div></div></div></div>