In this guide, we will be showing you how to set up a Proxy server on your Raspberry Pi using the Privoxy software.
Privoxy is a free and open-source non-caching web proxy that can filter and manipulate incoming data.
Using this software, we can set the Raspberry Pi up so that it can act as a proxy server for your web page data.
One of the bonuses of the Privoxy software is that you can filter and manipulate web page data before it reaches the web browser.
What this means is that you can even use Privoxy to act as an ad blocker for web browsers that don’t support software like uBlock.
Below you can find a list of equipment that we recommend for completing this tutorial on setting up your Raspberry Pi as a proxy server.
Recommended
Ethernet Cord or WiFi dongle (The Pi 3 and 4 has WiFi inbuilt)
Optional
For this tutorial, we were running the latest available version of Raspbian Buster running on a Raspberry Pi 4.
In this section, we will be installing Privoxy to our Raspberry Pi. This software is what we will be using to turn our Raspberry Pi into a proxy server.
1. Before we install the Privoxy software to our Raspberry Pi, we need to update Raspbian’s existing packages.
We can do this by running the following two commands on the Pi’s terminal.
2. Now we can install Privoxy by running the following command.
Installing Privoxy is simple as it is available from the Raspbian package repository.
Now that we have installed the Privoxy software, we can now go ahead and make some changes to its configuration to allow outside access to the proxy server.
By default, Privoxy is set up so only the local computer can access its proxy server.
1. To be able to configure the Privoxy software to allow outside connections we will have to modify its config file.
Begin modifying this file by running the following command.
2. In this file, search for the following block of text.
This text is what defines what addresses Privoxy will listen on. At the moment its set to only listen on the loopback device.
By changing this to our replacement, we will be allowing any outside device to connect through the proxy.
Once done, save the file by pressing CTRL + X , followed by Y , then ENTER .
4. For our new changes to be loaded in, we need to restart the Privoxy service.
We can restart the service by running the following command.
Before beginning this section, we highly recommend that you make sure your Raspberry Pi has a static local IP address.
1. To be able to make use of Privoxy you will need to change your web browser to make use of your Raspberry Pi’s proxy server.
The method for this differs browser to browser, but below, we have some quick guides on where you can find the proxy settings for three different web browsers.
- In Chrome:
- Open the “ Settings ” menu or go to “ chrome://settings in the address bar.
- Scroll down to the bottom
- Click “Advanced” to open the advanced settings
- Scroll down until you see the “System” heading
- Click the “ Open your computer’s proxy settings ” button.
- In Firefox:
- Open up the Options menu or go to “ about:preferences ” in the address bar.
- Scroll down to the bottom.
- Click the “ Settings. ” button under the “ Network Settings ” heading.
- In Internet Explorer:
- Go to Settings.
- Click the “ Connections ” tab.
- Click the” LAN settings button.
- Tick “ Use a proxy server for your LAN “.
2. Once you have found the proxy configuration page for the web browser that you are using, you will need to enter the following details.
The IP Address you set should be the IP for your Raspberry Pi. You would have retrieved this in the previous section.
For example, our IP address would be set 192.168.1.115 .
The port should be set to 8118 as this is the port Privoxy will be listening on.
3. Once you have configured your proxy settings to point to your Raspberry Pi, go ahead and go to the following address.
4. If everything is working, you should be greeted by the screen below.
If you are greeted by a message saying “Privoxy is not being used“, you will need to double-check that your proxy settings are correct.
At this point, you should now have successfully set up your Raspberry Pi to act as a proxy server by using the Privoxy software.
If you have run into any issues with getting the software to work, you can drop a comment below.
Pi-hole, Wireguard and Privoxy. Providing an ad-blocking VPN protected proxy server with a Raspberry Pi.
Richard Crosby
Implementation Consultant for the SaaS retail platform ‘Veeqo’. Also do various stuff with computers – from video editing to sys admin or web development.
More posts by Richard Crosby.
Richard Crosby
Pi-hole, Wireguard and Privoxy. Providing an ad-blocking VPN protected proxy server.
Build your own internal ad blocker – also serving as a VPN protected proxy server. Gives you anonymous, ad-free internet access across your home network.
In this tutorial I’ll detail setup using Wireguard – but the same approach can be used with the OpenVPN client.
Initial Setup
Get your Raspberry Pi up and running
First off, your’re going to need a Raspberry Pi – a model 2 or later is preferable – along with a Micro SD Card, monitor and keyboard.
- Download the latest (lite) version of Rasbian from here –
- Flash this to your SD card using a tool like Etcher ()
- Insert the flashed SD card into the Raspberry Pi – and for this intial bit of setup you’ll also need it connected to a monitor and keyboard as well.
- Boot the device and login with the default credentials (Username: pi) (Password: raspberry). It’s best practice to now set a custom password. Run the passwd command to set your own password.
- Next we need to enabled SSH access so we can work on the Pi remotely. Run the command sudo raspi-config to open the configurator tool.
- Selection option (5) ‘INTERFACE OPTIONS’ and select ‘P2 SSH’ from the list to enable SSH access to the Raspberry Pi.
- Enter the command ifconfig to reveal network information – an ‘inet’ value will be shown your connected network adapters – make note of the relevant number – you’ll need this to connect remotely to the Raspberry Pi.
- Ideally, you’ll want to set this as a reserved (fixed) IP for this machine via your router configuration page.
- Download a tool like Putty () and connect to the Raspberry Pi from your desktop / laptop PC using the IP address from the step above – the username ‘pi’ and the password you specified in step 4.
- Once you’ve logged into your Raspberry Pi, it’s best practice to ensure all packages are up to date. Run sudo apt-get update && sudo apt-get upgrade -y to check for new packages and install any updates.
Pi-hole Setup
For the quick and easy option –
Wireguard (VPN) Setup
WireGuard® is an extremely simple yet fast and modern VPN that utilizes state-of-the-art cryptography. It aims to be faster, simpler, leaner, and more useful than IPsec, while avoiding the massive headache. It intends to be considerably more performance than OpenVPN. ()
Wireguard Installation (Raspberry Pi 2 v1.2 and above)
From here follow the instructions from your VPN provider. I recommend
Setup Unbound Recursive DNS Server
Unbound is a validating, recursive, caching DNS resolver. It is designed to be fast and lean and incorporates modern features based on open standards.
Recursive DNS Testing –
Privoxy (Proxy Server) Setup
Privoxy is a proxy server application used to route internet traffic. By empoying a proxy server on a machine connected to the internet via VPN – we get the benefits of that VPN connected. The same proxy server can be used across devices on your network – from computers, phones, tablets and more.
- Install Privoxy using the command sudo apt-get install privoxy -y .
- Open the configuration file with the command sudo nano /etc/privoxy/config .
- Look for the line listen-address 127.0.0.0:8118 – this is the address and port the proxy server is running on.
- Update the listen address IP to match the IP address of the Raspberry Pi server you are connected to.
- Restart the Privoxy service with sudo service privoxy restart
Final Setup
Network Wide Ad-blocking
Set your router’s primary DNS server to the IP address of your Raspberry Pi server. All request made by devices on the network will be resolved via the Unbound DNS resolver and adverts blocked by Pi-hole.
Example Router Config. –
VPN Proxy Server
With Privoxy running, your device acts as a proxy server than can be used by any device on the network. Configure your application to use the proxy server at the address and port specified for the listen-address during Privoxy setup.
Example Usage
Using Chrome plugin ‘Proxy SwitchyOmega’ for proxy switching. This supports rules for ‘auto switching’ – allowing you to pick and choose your connection based on URL patter. Perfect for a Tor proxy as detailed in my next article (link below).
Tor Proxy Server
Read how to turn this Pi into a Tor proxy here for quick and easy access to the Tor network.
Jan 14, 2018 · 3 min read
I recently came across an awesome Raspberry Pi project called Pi-hole () which bills itself as “A Black Hole for Internet Advertisements.” I’ve never felt the need to block ads, but I had a Raspberry Pi that I had yet do anything useful with, so I figured I would try it out. Along the way, I came across a related project called Privoxy and between the two of them, I realized I could use my Raspberry Pi to customize how I consume much of the internet.
I’ve never fel t the need to block ads, but as I read more about Pi-Hole, I realized that there are some great benefits to doing so. Besides the obvious benefit of not having annoying ads show up, there are also performance benefits. Pi-hole works by blocking the ads before they even reach your browser, meaning that there is less to download which results in faster page loads. Not only that, but with Pi-hole you get ad-blocking on any devices connected to your network, including your mobile devices!
Installing Pi-hole on the Raspberry Pi is pretty straightforward. Once that is done, and you’ve setup your router to use Pi-hole, it will start actively blocking ads on all of your devices.
To test your setup, the Pi-hole project has a helpful page that shouldn’t show any ads if it is working. There is also a nice admin dashboard which can be accessed at /admin :
With Pi-hole setup, I now had faster page loads and fewer annoying ads. But I still wanted to make the time I spent on the internet more productive. In particular, I wanted to block certain websites that I waste too much time on.
I came across Privoxy () which according to the project page,
is a non-caching web proxy with advanced filtering capabilities for enhancing privacy, modifying web page data and HTTP headers, controlling access, and removing ads and other obnoxious Internet junk.
In other words, Privoxy can filter content by sitting between your computer and the internet. Since I wanted to reduce the time I spent wasting on particular sites, this seemed like the perfect solution.
I followed these installation instructions to install Privoxy on my Raspberry Pi. After pointing your device to the proxy, you can go to to verify that everything is working correctly.
Once that is setup, add the following to the bottom of /etc/privoxy/config :
Then, create blacklist.action and whitelist.action in the same directory as your config file.
I decided to go all out and completely block both Google and Reddit, which you can do by adding the following to blacklist.action :
NOTE: Because these sites use HTTPS, you have to block entire domains. With HTTP sites you can block specific pages.
The end result is that when I am at home, I have very little incentive to be on my phone.
Installing Pi-hole and Privoxy on a Raspberry Pi is a great way to take more control of how you interact with the internet. Working together, the two make the internet more enjoyable, faster, and possibly even more useful 🙂
Many people have begun to recognize how little privacy is actually available when accessing networks like the Internet. One project that has sought to fix that is The Onion Router , more commonly known as the Tor Project .
Tor provides a network stack that anonymizes users while accessing the Internet. The simplest way to make use of Tor is by installing their custom web browser, the Tor Browser . Installation is simple, the browser automatically connects to the Tor network, and you are surfing anonymously within minutes.
However, the Tor Browser has some limitations. For example, it does not provide security for any other applications on your system. Do you use a different browser? A custom email client? What about that chat application you use? Or synchronized file storage like Dropbox or OneDrive? None of that is protected by the Tor Browser. Now, you can install the native Tor client on your machine to fix that, but what if you forget to launch the client? What if you have a hardware device like a VoIP phone, or even an Xbox that just does not support Tor? What about those operating system updates that run in the background ? They are not going to use Tor . What do you do? Well, do not worry. There is a solution and all you need is a Raspberry Pi to solve all of those problems.
I’m going to show you how to build a Transparent Tor Proxy to protect your devices without needing to install or configure software on the end devices. The topology ( figure 1 ) is pretty simple : One interface of the Raspberry Pi will provide a secure trusted network and appear as a standard router. The second interface will connect to an Untrusted network. Finally, the Raspberry Pi will force all trusted traffic over to the Tor network. The end result is a router that guarantees all of our communications are sent out via Tor.
I also did a webinar on this topic that you can watch on-demand for free. You can watch that webinar here and follow along.
Step 1: Assemble Your Hardware
To get started, we need to gather a few parts. For this build, I chose to go with a Raspberry Pi 4. You could easily use a Raspberry Pi 3 or similar type device as long as it supports Linux. Just be careful to pay attention to network throughput. The Raspberry Pi 3 has a gigabit interface on it, but its real speed is much lower because the CPU and USB bus create a bottleneck. The Raspberry Pi 4 solved that problem so it can actually achieve gigabit speeds.
We also need a second network interface. This is another area where you want to be careful with your selection. I recommend a USB NIC that uses the Realtek RTL8153 chipset. The driver for that chipset is included with the Linux kernel so I know I will not have to mess around with configuring drivers later on.
Here is a list of everything I bought for this project:
| Component | Cost |
|---|---|
| Raspberry Pi 4B (4GB) | $55.00 |
| 32GB Micro SD Card | $7.49 |
| USB NIC with RTL8153 Chipset | $13.99 |
| USB-C Power Adapter | $11.99 |
| Heatsink / Cooling Solution | $17.99 |
| Total | $106.46 |
Step 2: Assemble Your Software
The only software we need for this project is Ubuntu Linux from Canonical. It is free and they have a version specifically for the Raspberry Pi that can be downloaded directly from their site (figure 2). You could use Raspberry Pi OS, but it is not built with security in mind. I find it is generally not worth it to try and secure a training OS so you are better off going with something mainstream like Ubuntu.
Next, you will want to flash Ubuntu to an SD Card. Most of you are already familiar with this process. If not, I highly recommend you follow this tutorial from Canonical.
Step 3: Connect Your Hardware
Once we have all the pieces, it is time to put them together. Insert the SD Card into the Raspberry Pi’s memory slot. Then connect the USB NIC to one of the USB 3.0 ports (they have a blue tab, not white). You will also want to attach a monitor and keyboard, although this isn’t strictly necessary as Ubuntu has SSH enabled by default, but it is certainly easier as you won’t have to guess the IP address of the unit. Finally, plug in the power and watch it boot up.
Ubuntu uses a system called Cloud-Init to automatically configure itself during the first boot. It will automatically label the onboard NIC as “Eth0” and the USB NIC as “Eth1.” It will also create a default user with the following credentials:
Username: ubuntu
Password: ubuntu
Certainly not the most secure credentials, but it will make you change the password on the first login. If you try to login and it fails that usually means the Cloud-Init scripts haven’t finished running. Wait a few moments and then try again.
Step 4: Update Ubuntu
Updates are fast and furious in the Linux world thanks to thousands of contributors all over the world. Unfortunately, that means our install is almost guaranteed to be out of date on day one. We can fix that pretty easily by performing a quick update using the following command:
Are you aware that you can set up your own static residential proxies using Raspberry Pi? To learn how to get that done and start using your own residential device IPs to access the Internet, come in now.
Table of Contents
Residential proxies bought from most of the residential proxy service providers have some problems in common that stop people from using them – they are expensive and rotating. Because of their pricing, small marketers are left with no option but to make use of other types of proxies. Even with the expensive nature of their proxies, their IPs are not static because the providers actually do not own them and as such, can’t provide them for long thus, making them rotating.
For some of the few providers such as Luminati that have static residential proxies, the pricing for their static residential proxies isn’t reasonable, to say the least.
With all these reasons, if you must make use of residential proxies, you have to choose from two options – you either buy at the exorbitant prices they sell, buy from low-quality providers, or set up your own residential proxies that will use your devices’ IPs.
For those that choose the 3 rd choice, this article has been written for you – you’re going to be learning how to set up a residential proxy using a Raspberry Pi.
What is Raspberry Pi?
Raspberry Pi is a series of small single-board computers developed in the United Kingdom by the Raspberry Pi Foundation to facilitate the teaching of computing and programming. It has since been adopted for use in other fields such as robotics and in the Internet of Things.
Credit card shaped, Raspberry Pi runs on a good number of Operating Systems (OS) with Raspbian being the most popular OS used with Raspberry Pi. Raspbian is based on Linux but made specifically for Raspberry Pi.
With this single-board computer, all you need is connect computer peripherals such as keyword, mouse, and monitor or even a TV set and you are good to go. Since it is a computer, we want to utilize it as a proxy server for our residential proxy service. We won’t be needing a monitor or a TV after set up is complete.
Why Set Up Your Own Static Residential Proxies?
As stated earlier, most of the proxy providers provide only rotating residential proxies because they do not own the IPs they use. They get the IPs by renting them from idle devices through their IP pool services or some SDKs.
Because they do not own the IPs, they do not know for how long the IPs will be available to them and as such, can’t provide you static proxies. There’s also the problem of not being sure if the IPs you’re about to use have been blocked by the web service you’re interested in using them on.
But if you create your own static residential proxies, you will be able to use them to access services without the fear of getting them blocked unless you abuse them yourself since you aren’t sharing them with anyone.
With static residential proxies, you can also access websites that require a login and need long-session maintained for a while. This is something you can’t do with rotating proxies as red flags can be quickly raised and your access blocked, So static residential proxies are good for sneaker bots and IG automation, or other account management, and the residential rotating proxies are much good for web Scraper.
How to Set Up Residential Proxies using Raspberry Pi
The Raspberry Pi for this project is Raspberry Pi 3. You can use anyone you like, provided you know what you are doing. Aside from the Raspberry Pi, you require a Micro SD, a keyboard, and a mouse. Raspberry Pi does not come with an OS installed.
It does not come with its own persistent storage as you will need a memory that we intend to use a Micro SD – and the OS will be loaded on it. You can buy this from Amazon as it contains most of the required hardware. It even comes with Raspbian OS in the memory card and as such, you do not have to worry about installing an OS.
If you do not want to go with the above, you can buy all you need in pieces and install the OS yourself. For a comprehensive guide on how to set up Raspbian on Raspberry Pi, read this Medium article.
Connect the Raspberry with an HDMI cable to a monitor or TV. Then connect a keyboard, mouse, and Ethernet. You can use Wi-Fi in the place of Ethernet. If you have an OS installed already, the system will boot smoothly without any problem. After you have got the Raspberry up and running, follow the steps below.
- Step 1
You need to enable SSH and change your password. To do that, launch the terminal and enter the command,
In the advanced options, you will see where to enable SSH and change passwords. Do that.
- Step 2
You can then remove the HDMI cable, keyboard, and mouse as you won’t be needed them again. Setup will continue using SSH.
- Step 3
After doing the above, enter the command commands one after the order in the terminal. When theirs is yes or no prompt, enter y which means yes.
Install Squid
Config squid
Then easily edit squid.conf as,
config:
Create Users
#replace USERNAME_HERE and PASSWORD_HERE with your desired user name and password.
Restart squid
Change Port
#replace with your port you chose,
- Step 4
The last step is port forwarding in your router or modem. You need administrative access to get this last step done. Enable port forwarding and forward to your Raspberry Pi IP address. To view your Raspberry Pi IP address, enter “ifconfig” command in the terminal to see your device IP.
Now, You can now test your proxies.
It is important I stress here as a way of concluding this article that you have to follow the steps described above carefully. Make sure you run the steps one after the other and make sure you do not miss any step or misspell any of the commands. If you follow everything one after the other carefully, you should have a residential proxy service set up in no time.
falling through stewing steak
The lack of ad blocking options on iOS pushed me towards setting up a Privoxy proxy on the network.
The initial idea of having it on my work machine didn’t really workout as it meant having the beast turned on, and that tends to result in me getting sucked into work mode at “inappropriate” times. As running a filtering proxy is hardly a server scale task, i’ve got a Raspberry Pi, powered off the USB port of the router, doing the job.
[I’m not sure how powering it off the USB is going to work out – there are conflicting tales on the suitability of various power sources… at worst it can go back to using the wall wart, but it’d be nice to have it not really need that.
Edit: 9 months later, and i can report that there are no issues with drawing power this way. Perhaps if the load on the device was higher it might be a problem, but for this application USB power is super stable.]
It’s a cute little thing. Makes me think of a baby version of Orac… wonder if that was intentional – it’s culturally about right for the kind of people that would start a project like Raspberry Pi!
Getting it set up is nice and easy. The O/S is Raspbian (a port of Debian Wheezy, with fp support for the ARM chip), so it’s just a matter of getting a static ip address configured in /etc/network/interfaces, pkgadd’ing privoxy, fiddling with a few config files to get it listening for remote connections, and away you go. The default privoxy configuration is tied down pretty tight, and needs a little tweaking to deal with some japanese sites, but overall the experience is a great improvement.
Next i’d like to setup something like Hamachi / Logmein, but it seems that might not be applicable for iOS. It would be nice to have a secure VPN (other than the one that i have for work) that could be used when on public networks. Although it looks like many of them are trying to block VPN connections…
With smart devices becoming familiar also to very young people, kids are going to be more and more exposed to web contents. Unfortunately, web also become populated from people with rather questionable purposes.
This means that controlling home devices and defending it from accessing dangerous sites is a must for parents all over the world.
An addictional desiderable service is also protecting kids from unwanted advertisement which can include paid services.
With this in mind, Raspberry PI offers a fantastic opportunity because it can provide powerful proxying services with filtering capabilities.
In this tutorial, I’m going to show you how to setup Privoxy in a very cheap Raspberry PI Zero W board. This guide will work also with newer Raspberry PI boards with same steps.
What is Privoxy
Privoxy is a non-caching web proxy with advanced filtering capabilities for enhancing privacy, modifying web page data and HTTP headers, controlling access, and removing ads and other obnoxious Internet junk.Can be used both for single device protection (by installing it on device you want to protect) and newtork protection (by configuring network devices to use privoxy server as proxy).
Privoxy is Free Software and licensed under the GNU GPLv2.
According to Privoxy introduction page, in addition the core features (ad blocking and cookie management), it provides many advanced features:
- Supports “Connection: keep-alive”. Outgoing connections can be kept alive independently from the client.
- Supports IPv6, provided the operating system does so too, and the configure script detects it.
- Supports tagging which allows to change the behaviour based on client and server headers.
- Can be run as an “intercepting” proxy, which obviates the need to configure browsers individually.
- Sophisticated actions and filters for manipulating both server and client headers.
- Can be chained with other proxies.
- Integrated browser-based configuration and control utility at (shortcut: ). Browser-based tracing of rule and filter effects. Remote toggling.
- Web page filtering (text replacements, removes banners based on size, invisible “web-bugs” and HTML annoyances, etc.)
- Modularized configuration that allows for standard settings and user settings to reside in separate files, so that installing updated actions files won’t overwrite individual user settings.
- Support for Perl Compatible Regular Expressions in the configuration files, and a more sophisticated and flexible configuration syntax.
- GIF de-animation.
- Bypass many click-tracking scripts (avoids script redirection).
- User-customizable HTML templates for most proxy-generated pages (e.g. “blocked” page).
- Auto-detection and re-reading of config file changes.
- Most features are controllable on a per-site or per-location basis.
- Many smaller new features added, limitations and bugs removed.
What We Need
As usual, I suggest adding from now to your favorite e-commerce shopping cart all needed hardware, so that at the end you will be able to evaluate overall costs and decide if continuing with the project or removing them from the shopping cart. So, hardware will be only:
- Raspberry PI Zero W (including proper power supply or using a smartphone micro usb charger with at least 3A) or newer Raspberry PI Board
- high speed micro SD card (at least 16 GB, at least class 10)
Check hardware prices with following links:
If you are looking for a small computer for various tasks in your home network, you should consider the Raspberry Pi. For about 50 Euro you can get a complete system, which can be used as a firewall, media player, web server or weather station with appropriate sensors. The possibilities are unlimited, there are many different projects.
The Raspberry Pi is a small single-board computer based on an ARM-SoC: a BCM 2825 whose main processor ARM1176JZF-S is clocked at 700 MHz (and can easily be overclocked to 900 MHz). The system has two USB ports, a LAN port and an SD card slot. The operating system is installed on an SD card, in my case I use Raspbian, which is based on Debian.
Squid and Privoxy: caching and ad blocker
If you use an Apple device at home (for example an iPad) you cannot use an adblocker without jailbreak. However, many forms of advertising do not work properly. Here the Raspberry Pi comes into play, on which I installed Squid (as cache) and Privoxy (i.e. ad filter) as proxy chain. Since Debian 7.0 is the basis, it is quite simple:
After this is done, you have to build a proxy chain (proxy-chain) from Squid and Privoxy, so that the ad-free pages are kept in the cache. This reduces the load on the Raspberry Pi, because the filters don’t have to be applied to every request. Search in /etc/squid/squid.conf for “cache_peer” and enter the specifications for Privoxy there:
If you want to use the Adblock Plus filter lists with Privoxy, you can use the corresponding Script from the Ubuntu community use. On the iPad, the appropriate proxy must then be set for the WLAN connection being used. Squid is specified here: 3128 is the default port under which the caching proxy can be reached.
Raspberry Pi: with better cooling stable 900 MHz
If you want more power, you can simply overclock the Raspberry Pi using the configuration tool: instead of 700 MHz, the system then runs at 900 MHz, which allows a little more air for working as a proxy. In return, a slightly better cooling is useful, which can easily be achieved with flat, passive heat sinks. I have created a short video about this (see below). Of course overclocking is always a risk, so you should be careful with it.
The Raspberry Pi mini-calculator is really an exciting device, with which many more or less meaningful projects can be realized – since the software is simply installed on SD card, you can easily try different things with different SD cards. I will also do other things with the Raspberry Pi – what exactly, I don’t know yet 😉
No products found.
Last updated on 2021-07-20 at 22:06 / Affiliate Links / Images from the Amazon Product Advertising API
Are you aware that you can set up your own static residential proxies using Raspberry Pi? To learn how to get that done and start using your own residential device IPs to access the Internet, come in now.
Table of Contents
Residential proxies bought from most of the residential proxy service providers have some problems in common that stop people from using them – they are expensive and rotating. Because of their pricing, small marketers are left with no option but to make use of other types of proxies. Even with the expensive nature of their proxies, their IPs are not static because the providers actually do not own them and as such, can’t provide them for long thus, making them rotating.
For some of the few providers such as Luminati that have static residential proxies, the pricing for their static residential proxies isn’t reasonable, to say the least.
With all these reasons, if you must make use of residential proxies, you have to choose from two options – you either buy at the exorbitant prices they sell, buy from low-quality providers, or set up your own residential proxies that will use your devices’ IPs.
For those that choose the 3 rd choice, this article has been written for you – you’re going to be learning how to set up a residential proxy using a Raspberry Pi.
What is Raspberry Pi?
Raspberry Pi is a series of small single-board computers developed in the United Kingdom by the Raspberry Pi Foundation to facilitate the teaching of computing and programming. It has since been adopted for use in other fields such as robotics and in the Internet of Things.
Credit card shaped, Raspberry Pi runs on a good number of Operating Systems (OS) with Raspbian being the most popular OS used with Raspberry Pi. Raspbian is based on Linux but made specifically for Raspberry Pi.
With this single-board computer, all you need is connect computer peripherals such as keyword, mouse, and monitor or even a TV set and you are good to go. Since it is a computer, we want to utilize it as a proxy server for our residential proxy service. We won’t be needing a monitor or a TV after set up is complete.
Why Set Up Your Own Static Residential Proxies?
As stated earlier, most of the proxy providers provide only rotating residential proxies because they do not own the IPs they use. They get the IPs by renting them from idle devices through their IP pool services or some SDKs.
Because they do not own the IPs, they do not know for how long the IPs will be available to them and as such, can’t provide you static proxies. There’s also the problem of not being sure if the IPs you’re about to use have been blocked by the web service you’re interested in using them on.
But if you create your own static residential proxies, you will be able to use them to access services without the fear of getting them blocked unless you abuse them yourself since you aren’t sharing them with anyone.
With static residential proxies, you can also access websites that require a login and need long-session maintained for a while. This is something you can’t do with rotating proxies as red flags can be quickly raised and your access blocked, So static residential proxies are good for sneaker bots and IG automation, or other account management, and the residential rotating proxies are much good for web Scraper.
How to Set Up Residential Proxies using Raspberry Pi
The Raspberry Pi for this project is Raspberry Pi 3. You can use anyone you like, provided you know what you are doing. Aside from the Raspberry Pi, you require a Micro SD, a keyboard, and a mouse. Raspberry Pi does not come with an OS installed.
It does not come with its own persistent storage as you will need a memory that we intend to use a Micro SD – and the OS will be loaded on it. You can buy this from Amazon as it contains most of the required hardware. It even comes with Raspbian OS in the memory card and as such, you do not have to worry about installing an OS.
If you do not want to go with the above, you can buy all you need in pieces and install the OS yourself. For a comprehensive guide on how to set up Raspbian on Raspberry Pi, read this Medium article.
Connect the Raspberry with an HDMI cable to a monitor or TV. Then connect a keyboard, mouse, and Ethernet. You can use Wi-Fi in the place of Ethernet. If you have an OS installed already, the system will boot smoothly without any problem. After you have got the Raspberry up and running, follow the steps below.
- Step 1
You need to enable SSH and change your password. To do that, launch the terminal and enter the command,
In the advanced options, you will see where to enable SSH and change passwords. Do that.
- Step 2
You can then remove the HDMI cable, keyboard, and mouse as you won’t be needed them again. Setup will continue using SSH.
- Step 3
After doing the above, enter the command commands one after the order in the terminal. When theirs is yes or no prompt, enter y which means yes.
Install Squid
Config squid
Then easily edit squid.conf as,
config:
Create Users
#replace USERNAME_HERE and PASSWORD_HERE with your desired user name and password.
Restart squid
Change Port
#replace with your port you chose,
- Step 4
The last step is port forwarding in your router or modem. You need administrative access to get this last step done. Enable port forwarding and forward to your Raspberry Pi IP address. To view your Raspberry Pi IP address, enter “ifconfig” command in the terminal to see your device IP.
Now, You can now test your proxies.
It is important I stress here as a way of concluding this article that you have to follow the steps described above carefully. Make sure you run the steps one after the other and make sure you do not miss any step or misspell any of the commands. If you follow everything one after the other carefully, you should have a residential proxy service set up in no time.