A proxy server acts as an intermediary between clients and servers, enabling organizations to filter web traffic, enforce security policies, improve performance, and preserve anonymity. Understanding how proxies work and the various types available is essential knowledge for network administration and cybersecurity roles.
Proxy Servers
One thing that can help us with web filtering and a few other security principles is the proxy server.
Before we jump into these proxy servers, let's look at what this looks like with no proxy server. We have a client right here, and it has an application on this client machine that is a web browser, and it's connecting into a web server. One of the first things that's going to happen, as it's trying to retrieve data from a web server, is it's going to create what's called a TCP session. So there's going to be some communication back and forth to create this session, and essentially it's a connection between the client and the server.
When we're setting up a proxy server, it's going to be in between the client and the server. So what does that look like? Now, instead of having just one TCP connection that's establishing the connection, there's going to be a TCP session between the client and the proxy server, and between the proxy server and the regular server, whatever it is trying to be in contact with. So it's a degree of separation. There's a separation that's keeping either the client safe or the server safe, or both.
Let's look at an example of this. I have a client machine on this network right here, and let's say we want to do web filtering on it. There's some settings to send this traffic over to a proxy server, and that proxy server is going to go and grab the information. This allows us to do some filtering on the web traffic and making sure that the URL is going to be a safe URL — I'd say, going to be an okay site to visit — and then maybe doing some antivirus or something like that on the way back. So we can do some filtering on this and make sure that the traffic that's being sent between this client machine and some sort of external resource is safe.
So what are the use cases for proxy servers? There are a lot of them. Just as some examples of this, we could do content filtering like I just mentioned. Or I've had students that use proxy servers to bypass some sort of filtering and bypass some sort of censorship. You can use it for logging or eavesdropping on conversations. You can improve performance. You can use it for things like caching. You can do it for translation, if maybe you're translating from one language to another language. You can do it for anonymity. You can do it for target advertising, and you can do it for security purposes like I had just mentioned.
So there's many different reasons for this, and we'll go into a few of those. Depending on how we set up this proxy server and what we're trying to achieve, we could call it by different names, such as a forward proxy or reverse proxy, transparent proxy, anonymous, residential, data center, HTTP, SOCKS — and there are other ones as well. This is just some of the sampling.
One of the ways that I've used a lot is the filtering example that I gave. We're filtering the traffic that's coming through this network. I would block all other traffic so that no other web traffic could go out unless it goes through the proxy server. So whoever was on the network has to go through the proxy server, and then I can filter that traffic based on: is it acceptable or not acceptable to make it to those different sites.
But when I set up filtering this way, where they couldn't get out to the rest of the world unless they go through the filtering, I had a lot of students that would try to set up their own proxy server. Now, these web filterings will block proxy servers, but it only can block what it knows is a proxy server. So what would happen is my students would set up an external proxy server. It'd still go through this proxy server, then through this external proxy server that they had set up. It would go and grab the information and then come back through.
And now, whatever site that they're trying to visit — what would happen is that this proxy server wouldn't see that site. Instead, they would see that it's coming from this proxy server, and if it didn't know that this was a proxy server, it would allow it. Then what I would have to do is go through and see where are my students visiting. I look at the top sites they visit, and if they told all their friends about this proxy server, then they would all be using that proxy server. And then I'd have to go in and block it so that they weren't able to get to the sites that they shouldn't be getting to while they're at school.
I can also set up a proxy server as being transparent. What does that mean? Rather than setting up settings on a device and then having it all go through the proxy server, instead I could set it up in line, and now all the traffic has to go through it. Then this could act as a proxy, making the request for whatever they're trying to reach and being the go-between. The advantage to this is that there's no client settings with this, but I can still do filtering on this network.
I can also use the proxy server for anonymity. Anonymity just means being unknown or unidentified. You can remain anonymous. What does that mean? Here is my network right here. This is my home network, and as things go external, those addresses get NATted, and so people can trace it back to my IP address. Now they can trace it back to me, and so they can see where I've been. But if I use a proxy server, everything's going to that proxy server and then making a connection to everything outside of that. So now what they're seeing is the IP address of the proxy server. So I could use proxy servers to remain anonymous.
We could also set up proxy servers to do caching. What does that look like? Let's say we have a large amount of users that are making it to the same site. Every time a user has to go and access this site, they download information to their computer. That could be a lot of downloads. But if I set up caching on a local proxy server, now anything that they go and retrieve could get stored on this caching server. When other users request that same information, it never has to go and retrieve that information again — it just can be sent directly. So all the information essentially gets stored, or cached, on this proxy server.
There's also a reverse proxy. What we've been talking about is more proxy on the client side, to protect or do something on the client side. But there is also a proxy server that we can set up to hide or make anonymous the servers back here, or do load balancing, or to do some sort of protection on the other side of this. And we call that reverse proxy.
TechKnowSurge builds IT and cybersecurity professionals through hands-on, concept-first training built around real understanding — not memorization. Free interactive tools, structured programs, and 25+ years of real-world experience, all in one place.
Explore free tools and programs →