Cruising into Proxy

Hi Readers. 
When I started, the intent of this post was to draw ideas upon HTTP Proxy Testing. In the process, this is what I learned and here I have shared my learning.
About HTTP Proxy testing itself, I will try to jot it down in the following write up’s and/or we can get together to learn about it! 

Thanks to Shameel Karol for sharing and being my combined study partner.
Thanks to me for re-reading, getting out of the shell and connecting with people.

-------------------Let’s go. Oh! Wait up------------------
Before we start here’s a heads up to the readers. I have framed this post in the format of Questions and Answers.

-----------------START LINE----------------

As we move ahead, we will learn about Proxy Servers.
Go grab a mug of your favorite beverage, while you wait for this page to be delivered to you.
(If this page was rendered via the Proxy Server, you would not have had the time to grab that cup of your favorite beverage)

Proxy Servers 
Q) Let’s see what is cool about the Proxy Server and why do Clients and Servers require it?
•    Protects a Client’s identity on the internet.
•    Grants access to certain resources which are blocked by another Proxy server. (How do you think you could access blocked sites like Twitter, Facebook from your company network?)
•    Educational institutions - to restrict access or impose the ban on certain sites.
•    Corporate offices - for the purpose of Security.
•    Hacking community - to ensure Anonymity.
Q) Will the message received by a user/Client forwarded to 1 or more Proxy Servers?
•    Anywhere on the internet
•    Within the Internal network with respect to a Web Server (Reverse Proxy)
•    Your Internet Service Provider (E.g., Airtel/Reliance in India) will have this information.
•    Every ISP will have different proxies/IP addresses.
•    Yes, a Proxy Server can be configured to handle different communication mediums like HTTP, HTTPS, and FTP.
•     Different Proxy Servers can handle different communication mediums; this will help in balancing the load on the Server.
Q) By being in the vicinity of a Web Server, can a Proxy Server access the resources on a Server?
•    Poor hardware configurations
•    Network traffic
•    Having one Server to cater to a wide range of IP addresses
Proxy Server has a time scheduler, which times out after a certain period of time. That‘s when a Web Server returns a timeout error.

Interesting reading this week:
Allows or disallows access to the resources on the internet. 

A) It acts as a firewall, restricting access to certain sites and users. 
Here is what they did:
They ringed the ISP (Internet Service Provider) and asked them to include certain sites and block them.
But then there are other Proxy Servers via which you can still access these blocked sites. 
Here’s what you did:
 Fired up the browser and included those Proxies in your browser’s
Tools --> Internet Options--> Connections --> LAN Settings --> Proxy Server --> ‘IP’ address of the Proxy Server and Yahoo! Opens.

Q) Now that we got a fair idea on what the Proxy Servers are. What else can they do?
A) Proxy Servers are used to:
Perform filtering and caching.

Q) Who uses it?
A) Proxy Servers are used by:

--------------------------Shifting Gears-----------------------------
--------------------- Hurrah! There‘s a Gateway ahead-----------

Q) What is a Gateway?
A) Requests received from the Client are unmodified and are sent as is to the Web Server.

-----Proceed, turning up the music and singing to the tune of your choice of music-----

A) Depends on how many Proxy Servers are configured. Different Proxy Servers can be configured for these communication mediums (HTTP, HTTPS, and FTP).


Q) A Proxy Server relays the received requests to 1 Server or many?    
A) Web Servers like Proxy Servers can be more than 1 in number. Web Servers are configured as primary, secondary, etc. This is done in order to achieve load balancing. What is it? If the primary Web Server goes down, then the request is not sent to the primary Server but the request is diverted to the secondary Web Server (Requires to be configured this way). The response is submitted to the Proxy Server and subsequently to the Client.

---------Check out the Informatory sign board ahead---------------

Q) Where is the Proxy Server located?

--------------HALT. We need to apply the reverse gear here-----------

In a reverse Proxy, the Client requesting the resource from a Web Server (whose Proxy Server is located within the internal network of a Web Server) is unaware of the presence of a Proxy Server. 

-------------Do you see a bypass ahead? ---Let’s take that-------------

Q) Why bypass Proxy Server?
A) In order to facilitate faster access to the IP addresses within a network.

Q) Why Proxy Server should not be used when connecting to the local IP addresses?
A) Bypassing the Proxy Server for local addresses will reduce the delay if any.

Q) Can the Proxy Server get the internet protocol address of a Client?
A)Yes

Q) Do Proxy Servers cater to all websites or to a selected group?
A)If the requested resource is accessible, then the Server responds with a response for the request. If the response to that request is blocked by a Proxy Server then the  Server sends out a restricted access message.

-------------Did you get a ticket yet for speeding? No. Let’s speed up ------

Q) How do I know which Proxy to apply if I have to ban certain sites from my home network?

Q) Will the Proxy Server mask the identity i.e., the IP address of the requestor?
A) Yes, this information is not required nor submitted to the Web Server.
(Edited) : However server logs do contain the requesters IP address for a while or longer (if logging is enabled). It is recorded that proxies carry the IP address of the client in the header. 

Q) Can the same Proxy Server be used for different protocols (HTTP, HTTPS, and FTP)?

A) No, physical presence means nothing unless the Proxy Server is configured to handle requests and responses from a Web Server.

----------------Caution------------- traffic ahead-------------------

Q) What could be the reason for the cause of overhead on a Web Server?

Q) Is Load balancing of Servers done by a Proxy Server?
A) Yes, by shifting loads to different Servers which can cater to the needs of the request.

Q) A Proxy Server sends the received requests from a Client to 1 Server or many?
A) All Web Servers are capable of handling the requests, the Web Server needs to have appropriate configurations to recognize the website/URL and serve the web pages to the Client.

Q) How are the requests and responses handled between a Client and a Server?
A) The Client request is sent to a Proxy Server. The primary Web Server receives the request and responds. If the primary Server fails to respond, the secondary Web Server is configured to act as a primary Web Server. 

----------Caution: Deviation 50 meters ahead-----------

A Proxy Server sends out the HTTP requests received from the Client Server to the Web Server, but it’s up to the Web Server to grant or refuse to render the HTTP responses/resources.

--------------------------- Halt & Proceed -----------------
Let us halt here and pick up the topic again in another post.



-------------------- Take that turn now and------------- STOP-------------

I will stop here with the intention of making this learning session interactive by connecting with you. (The above-noted points are open for discussion and we can connect to explore and learn).


After my first post on this blog here: This is what happened.

•    To start off with, I made new friends. Being connected with like-minded people is a luxury in itself.
•    I was biased about approaching people who were unapproachable (or I thought so as I had not tried enough). But when I took up to writing this post, I found that my questions remained unanswered and I had to go and look elsewhere (other than the Internet). And I found myself approaching those unapproachable people and Voila! They are only happy to share (Yes, they had questions too). This initiated them and me to go find answers to those questions.
•    I was approached to write for a tech journal.
•    I learned that:
a)     I can add value to the testing community with my writing (inspired by the other writers).
b)    It‘s not how much or less you know about a topic. It‘s about the willingness to learn and share.

Tip to every tester:
Do the unexpected, un-limit yourself! Find your own style of testing.

--------------------------FINISH LINE---------------------------

Comments