Difference between revisions of "Ssl tunnel"

From OnnoWiki
Jump to navigation Jump to search
 
Line 1: Line 1:
 +
Misalnya anda ingin mengakses sebuah server / port yang di batasi / di halangi oleh aplikasi di komputer anda atau di jaringan anda. Padahal anda terhubung ke jaringan. Pertanyaannya,
  
 +
* Bagaimana mengatasi batasan ini?
 +
* Mungkinkah kita melakukan sambungan secara aman?
  
You want to be able to access some restricted destinations and/or ports with some applications from your computer but you are on a restricted network (corporate) - Even using a Torrent client.
+
SSL Tunnel (stunnel) memungkinkan kita untuk mengatasi hal ini
  
How to overcome this limitation?
 
  
What if backend service is secure one?
+
==Apakah SSL Tunneling?==
 
 
We can use SSL tunneling for overcome above issue.
 
 
 
 
 
==What is the SSL Tunneling?==
 
  
 
[[File:Mainimage.png|center|600px|thumb]]
 
[[File:Mainimage.png|center|600px|thumb]]
  
SSL tunneling is when an Internal client application requests a web object using HTTPS on port 8080 through the proxy server.
+
SSL tunneling dilakukan saat aplikasi client Internal request object web menggunakan HTTPS pada port 8080 melalui server proxy.  
 
 
An example of this is when you are using online shopping. The internet connection to the target relevant e-commerce website  is tunneled to by you through proxy server. The key word here is through. The client communicates with the target web server directly after the initial connection has been established by proxy server, by means of communication within the SSL tunnel that has been created after SSL negotiation has taken place.
 
  
 +
Contoh - ketika kita melalui shopping online. Sambungan Internet ke situs e-commerce yang dituju di tunnel oleh kita melalui proxy server. Kata kunci disini adalah "melalui". Client berkomunikasi ke web server target secara langsung setelah sambungan awal berhasil di lakukan oleh proxy server, jadi komunikasi dilakukan dalam SSL tunnel setelah negosiasi SSL dilakukan.
  
==How it's Working?==
+
==Bagaimana cara kerjanya?==
  
 
[[File:Image2.png|center|600px|thumb]]
 
[[File:Image2.png|center|600px|thumb]]
  
The client makes a tunneling request: CONNECT server-host-name:port HTTP/1.1 (or HTTP/1.0). The port number is optional and is usually 443. The client application will automatically send the CONNECT request to the proxy server first for every HTTPS request if the forward proxy is configured in the browser. 
+
Client melakukan tunneling request:
  
CONNECT www.example.com:443 HTTP/1.1
+
CONNECT server-host-name:port HTTP/1.1 (or HTTP/1.0).
 +
CONNECT www.example.com:443 HTTP/1.1
  
 
Host: www.example.com:443
 
Host: www.example.com:443
  
 +
Nomor port optional dan biasanya 443. Aplikasi client akan secara automatis mengirimkan CONNECT request ke proxy server terlebih dahulu untuk setiap HTTPS request jika forward proxy di konfigurasi di browser. 
 +
 +
 +
==Langkah Detail==
  
