{"id":19249272,"url":"https://github.com/sous-chefs/squid","last_synced_at":"2025-04-21T12:31:31.841Z","repository":{"id":6930259,"uuid":"8181455","full_name":"sous-chefs/squid","owner":"sous-chefs","description":"Development repository for the squid cookbook","archived":false,"fork":false,"pushed_at":"2024-02-01T01:55:17.000Z","size":594,"stargazers_count":28,"open_issues_count":3,"forks_count":91,"subscribers_count":52,"default_branch":"main","last_synced_at":"2024-04-14T06:09:21.335Z","etag":null,"topics":["chef","chef-cookbook","chef-resource","hacktoberfest","managed-by-terraform","squid"],"latest_commit_sha":null,"homepage":"https://supermarket.chef.io/cookbooks/squid","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sous-chefs.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null},"funding":{"open_collective":"sous-chefs"}},"created_at":"2013-02-13T15:17:53.000Z","updated_at":"2024-04-17T04:21:09.405Z","dependencies_parsed_at":"2024-04-17T04:21:07.726Z","dependency_job_id":"b5a2c355-5cd9-4c05-9c0a-3e99f30bf607","html_url":"https://github.com/sous-chefs/squid","commit_stats":{"total_commits":373,"total_committers":60,"mean_commits":6.216666666666667,"dds":0.7882037533512064,"last_synced_commit":"53a4114724ad9fce1c8dde38cc40f1148a50ad72"},"previous_names":[],"tags_count":46,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sous-chefs%2Fsquid","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sous-chefs%2Fsquid/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sous-chefs%2Fsquid/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sous-chefs%2Fsquid/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sous-chefs","download_url":"https://codeload.github.com/sous-chefs/squid/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223863870,"owners_count":17216234,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["chef","chef-cookbook","chef-resource","hacktoberfest","managed-by-terraform","squid"],"created_at":"2024-11-09T18:13:30.238Z","updated_at":"2024-11-09T18:13:30.912Z","avatar_url":"https://github.com/sous-chefs.png","language":"Ruby","funding_links":["https://opencollective.com/sous-chefs"],"categories":[],"sub_categories":[],"readme":"# squid Cookbook\n\n[![Cookbook Version](https://img.shields.io/cookbook/v/squid.svg)](https://supermarket.chef.io/cookbooks/squid)\n[![Build Status](https://img.shields.io/circleci/project/github/sous-chefs/squid/master.svg)](https://circleci.com/gh/sous-chefs/squid)\n[![OpenCollective](https://opencollective.com/sous-chefs/backers/badge.svg)](#backers)\n[![OpenCollective](https://opencollective.com/sous-chefs/sponsors/badge.svg)](#sponsors)\n[![License](https://img.shields.io/badge/License-Apache%202.0-green.svg)](https://opensource.org/licenses/Apache-2.0)\n\nInstalls and configures Squid as a caching proxy.\n\n## Maintainers\n\nThis cookbook is maintained by the Sous Chefs. The Sous Chefs are a community of Chef cookbook maintainers working together to maintain important cookbooks. If you’d like to know more please visit [sous-chefs.org](https://sous-chefs.org/) or come chat with us on the Chef Community Slack in [#sous-chefs](https://chefcommunity.slack.com/messages/C2V7B88SF).\n\n## Requirements\n\n### Platforms\n\n- Debian 10+\n- Ubuntu 16.04+\n- RHEL/CentOS/Scientific 7+\n- openSUSE / openSUSE Leap\n- FreeBSD 11+\n\n### Chef\n\n- Chef 13+\n\n### Cookbooks\n\n- none\n\n## Recipes\n\n### default\n\nThe default recipe installs squid and sets up simple proxy caching. As of now, the options you may change are the port (`node['squid']['port']`) and the network the caching proxy is available on the subnet from `node.ipaddress` (ie. \"192.168.1.0/24\") but may be overridden with `node['squid']['network']`. The size of objects allowed to be stored has been bumped up to allow for caching of installation files. An optional (`node['squid']['cache_peer']`), if set, will be written verbatim to the template. On redhat based platforms, this cookbook supports customizing the max number of file descriptors that Squid may open (`node['squid']['max_file_descriptors']`). The default value is 1024.\n\n## Usage\n\nInclude the squid recipe on the server. Other nodes may search for this node as their caching proxy and use the `node.ipaddress` and `node['squid']['port']` to point at it.\n\nDatabags are able to be used for storing host \u0026 url acls and also which hosts/nets are able to access which hosts/url\n\n### LDAP Authentication\n\n- Set (`node['squid']['enable_ldap']`) to true.\n- Modify the ldap attributes for your environment.\n\n  - If you use anonymous bindings, two attributes are optional, `['squid']['ldap_binddn']` and `['squid']['ldap_bindpassword']`.\n  - All other attributes are required.\n  - See \u003chttp://wiki.squid-cache.org/ConfigExamples/Authenticate/Ldap\u003e for further help.\n\n- To create the ldap acls in squid.conf, you also need the two ldap_auth databag items as shown in the LDAP Databags below.\n\n## Example Databags\n\n### squid_urls - yubikey item\n\n```javascript\n{\n  \"urls\": [\n    \"^https://api.yubico.com/wsapi/2.0/verify\"\n  ],\n  \"id\": \"yubikey\"\n}\n```\n\n### squid_hosts - bastion item\n\n```javascript\n{\n  \"type\": \"src\",\n  \"id\": \"bastion\",\n  \"net\": [\n    \"192.168.0.2/32\"\n  ]\n}\n```\n\n### squid_acls - bastion item\n\n```javascript\n{\n  \"id\": \"bastion\",\n  \"acl\": [\n    [\n      \"yubikey\",\n      \"allow\"\n    ],\n    [\n      \"yubikey\",\n      \"deny\",\n      \"!\"\n    ],\n    [\n      \"all\",\n      \"deny\"\n    ]\n  ]\n}\n```\n\n## LDAP Databags\n\nThe following two data bags are only required if you are using LDAP Authentication.\n\n### squid_hosts - ldap_auth item\n\n```javascript\n{\n  \"type\": \"proxy_auth\",\n  \"id\": \"ldap_auth\",\n  \"net\": [\n    \"REQUIRED\"\n  ]\n}\n```\n\n### squid_acls - ldap_auth item\n\n```javascript\n{\n  \"id\": \"ldap_auth\",\n  \"acl\": [\n    [\n      \"\",\n      \"allow\"\n    ]\n  ]\n}\n```\n\n### Additional configuration files\n\n- Set (`node['squid']['config_include_dir']`) to the directory of your additional files, ex. /etc/squid/conf.d\n- It is recommended that you set `node['squid']['http_access_deny_all']` and `node['squid']['icp_access_deny_all']` to false because the include statement is at the bottom of squid.conf.  Otherwise http_access allow statements may not be evaluated in the additional configuration files.\n\n## Contributors\n\nThis project exists thanks to all the people who [contribute.](https://opencollective.com/sous-chefs/contributors.svg?width=890\u0026button=false)\n\n### Backers\n\nThank you to all our backers!\n\n![https://opencollective.com/sous-chefs#backers](https://opencollective.com/sous-chefs/backers.svg?width=600\u0026avatarHeight=40)\n\n### Sponsors\n\nSupport this project by becoming a sponsor. Your logo will show up here with a link to your website.\n\n![https://opencollective.com/sous-chefs/sponsor/0/website](https://opencollective.com/sous-chefs/sponsor/0/avatar.svg?avatarHeight=100)\n![https://opencollective.com/sous-chefs/sponsor/1/website](https://opencollective.com/sous-chefs/sponsor/1/avatar.svg?avatarHeight=100)\n![https://opencollective.com/sous-chefs/sponsor/2/website](https://opencollective.com/sous-chefs/sponsor/2/avatar.svg?avatarHeight=100)\n![https://opencollective.com/sous-chefs/sponsor/3/website](https://opencollective.com/sous-chefs/sponsor/3/avatar.svg?avatarHeight=100)\n![https://opencollective.com/sous-chefs/sponsor/4/website](https://opencollective.com/sous-chefs/sponsor/4/avatar.svg?avatarHeight=100)\n![https://opencollective.com/sous-chefs/sponsor/5/website](https://opencollective.com/sous-chefs/sponsor/5/avatar.svg?avatarHeight=100)\n![https://opencollective.com/sous-chefs/sponsor/6/website](https://opencollective.com/sous-chefs/sponsor/6/avatar.svg?avatarHeight=100)\n![https://opencollective.com/sous-chefs/sponsor/7/website](https://opencollective.com/sous-chefs/sponsor/7/avatar.svg?avatarHeight=100)\n![https://opencollective.com/sous-chefs/sponsor/8/website](https://opencollective.com/sous-chefs/sponsor/8/avatar.svg?avatarHeight=100)\n![https://opencollective.com/sous-chefs/sponsor/9/website](https://opencollective.com/sous-chefs/sponsor/9/avatar.svg?avatarHeight=100)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsous-chefs%2Fsquid","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsous-chefs%2Fsquid","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsous-chefs%2Fsquid/lists"}