≡ Menu

CentOS / RHEL / Fedora Linux: Use Yum Command With A Proxy Server

My CentOS Linux based laptop can only be accessed through our corporate proxy servers. How do I access and use yum command with a Web proxy server on a CentOS / RHEL / Fedora / Red Hat / Scientific Linux?

Yum repositories can be accessed through standard proxy servers such as Squid proxy server. You need to provide use the following details of the proxy server in /etc/yum.conf file:

  1. proxy=http://URL:PORT/ - Proxy serer URL to the proxy server that yum should use. You must seta complete URL, including the TCP port number. If your corporate proxy server requires a username and password, specify these by adding following two settings in yum.conf file itself.
  2. proxy_username=YOUR-PROXY-USERNAME-HERE (optional)- Your proxy server username to use for the proxy URL.
  3. proxy_password=YOUR-SUPER-secrete-PASSWORD-HERE (optional) - Your proxy server password for this proxy URL.

Configuration: Using yum with a proxy server on a CentOS/RHEL/Fedora Linux

Login as root user and type:
# vi /etc/yum.conf
Add the following settings in [main] section:


Here is a complete config /etc/yum.conf file:

exclude=lighttpd* nginx* spawn-fcgi* webalizer*

Save and close the file. Please note that defining a proxy server, username, and password in /etc/yum.conf means that all users connect to the proxy server with those details when using yum command:
# yum update
# yum install httpd php php-gd php-mysql

How do I enable proxy access for a specific user such as root user only?

Linux and UNIX-like system has environment variable called http_proxy. It allows you to connect text based session and applications via the proxy server. Type the following command at shell prompt:
# export http_proxy="http://server1.cyberciti.biz:3128"
# export http_proxy="http://vivek:secretePassword@server1.cyberciti.biz:3128"

Feel free to add the above line in the to your shell profile file such as ~/.bash_profile. See how to set or export: http_proxy with special characters in password on a Unix or Linux based system for more information.

{ 7 comments… add one }

  • Jalal Hajigholamali June 4, 2014, 5:26 am


    Very nice article….

  • Alen Krmelj June 4, 2014, 1:36 pm

    Yum uses mirror list, so such proxy is semi-effective…

    • Pedro Rodriguez June 5, 2014, 2:35 pm

      you have not understood why we use a proxy.

      yum uses mirror right, but here we are talking about a company that blocks access to outside world to almost all our server, allowing maybe only a couple of servers to reach these yum mirror.
      that’s why we create a proxy in one of our “external” servers

  • foobrew June 4, 2014, 7:26 pm

    Has anyone tried doing an upgrade (“fedup”) with a proxy? I’d be surprised if it works.

  • Shailen TJ August 3, 2014, 2:18 pm

    How do I configure yum to use the system proxy that was configured in the settings?

    I don’t want to have multiple proxy settings set up everywhere, for every app because I wrote a script to control the system proxy. When I am at home, I switch off the proxy using the script.

  • artyom February 11, 2015, 5:09 am

    Thank you very much!
    It is one of the first works that I could try in CentOS.

  • Mohamoud May 7, 2015, 1:18 pm

    I’m using CNTLM proxy and adding the local proxy to yum.conf
    In the cntlm proxy configuration file ./etc/cntlm.conf you can create a password hash.
    So you’re password remains secure.

Leave a Comment

   Tagged with: , , ,