Sign inSign up

n00b1k/squid

By n00b1k

Updated 17 days ago

Squid 7.4 (http proxy) container based on Alpine Linux.

Image
Networking
Security
0

1.6K

n00b1k/squid repository overview

Original

https://hub.docker.com/r/b4tman/squid
https://github.com/b4tman/docker-squid

Fork

https://github.com/n00b1k/squid
+openssl
-curl
+TZ=UTC

Info

3128 - http-port
3129 - https-port
PROXY_SAN=IP:192.168.1.2 - server ip
/etc/squid/squid.conf:ro - config
/etc/squid/internet_users:ro - user:password
/etc/squid/blocked_sites:ro - block list
/var/lib/squid/ssl/proxy.pem - cert for https
/var/log/squid - log
/var/cache/squid - cache

1) Install (default)
docker run -d --name squid -p 3128:3128 -p 3129:3129 --restart=unless-stopped n00b1k/squid:1.0.7
Test
curl --proxy http://ip:3128 https://ifconfig.co
Default config
2) Install
sudo htpasswd -b -c /opt/squid/internet_users userName1 userPassword1
sudo htpasswd -b /opt/squid/internet_users userName2 userPassword2
Run
docker run -d \
  --name squid \
  -p 3128:3128 \
  -p 3129:3129 \
  -e TZ=UTC \
  -e PROXY_CN=proxy \
  -e PROXY_SAN=IP:192.168.1.2 \
  -v /opt/squid/squid.conf:/etc/squid/squid.conf:ro \
  -v /opt/squid/internet_users:/etc/squid/internet_users:ro \
  -v /opt/squid/blocked_sites:/etc/squid/blocked_sites:ro \
  -v /opt/squid/ssl:/var/lib/squid/ssl \
  -v /opt/squid/logs:/var/log/squid \
  -v /opt/squid/cache:/var/cache/squid \
  --restart=unless-stopped \
  n00b1k/squid:1.0.7
Test
curl --proxy http://ip:3128 --proxy-user userName1:userPassword1 https://ifconfig.co  
Cert

Create (change <IP Proxy>)

openssl req -x509 -newkey rsa:2048 -nodes \
-keyout proxy.key \
-out proxy.crt \
-days 3650 \
-subj "/C=US/ST=NY/O=proxy/CN=proxy" \
-addext "subjectAltName=IP:<IP Proxy>"

Merge the key and cert

cat proxy.crt proxy.key > /opt/squid/ssl/proxy.pem

Add in Run
-v /opt/squid/ssl/proxy.pem:/var/lib/squid/ssl/proxy.pem
Add to Trusted on the Client
Mac

sudo security add-trusted-cert \
-d -r trustRoot \
-p ssl \
-k /Library/Keychains/System.keychain \
proxy.crt

Windows. PowerShell

Import-Certificate -FilePath proxy.crt -CertStoreLocation Cert:\LocalMachine\Root
Test
curl --proxy https://ip:3129 --proxy-user userName1:userPassword1 https://ifconfig.co  

Tag summary

Content type

Image

Digest

sha256:e4ea0b4a1

Size

13.8 MB

Last updated

17 days ago

docker pull n00b1k/squid:1.0.7