Last active
March 19, 2022 12:41
-
-
Save heyibrahimkhan/d226dfb739bf0a914105bec3e5f84d1d to your computer and use it in GitHub Desktop.
Deploy squid proxy with basic authentication
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
sudo apt install squid squid-deb-proxy squid-deb-proxy-client squidclient apache2-utils && sudo service squid start && sudo rm -rfv /etc/squid/squid.conf; | |
# Write squid.conf to /etc/squid.squid.conf | |
echo "# apt-get install squid apache2-utils" | sudo tee -a /etc/squid/squid.conf | |
echo "# htpasswd -c /etc/squid/.htpasswd user_name" | sudo tee -a /etc/squid/squid.conf | |
echo "# systemctl restart squid" | sudo tee -a /etc/squid/squid.conf | |
echo "" | sudo tee -a /etc/squid/squid.conf | |
echo "acl CONNECT method CONNECT" | sudo tee -a /etc/squid/squid.conf | |
echo "" | sudo tee -a /etc/squid/squid.conf | |
echo "# line 989: add follows for Basic auth" | sudo tee -a /etc/squid/squid.conf | |
echo "auth_param basic program /usr/lib/squid/basic_ncsa_auth /etc/squid/.htpasswd" | sudo tee -a /etc/squid/squid.conf | |
echo "auth_param basic children 5" | sudo tee -a /etc/squid/squid.conf | |
echo "auth_param basic realm Squid Basic Authentication" | sudo tee -a /etc/squid/squid.conf | |
echo "auth_param basic credentialsttl 55 hours" | sudo tee -a /etc/squid/squid.conf | |
echo "acl password proxy_auth REQUIRED" | sudo tee -a /etc/squid/squid.conf | |
echo "http_access allow password" | sudo tee -a /etc/squid/squid.conf | |
echo "" | sudo tee -a /etc/squid/squid.conf | |
echo "# line 989: add (define ACL for internal)" | sudo tee -a /etc/squid/squid.conf | |
echo "acl all src all" | sudo tee -a /etc/squid/squid.conf | |
echo "" | sudo tee -a /etc/squid/squid.conf | |
echo "# specify proxy port (default 3128)" | sudo tee -a /etc/squid/squid.conf | |
echo "http_port 8080" | sudo tee -a /etc/squid/squid.conf | |
echo "" | sudo tee -a /etc/squid/squid.conf | |
echo "" | sudo tee -a /etc/squid/squid.conf | |
echo "# line 5157: add follows" | sudo tee -a /etc/squid/squid.conf | |
echo "#request_header_access Referer deny all" | sudo tee -a /etc/squid/squid.conf | |
echo "#request_header_access X-Forwarded-For deny all" | sudo tee -a /etc/squid/squid.conf | |
echo "#request_header_access Via deny all" | sudo tee -a /etc/squid/squid.conf | |
echo "#request_header_access Cache-Control deny all" | sudo tee -a /etc/squid/squid.conf | |
echo "" | sudo tee -a /etc/squid/squid.conf | |
echo "via off" | sudo tee -a /etc/squid/squid.conf | |
echo "forwarded_for off" | sudo tee -a /etc/squid/squid.conf | |
echo "follow_x_forwarded_for deny all" | sudo tee -a /etc/squid/squid.conf | |
echo "request_header_access X-Forwarded-For deny all" | sudo tee -a /etc/squid/squid.conf | |
echo "header_access X_Forwarded_For deny all" | sudo tee -a /etc/squid/squid.conf | |
echo "" | sudo tee -a /etc/squid/squid.conf | |
echo "# line 5511: add hostname" | sudo tee -a /etc/squid/squid.conf | |
echo "visible_hostname abc" | sudo tee -a /etc/squid/squid.conf | |
echo "" | sudo tee -a /etc/squid/squid.conf | |
echo "# forwarded_for on" | sudo tee -a /etc/squid/squid.conf | |
echo "# line 7625: add" | sudo tee -a /etc/squid/squid.conf | |
echo "#forwarded_for off" | sudo tee -a /etc/squid/squid.conf | |
echo "" | sudo tee -a /etc/squid/squid.conf | |
echo "# cache off for all" | sudo tee -a /etc/squid/squid.conf | |
echo "cache deny all" | sudo tee -a /etc/squid/squid.conf | |
# Wrote squid.conf to /etc/squid/squid.conf | |
cat /etc/squid/squid.conf | |
echo "Please enter proxy password: " && sudo htpasswd -c /etc/squid/.htpasswd admonstrator && sudo systemctl restart squid && sudo service squid status |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment