HTTP tunnel

**HTTP Tunneling**-ი წარმოადგენს ტექნოლოგიას რომლის საშუალებითაც სხვადასხვა TCP/IP ოჯახის ქსელური პროტოკოლი მუშაობს HTTP პროტოკოლის „გავლით“. HTTP პროტოკოლი ამ შემთხვევაში მილია, რომელშიც ინფორმაცია გაედინება „დაფარული არხით“.

HTTP ნაკადში დაფარულ არხს უწოდებენ **HTTP Tunnel**-ს.

თავის მხრივ **HTTP Tunnel**-ი წარმოადგენს კლიენტ-სერვერულ პროგრამული უზრუნველყოფას, რომელიც ინტეგრირდება არსებულ პროგრამულ უზრუნველყოფასთან და აძლევს მას კომუნიკაციის საშუალებას შეზღუდულ ქსელურ გარემოცვაში, როგორიცაა, მაგალითად, ქსელური ფარით (Firewall-ით) აღჭურვილი ქსელები ან პროქსი სერვერის და NAT-ის მიღმა არსებულ ქსელები .

## გამოყენება 
HTTP Tunnel-ი ძირითადად გამოიყენება კომუნიკაციის საშუალებად შეზღუდული ქსელური გარემოცვიდან, როგორიცაა, მაგალითად, ქსელური ფარით (firewall-ით) აღჭურვილი ქსელები ან პროქსი სერვერის და NAT-ის მიღმა არსებულ ქსელები. კავშირის შეზღუდვა TCP/IP პორტების, გარედან ინიცირებული ტრაფიკის ან ყველა ქსელური პროტოკოლის დაბლოკვით გარდა რამდენიმე პროტოკოლისა არის უსაფრთხოების მიზნით ქსელის შეზღუდვის გავრცელებული მეთოდი.

## მექანიზმი 
პროგრამა რომელიც საბოლოოდ უკავშირდება დაშორებულ კვანძს ამყარებს HTTP კავშირს შუამავალ სერვერთან და "ესაუბრება" მას HTTP request-ების საშუალებით, რომლებშიც შეფუთულია საბოლოო კვანძისთვის განკუთვნილი პაკეტები. შუამავალი სერვერი უნდა აუცილებლად მდებარეობდეს დამაკმაყოფილებლად შეუზღუდავ ქსელურ გარემოცვაში..

შუამავალი სერვერი ხსნის შეფუთულ ინფორმაციას და გახსნილი სახით უგზავნის საბოლოო კვანძს, პასუხის მიღებისას კი ისევ ხდება მისი HTTP პროტოკოლში შეფუთვა და HTTP response-ს სახით უკან დაბრუნება.

HTTP-ზე დამყარებული კიდევ ერთი tunneling მეთოდი იყენებს HTTP CONNECT მეთოდს/ბრძანებას. ეს ბრძანება ამყარებს TCP კავშირს HTTP პროქსი სერვერსა და მითითებულ სერვერ:პორტთან, ამიტომ, უსაფრთხოების მიზნით, HTTP პროქსი სერვერები ხშირად ზღუდავენ CONNECT ბრძანებას მხოლოდ TLS/SSL-ზე ბაზირებული HTTPS სერვისებით. რაც ძირითადად ხორციელდება CONNECT ბრძანების აკრძალვით ყველა პორტზე გარდა 443 პორტისა.

## HTTP Tunnel კლიენტები 
მოცემული მომენტისთის არის რამდენიმე უფასო/ღია კოდიანი და კომერციული HTTP Tunneling კლიენტი, რომლებიც სხვადასხვა პროგრამულ პროდუქტებს აძლევენ კომუნიკაციის საშუალებას შეზღუდული ქსელური გარემოცვიდან.

უფასო ან ღია კოდიანი HTTP Tunneling კლიენტები როგორც წესი შედგებიან ორი პროგრამისგან, ერთ-ერთი მადგანი არის შუამავალი სერვერი და მეორე Tunneling კლიენტი. მათ გასაშვებად აუცილებელია რომ მომხმარებელს ჰქონდეს საკუთარი სერვერი რომელზეც შესაძლებელი იქნება შუამავალი სერვერის გაშვება.

კომერციულ HTTP Tunneling კლიენტებს გვთავაზობენ კომპანიები რომლებიც თვითონ უზრუნველყოფენ შუამავალი სერვერის მუშაობას, სერვისის ფასი განისაზღვრება კლიენტ — სერვერ პროგრამებს შორის ინფორმაციის გაცვლის სიჩქარით.

### HTTP Tunnel კლიენტების გამოყენება 
* ინტერნეტით სარგებლობა და ფორუმებზე შეტყობინების დატოვება ანონიმურად, საკუთარი IP მისამართის დამალვით.
* პროგრამული უზრუნველყოფის გამოყენება (თამაშები/ჩათი/ბრაუზერები) შეზღუდული firewall-ების ან პროქსი სერვერების პირობებში.
* დაბლოკილ საიტებზე შესვლა.

## კლიენტების სია 
### ღია კოდი 
* desproxy (development discontinued)
* GNU httptunnel 
* jhttptunnel (java based) 

### კომერციული 
* PingFu
* HTTP-Tunnel Client 
* Socks2http 
* Your Freedom 
* Universal HTTP Tunnel 

### უფასო/სხვა 
* HTTPTunnel Genius

კატეგორია:კომპიუტერული პროგრამები
კატეგორია:ინტერნეტი