All Projects → sous-chefs → squid

sous-chefs / squid

Licence: Apache-2.0 license
Development repository for the squid cookbook

Programming Languages

ruby
36898 projects - #4 most used programming language
HTML
75241 projects

Projects that are alternatives of or similar to squid

kafka
Development repository for the kafka cookbook
Stars: ✭ 87 (+222.22%)
Mutual labels:  chef-cookbook, chef, chef-resource, managed-by-terraform
github
Development repository for the github cookbook
Stars: ✭ 22 (-18.52%)
Mutual labels:  chef-cookbook, chef, chef-resource, managed-by-terraform
maven
Development repository for the maven cookbook
Stars: ✭ 35 (+29.63%)
Mutual labels:  chef-cookbook, chef, chef-resource, managed-by-terraform
confluence
Development repository for the confluence cookbook
Stars: ✭ 42 (+55.56%)
Mutual labels:  chef-cookbook, chef, chef-resource, managed-by-terraform
selinux
Development repository for the selinux cookbook
Stars: ✭ 57 (+111.11%)
Mutual labels:  chef-cookbook, chef, chef-resource, managed-by-terraform
yum-epel
Development repository for the yum-epel cookbook
Stars: ✭ 23 (-14.81%)
Mutual labels:  chef-cookbook, chef, chef-resource, managed-by-terraform
apparmor
Development repository for the apparmor cookbook
Stars: ✭ 13 (-51.85%)
Mutual labels:  chef-cookbook, chef, chef-resource, managed-by-terraform
passenger apache2
Development repository for the passenger_apache2 cookbook
Stars: ✭ 37 (+37.04%)
Mutual labels:  chef-cookbook, chef, chef-resource, managed-by-terraform
drbd
Development repository for the drbd cookbook
Stars: ✭ 19 (-29.63%)
Mutual labels:  chef-cookbook, chef, chef-resource, managed-by-terraform
freebsd
Development repository for the freebsd cookbook
Stars: ✭ 27 (+0%)
Mutual labels:  chef-cookbook, chef, chef-resource, managed-by-terraform
transmission
Development repository for the transmission cookbook
Stars: ✭ 14 (-48.15%)
Mutual labels:  chef-cookbook, chef, chef-resource, managed-by-terraform
firewall
Development repository for the firewall cookbook
Stars: ✭ 97 (+259.26%)
Mutual labels:  chef-cookbook, chef, chef-resource, managed-by-terraform
samba
Development repository for the samba cookbook
Stars: ✭ 30 (+11.11%)
Mutual labels:  chef-cookbook, chef, chef-resource, managed-by-terraform
ossec
Development repository for the ossec cookbook
Stars: ✭ 42 (+55.56%)
Mutual labels:  chef-cookbook, chef, chef-resource, managed-by-terraform
line
Development repository for the line cookbook
Stars: ✭ 96 (+255.56%)
Mutual labels:  chef-cookbook, chef, chef-resource, managed-by-terraform
reprepro
Development repository for the reprepro cookbook
Stars: ✭ 11 (-59.26%)
Mutual labels:  chef-cookbook, chef, chef-resource, managed-by-terraform
postfix
Development repository for the postfix cookbook
Stars: ✭ 102 (+277.78%)
Mutual labels:  chef-cookbook, chef, chef-resource, managed-by-terraform
certificate
Development repository for the certificate cookbook
Stars: ✭ 71 (+162.96%)
Mutual labels:  chef-cookbook, chef, chef-resource, managed-by-terraform
vagrant
Development repository for the vagrant cookbook
Stars: ✭ 54 (+100%)
Mutual labels:  chef-cookbook, chef, chef-resource, managed-by-terraform
sssd ldap
Development repository for the sssd_ldap cookbook
Stars: ✭ 17 (-37.04%)
Mutual labels:  chef-cookbook, chef, chef-resource, managed-by-terraform

squid Cookbook

Cookbook Version Build Status OpenCollective OpenCollective License

Installs and configures Squid as a caching proxy.

Maintainers

This 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 or come chat with us on the Chef Community Slack in #sous-chefs.

Requirements

Platforms

  • Debian 9+
  • Ubuntu 16.04+
  • RHEL/CentOS/Amazon/Scientific 7+
  • openSUSE / openSUSE Leap
  • FreeBSD 11+

Chef

  • Chef 13+

Cookbooks

  • none

Recipes

default

The 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.

Usage

Include 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.

Databags are able to be used for storing host & url acls and also which hosts/nets are able to access which hosts/url

LDAP Authentication

  • Set (node['squid']['enable_ldap']) to true.

  • Modify the ldap attributes for your environment.

  • To create the ldap acls in squid.conf, you also need the two ldap_auth databag items as shown in the LDAP Databags below.

Example Databags

squid_urls - yubikey item

{
  "urls": [
    "^https://api.yubico.com/wsapi/2.0/verify"
  ],
  "id": "yubikey"
}

squid_hosts - bastion item

{
  "type": "src",
  "id": "bastion",
  "net": [
    "192.168.0.2/32"
  ]
}

squid_acls - bastion item

{
  "id": "bastion",
  "acl": [
    [
      "yubikey",
      "allow"
    ],
    [
      "yubikey",
      "deny",
      "!"
    ],
    [
      "all",
      "deny"
    ]
  ]
}

LDAP Databags

The following two data bags are only required if you are using LDAP Authentication.

squid_hosts - ldap_auth item

{
  "type": "proxy_auth",
  "id": "ldap_auth",
  "net": [
    "REQUIRED"
  ]
}

squid_acls - ldap_auth item

{
  "id": "ldap_auth",
  "acl": [
    [
      "",
      "allow"
    ]
  ]
}

Additional configuration files

  • Set (node['squid']['config_include_dir']) to the directory of your additional files, ex. /etc/squid/conf.d
  • 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.

Contributors

This project exists thanks to all the people who contribute.

Backers

Thank you to all our backers!

https://opencollective.com/sous-chefs#backers

Sponsors

Support this project by becoming a sponsor. Your logo will show up here with a link to your website.

https://opencollective.com/sous-chefs/sponsor/0/website https://opencollective.com/sous-chefs/sponsor/1/website https://opencollective.com/sous-chefs/sponsor/2/website https://opencollective.com/sous-chefs/sponsor/3/website https://opencollective.com/sous-chefs/sponsor/4/website https://opencollective.com/sous-chefs/sponsor/5/website https://opencollective.com/sous-chefs/sponsor/6/website https://opencollective.com/sous-chefs/sponsor/7/website https://opencollective.com/sous-chefs/sponsor/8/website https://opencollective.com/sous-chefs/sponsor/9/website

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].