* RFC 2616 treats CONNECT as a way to establish a simple tunnel. There is more about it in RFC 2817, although the rest of RFC 2817 (upgrades to TLS within a non-proxy HTTP connection) is rarely used.
+
* RFC 2616 memproses CONNECT sebagai cara untuk membuat simple tunnel. Ada lebih banyak tentang hal itu di RFC 2817, meskipun sebagian besar yang dibahas di RFC 2817 (upgrade ke TLS untuk sambungan non-proxy HTTP) jarang digunakan.
* The proxy accepts the connection on its port 8080, receives the request, and connects to the destination server on the port requested by the client.
+
* proxy menerima sambungan di port 8080, menerima request, dan connect ke server tujuan di port yang diminta oleh client.
* The proxy replies to the client that a connection is established with the 200 OK response.
+
* proxy membalas client bahwa connection established dengan respons 200 OK .
* After this, the connection between the client and the proxy server is kept open. The proxy server relays everything on the client-proxy connection to and from proxy-backend. The client upgrades its active (proxy-backend) connection to an SSL/TLS connection, by initiating a TLS handshake on that channel.Since everything is now relayed to the backend server, it's as if the TLS exchange was done directly withwww.example.com:443.The proxy server doesn't play any role in the handshake. The TLS handshake effectively happens directly between the client and the backend server.
+
* Setelah ini, connection antara client dan proxy server tetap dibuka. proxy server me-relay semua client-proxy connection ke dan dari proxy-backend. client upgrade (proxy-backend) connection yang aktif ke SSL/TLS connection, dengan menginisiasi TLS handshake di channel.Karea sekarang semua di relay ke backend server, itu akan seperti TLS exchange dilakukan secara langsung dengan www.example.com:443. proxy server tidak memainkan peran sama sekali di handshake. TLS handshake terjadi secara effektif antara client dan backend server.
* After the secure handshake is completed, the proxy sends and receives encrypted data to be decrypted at the client or at the destination server.
+
* Setelah secure handshake selesai, proxy mengirim dan menerima data yang di encrypt untuk bisa di decrypt oleh client atau di server tujuan.
* If the client or the destination server requests a closure on either port, the proxy server closes both connections (ports 443 and 8080) and resumes its normal activity.
+
* Jika client atau server tujuan request untuk menutup port-nya, maka proxy server akan menutup ke dua sambungan (port 443 dan 8080) dan kembali ke aktifitas normalnya.
  
 
==Pranala Menarik==
 
==Pranala Menarik==
  
 
* [[SSL Tunnel: Ubuntu Setup]]
 
* [[SSL Tunnel: Ubuntu Setup]]

Latest revision as of 06:45, 1 December 2018

Misalnya anda ingin mengakses sebuah server / port yang di batasi / di halangi oleh aplikasi di komputer anda atau di jaringan anda. Padahal anda terhubung ke jaringan. Pertanyaannya,

  • Bagaimana mengatasi batasan ini?
  • Mungkinkah kita melakukan sambungan secara aman?

SSL Tunnel (stunnel) memungkinkan kita untuk mengatasi hal ini


Apakah SSL Tunneling?

Mainimage.png

SSL tunneling dilakukan saat aplikasi client Internal request object web menggunakan HTTPS pada port 8080 melalui server proxy.

Contoh - ketika kita melalui shopping online. Sambungan Internet ke situs e-commerce yang dituju di tunnel oleh kita melalui proxy server. Kata kunci disini adalah "melalui". Client berkomunikasi ke web server target secara langsung setelah sambungan awal berhasil di lakukan oleh proxy server, jadi komunikasi dilakukan dalam SSL tunnel setelah negosiasi SSL dilakukan.

Bagaimana cara kerjanya?

Image2.png

Client melakukan tunneling request:

CONNECT server-host-name:port HTTP/1.1 (or HTTP/1.0).
CONNECT www.example.com:443 HTTP/1.1

Host: www.example.com:443

Nomor port optional dan biasanya 443. Aplikasi client akan secara automatis mengirimkan CONNECT request ke proxy server terlebih dahulu untuk setiap HTTPS request jika forward proxy di konfigurasi di browser.


Langkah Detail

  • RFC 2616 memproses CONNECT sebagai cara untuk membuat simple tunnel. Ada lebih banyak tentang hal itu di RFC 2817, meskipun sebagian besar yang dibahas di RFC 2817 (upgrade ke TLS untuk sambungan non-proxy HTTP) jarang digunakan.
  • proxy menerima sambungan di port 8080, menerima request, dan connect ke server tujuan di port yang diminta oleh client.
  • proxy membalas client bahwa connection established dengan respons 200 OK .
  • Setelah ini, connection antara client dan proxy server tetap dibuka. proxy server me-relay semua client-proxy connection ke dan dari proxy-backend. client upgrade (proxy-backend) connection yang aktif ke SSL/TLS connection, dengan menginisiasi TLS handshake di channel.Karea sekarang semua di relay ke backend server, itu akan seperti TLS exchange dilakukan secara langsung dengan www.example.com:443. proxy server tidak memainkan peran sama sekali di handshake. TLS handshake terjadi secara effektif antara client dan backend server.
  • Setelah secure handshake selesai, proxy mengirim dan menerima data yang di encrypt untuk bisa di decrypt oleh client atau di server tujuan.
  • Jika client atau server tujuan request untuk menutup port-nya, maka proxy server akan menutup ke dua sambungan (port 443 dan 8080) dan kembali ke aktifitas normalnya.

Pranala Menarik