ext\_file\_userip\_acl(8) System Manager's Manual ext\_file\_userip\_acl(8)

# [NAME](#NAME)

ext\_file\_userip\_acl - Restrict users to certain IP addresses, using a text file backend.

Version 1.0

# [SYNOPSIS](#SYNOPSIS)

**ext\_file\_userip\_acl** **\[-dh] \[-f** file name **]**

# [DESCRIPTION](#DESCRIPTION)

**ext\_file\_userip\_acl** is an installed binary. An external helper for the Squid external acl scheme.

It works by reading a pair composed by an IP address and an username on STDIN and matching it against a configuration file.

# [OPTIONS](#OPTIONS)

[**-d**](#d)

Write debug info to stderr.

[**-f file**](#f)

Configuration **file** to load.

[**-h**](#h)

Display the binary help and command line syntax info using stderr.

# [CONFIGURATION](#CONFIGURATION)

The **squid.conf** configuration for the external ACL should be:

**external\_acl\_type type-name %SRC %LOGIN /path/to/ext\_file\_userip\_acl -f /path/to/config.file**

If the helper program finds a matching username/ip in the configuration file, it returns **OK** , otherwise it returns **ERR .**

The configuration file format is as follows:

ip\_addr\[/netmask] username|@group|ALL|NONE

Where **ip\_addr** is a dotted quad format IP address, the **netmask** must be in dotted quad format too.

When the second parameter is prefixed with an **@** , the program will lookup the **/etc/group** file entry for the specified username.

There are other two directives, **ALL** and **NONE** , which mean "any user on this IP address may authenticate" or "no user on this IP address may authenticate".

# [AUTHOR](#AUTHOR)

This program was written by *Rodrigo Campos &lt;rodrigo@geekbunker.org&gt;*

This manual was written by *Rodrigo Campos &lt;rodrigo@geekbunker.org&gt;* *Amos Jeffries &lt;amosjeffries@squid-cache.org&gt;*

# [COPYRIGHT](#COPYRIGHT)

\* Copyright (C) 1996-2026 The Squid Software Foundation and contributors  
\*  
\* Squid software is distributed under GPLv2+ license and includes  
\* contributions from numerous individuals and organizations.  
\* Please see the COPYING and CONTRIBUTORS files for details.

This program and documentation is copyright to the authors named above.

Distributed under the GNU General Public License (GNU GPL) version 2 or later (GPLv2+).

# [QUESTIONS](#QUESTIONS)

Questions on the usage of this program can be sent to the *Squid Users mailing list* &lt;squid-users@lists.squid-cache.org&gt;

# [REPORTING BUGS](#REPORTING_BUGS)

Bug reports need to be made in English. See https://wiki.squid-cache.org/SquidFaq/BugReporting for details of what you need to include with your bug report.

Report bugs or bug fixes using https://bugs.squid-cache.org/

Report serious security bugs to *Squid Bugs &lt;squid-bugs@lists.squid-cache.org&gt;*

Report ideas for new improvements to the *Squid Developers mailing list* &lt;squid-dev@lists.squid-cache.org&gt;

# [SEE ALSO](#SEE_ALSO)

[**squid**(8)](/man/os/squid/squid.8), [**GPL**(7)](/man/os/squid/GPL.7),  
The Squid FAQ wiki https://wiki.squid-cache.org/SquidFaq  
The Squid Configuration Manual http://www.squid-cache.org/Doc/config/

---

Document: ext_file_userip_acl(8) from squid 7.6-r0 (Chainguard OS)
Source: https://github.com/squid-cache/squid.git
