# [Wanted - script] Auto proxy set up



## fatboy (May 20, 2013)

Afternoon all - I reposted Nyrs OpenVPN setup script in the turtorials and guides forum and then got to thinking, does anyone have a nice easy install script for a private proxy? Thinking something like 3proxy as its nice and small?

Thanks in advance!


----------



## raidz (May 20, 2013)

I use polipo and add this into the config:

authCredentials =  raidzassword

raidz is username

password is .... your password

You also need to set it to listen on your public ip by uncommenting the  proxyAddress line and adding your machines public ip.

Polipo uses port 8123 by default.

Edit: I understand this isn't an auto setup script but this is so easy, you really don't need one.


----------



## fatboy (May 20, 2013)

Thanks for that - never heard of polipo so will go have a look


----------



## 365Networks (May 20, 2013)

@fatboy Check out this guide on a polipo guide, someone has made in the tutorials section of the forum!

http://vpsboard.com/index.php?/topic/131-small-http-proxy-socks/


----------



## fatboy (May 20, 2013)

LOL, how did I miss that?!?!

Thanks


----------



## dmmcintyre3 (May 20, 2013)

Step 1: ssh -D 8080 [email protected] -p sshport

Step 2: Configure your browser to use a socks proxy at 127.0.0.1:8080


----------



## drmike (May 20, 2013)

Private proxy running on a remote server is the idea here?

I like sshuttle.

I believe you can get it running on dd-wrt in a central place on your lan and presto.... simple centrailized solution.

I've ran Squid in the past on remote server to accomplish the remote version for roaming users on mobiles.


----------



## mark (May 27, 2013)

Here's a quick and dirty Squid installation script that I wrote a few months ago for Debian based linux. It was really just for my own use (hence uncommented), but you might find it useful. If you want a RHEL/CentOS based one, I have one. This sets up a transparent, elite proxy.


```
#!/bin/bash

# This script is distributed under a Creative Commons ShareAlike 3.0 licence.
# http://creativecommons.org/licenses/by-sa/3.0/

echo " "
echo " "
echo "*** SQUID 3 INSTALLATION SCRIPT ***"
echo " "
echo " "
echo "Please enter a user name for Squid:"
read u
echo " "
echo "Please enter a password (will be shown in plain text while typing):"
read p
echo " "

clear

a="`netstat -i | cut -d' ' -f1 | grep eth0`";
b="`netstat -i | cut -d' ' -f1 | grep venet0:0`";

if [ "$a" == "eth0" ]; then
  ip="`/sbin/ifconfig eth0 | awk -F':| +' '/inet addr/{print $4}'`";
elif [ "$b" == "venet0:0" ]; then
  ip="`/sbin/ifconfig venet0:0 | awk -F':| +' '/inet addr/{print $4}'`"; 
fi

apt-get update
apt-get -y install apache2-utils
apt-get -y install squid3

rm /etc/squid3/squid.conf

cat > /etc/squid3/squid.conf <<END
acl ip1 myip $ip
tcp_outgoing_address $ip ip1

auth_param basic program /usr/lib/squid3/ncsa_auth /etc/squid3/squid_passwd
acl ncsa_users proxy_auth REQUIRED
http_access allow ncsa_users

acl manager proto cache_object
acl localhost src 127.0.0.1/32
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32
acl SSL_ports port 443
acl Safe_ports port 80		# http
acl Safe_ports port 21		# ftp
acl Safe_ports port 443		# https
acl Safe_ports port 1025-65535	# unregistered ports
acl Safe_ports port 280		# http-mgmt
acl Safe_ports port 488		# gss-http
acl Safe_ports port 591		# filemaker
acl Safe_ports port 777		# multiling http
acl CONNECT method CONNECT

http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access deny all
http_port 3128

hierarchy_stoplist cgi-bin ?
coredump_dir /var/spool/squid3
cache deny all

refresh_pattern ^ftp:		1440	20%	10080
refresh_pattern ^gopher:	1440	0%	1440
refresh_pattern -i (/cgi-bin/|\?) 0	0%	0
refresh_pattern .		0	20%	4320

icp_port 3130

forwarded_for off

request_header_access Allow allow all 
request_header_access Authorization allow all 
request_header_access Proxy-Authorization allow all 
request_header_access Proxy-Authenticate allow all 
request_header_access Cache-Control allow all 
request_header_access Content-Encoding allow all 
request_header_access Content-Length allow all 
request_header_access Content-Type allow all 
request_header_access Date allow all 
request_header_access Expires allow all 
request_header_access Host allow all 
request_header_access If-Modified-Since allow all 
request_header_access Last-Modified allow all 
request_header_access Location allow all 
request_header_access Pragma allow all 
request_header_access Accept allow all 
request_header_access Accept-Charset allow all 
request_header_access Accept-Encoding allow all 
request_header_access Accept-Language allow all 
request_header_access Content-Language allow all 
request_header_access Mime-Version allow all 
request_header_access Retry-After allow all 
request_header_access Title allow all 
request_header_access Connection allow all 
request_header_access Proxy-Connection allow all 
request_header_access User-Agent allow all 
request_header_access Cookie allow all 
request_header_access All deny all 
END

htpasswd -b -c /etc/squid3/squid_passwd $u $p

service squid3 restart

echo " "
echo " "
echo "*** SET UP COMPLETE ***"
echo " "
echo " "
```


----------

