How to Setup Squid as an HTTP Proxy Server on RHEL

One of the tools that can help achieve secure and efficient web browsing is a proxy server. A proxy server acts as an intermediary between a client and the internet. It can provide various benefits such as improved security, better performance, and control over internet usage.

One of the most popular proxy servers is Squid. Squid is a caching and forwarding HTTP web proxy that has a wide variety of uses, from speeding up a web server by caching repeated requests, to caching web, DNS, and other computer network lookups for a group of people sharing network resources.

In this tutorial, we will guide you on how to set up Squid as an HTTP proxy server on RHEL. This setup can help you to improve your network’s performance by caching repeated requests, filter web traffic, and access geo-blocked content.

Before we start, make sure you have root or sudo access to your RHEL server.

If you’re ready, let’s get started!

Step 1: Installing Squid

The first step in setting up Squid as an HTTP proxy server is to install Squid. You can do this by using the YUM package manager, which is available by default in RHEL. Run the following command to install Squid:

sudo yum install squid

Step 2: Configuring Squid

After installing Squid, the next step is to configure it. The main configuration file for Squid is located at /etc/squid/squid.conf. You can open this file in a text editor to make the necessary changes.

sudo nano /etc/squid/squid.conf

In this file, you can define the rules for your proxy server. For example, you can specify which IP addresses are allowed to use the proxy, which websites can be accessed, and so on. For the purpose of this tutorial, we will set up a basic configuration that allows all users to access the proxy.

http_access allow all

Step 3: Starting and Enabling Squid

Once you have configured Squid, the next step is to start the Squid service. You can do this by running the following command:

sudo systemctl start squid

Additionally, you want to make sure that Squid starts automatically whenever your server boots. You can ensure this by enabling the Squid service:

sudo systemctl enable squid

Step 4: Configuring Your Browser to Use Squid

Now that Squid is set up on your server, the final step is to configure your web browser to use Squid as a proxy. The process for this varies depending on the browser you are using. Generally, you will need to go to your browser’s network settings and specify the IP address of your Squid server and the port that Squid is listening on (by default, this is port 3128).

See also  How to Configure Squid Proxy Server for Private Browsing


Congratulations! You have successfully set up Squid as an HTTP proxy server on RHEL. Now you can enjoy the benefits of using a proxy server, such as improved security, better performance, and control over internet usage.

Remember, the configuration we used in this tutorial is very basic. Squid offers many more features that you can use to customize your proxy server according to your needs. So, don’t hesitate to explore the Squid documentation and experiment with different configurations.

If you have any questions or run into any issues, feel free to leave a comment below.

See also  How to Set the Vsftpd Server Banner Message on RHEL 6

Also, if you’re interested in learning more about web servers, you might find our articles on different types of web servers, Apache HTTP Server, Nginx Server, and LiteSpeed Web Server useful.

Commands Mentioned:

  • sudo yum install squid – Installs the Squid proxy server on RHEL.
  • sudo nano /etc/squid/squid.conf – Opens the Squid configuration file in a text editor.
  • http_access allow all – Allows all users to access the proxy server.
  • sudo systemctl start squid – Starts the Squid service.
  • sudo systemctl enable squid – Enables the Squid service to start on boot.
See also  How to Block Access to ALL Websites Except ONE using Squid Proxy Server


  1. What is Squid Proxy Server?

    Squid is a caching and forwarding HTTP web proxy that supports HTTP, HTTPS, FTP, and more. It reduces bandwidth and improves response times by caching and reusing frequently-requested web pages.

  2. Why use Squid Proxy Server?

    Squid Proxy Server improves performance by caching and reusing frequently-requested web pages. It also provides security as it can limit the web access for certain users and hide users’ IP address.

  3. How to install Squid Proxy Server on RHEL?

    You can install Squid on RHEL using the command ‘yum install squid’. After the installation, start the service with ‘systemctl start squid’ and enable it to start on boot with ‘systemctl enable squid’.

  4. How to configure Squid Proxy Server?

    Squid Proxy Server can be configured by editing the Squid configuration file located at /etc/squid/squid.conf. You can define access control lists, set up caching parameters, andmore in this file.

  5. Can Squid handle HTTPS requests?

    Yes, Squid can handle HTTPS requests using a feature called SSL Bumping. However, setting up SSL Bumping requires additional configuration and it’s important to consider the privacy implications of decrypting HTTPS traffic.


Leave a Reply

Your email address will not be published. Required fields are marked *