SSL/TLS Termination, TLS Forward Proxy Pros and Cons

แชร์
ฝัง
  • เผยแพร่เมื่อ 31 พ.ค. 2024
  • 💻 More software engineering videos • Software Engineering b...
    Is a proxy that terminates the TLS session and send unencrypted traffic to the main server. This offloads complex crypto TLS from the main server to this proxy so the main server can do what it does best. Serve..
    In this video we will discuss the pros and cons of TLS Termination proxies
    - TLS 1.2
    - TLS Termination Proxy
    - TLS Forward Proxy
    - Pros and Cons
    - Pros
    - Off load crypto to proxy instead of main servers (no longer a problem)
    - Have TLS session close to the client
    - Decrypt data so HTTP accelerators like Varnish can function correctly.
    - Allow intrusion detection system to analyse traffic
    - Load balancers can make better decisions on the data (Layer 7)
    - Service Mesh in microservices architecture
    - Cons
    - If proxy got compromised attacker can gains access to all data.
    - Limited by the maximum number of connections on the proxy.
    jump codes
    2:00 TLS 1.2
    4:00 TLS Termination Proxy
    6:00 TLS Forward Proxy
    9:00 Pros and Cons
    cards
    2:20 TLS • Transport Layer Securi...
    3:49 Encryption • Symmetrical vs asymmet...
    12:50 Denial of Service • Denial of Service Atta...
    15:20 Layer 4 vs Layer 7 Load Balancing • Load balancing in Laye...
    Support me on PayPal bit.ly/33ENps4
    Become a patron / hnasr
    Stay Awesome!
    Hussein
  • วิทยาศาสตร์และเทคโนโลยี

ความคิดเห็น • 37

  • @hnasr
    @hnasr  4 ปีที่แล้ว +8

    TLS Termination is a critical feature of any layer 7 proxy. Here are some Pros & Cons
    🖌 Offloads Crypto from backend
    🖌 Caching (eg. Varnish)
    🖌 Intrusion detection system
    🖌 Load Balancing and Service Mesh
    🖍 Limited by the Max Conn. of the Proxy
    🖍 Dangerous when compromised

  • @Cdswjp
    @Cdswjp 3 ปีที่แล้ว +6

    thanks for not having a boring introduction in your video & getting straight to the point

  • @learnityourself
    @learnityourself 4 ปีที่แล้ว +7

    Thanks, Hussein this is one of the best video on TLS termination on the web.

  • @duketekdeveloper
    @duketekdeveloper 4 ปีที่แล้ว +1

    Really good stuff man. Very clear and straight forward

  • @brette
    @brette 4 ปีที่แล้ว +3

    The most clear explanation I have seen.

  • @geocmastr
    @geocmastr 4 ปีที่แล้ว +2

    One con I can think of right now is that special services ( e.g. downloading patch/upgrade packages) for your servers do not work well if you have a proxy in the middle from a different vendor.
    Kudos for this excellent explanation!

    • @hnasr
      @hnasr  4 ปีที่แล้ว

      Jorge Orozco exactly! that is a perfect example of a layer 7 proxy having to “know” the protocol being proxied. A layer 4 proxy will blindly work because it doesn’t terminate the connection it merely streams it back to the backend.
      Thanks Jorge!

  • @tharunrocky14
    @tharunrocky14 3 ปีที่แล้ว +2

    Thank you. All of your videos are helpful. You're awesome! Please keep going!

    • @hnasr
      @hnasr  3 ปีที่แล้ว +1

      I am glad it is my goal is to help with what i know 😊

  • @n.w.aicecube5713
    @n.w.aicecube5713 4 ปีที่แล้ว +1

    clear explain and points about the subject. Thanks Hussein

  • @FordExplorer-rm6ew
    @FordExplorer-rm6ew 4 ปีที่แล้ว +2

    Thank you this is actually useful.
    Vs what alot of people do, which is usually just a money grift.

  • @user-th6nh5ed6k
    @user-th6nh5ed6k 5 หลายเดือนก่อน

    What measures are in place to safeguard confidential data of the end user using a connection through a proxy, such as authentication and personal data?

  • @hashcoeur
    @hashcoeur 10 หลายเดือนก่อน

    thanks Hussein, you have taught me a lot. I also did your courses.

  • @abdelrhmanahmed1378
    @abdelrhmanahmed1378 ปีที่แล้ว

    for load Balancing do we really need tls termination , the header is not encrypted, only the content so i can look at the header and see what i want to see right ?

  • @anas021991
    @anas021991 ปีที่แล้ว

    Hello Hussein thank you for the content you have been posting. Would it be possible if you can make a video on HAR captures and Fiddler with some example along with core concept.

  • @thannasip8001
    @thannasip8001 3 ปีที่แล้ว

    Hi bro,is it possible to terminate ssl at zuul gateway? If not any suggestion?

  • @sunny-14689
    @sunny-14689 ปีที่แล้ว

    Does the SSL termination happen at API Gateway i.e is proxy same as API Gateway

  • @dearvivekkumar
    @dearvivekkumar 3 ปีที่แล้ว

    Hi
    I am confused about the internal how reverse proxy, inbound request, and outbound request work.
    I have an appliance server sitting behind Nginx reverser proxy (http2 enabled). So all the API made to the appliance server will go through the nginx. Here Nginx will do the SSL/TLS termination etc.
    Till here I am able to understand and visualize what is going on for all the incoming requests to my server.
    Now when the application server will make a request (outbound), can we tunnel it through Nginx?

    • @chengdongliao9875
      @chengdongliao9875 3 ปีที่แล้ว

      not a nginx user, but I guess you can tailor the nginx as a forward proxy for your application server with tunnel enabled for https traffic...

  • @dangaines405
    @dangaines405 2 ปีที่แล้ว

    Week done!

  • @adrian-g
    @adrian-g 4 ปีที่แล้ว +2

    Good stuff!

  • @piratevv
    @piratevv 4 ปีที่แล้ว +1

    Fantastic

  • @chengdongliao9875
    @chengdongliao9875 3 ปีที่แล้ว

    A little bit confusing, I previously thought TLS forward proxy is forward proxy + Tunnel for HTTPs, the client still TCP/TLS handshakes with targert server via tunnel. What is the name of this forward proxy, or call it HTTPs forward porxy?

    • @MrAlazawi
      @MrAlazawi ปีที่แล้ว

      with the presence of a forward proxy the client does not handshake with the target server unless you make an exception for that specific communication, the client will always talk only to the proxy, the proxy see the traffic from client in clear text then will start tls handshake with the targeted server and asks for data and then will get it sees it in clear text and retransmit it to client after encrypting it.

  • @N1NJAKIDD
    @N1NJAKIDD 4 ปีที่แล้ว +1

    Hi great vid. What if you use a proxy to do ssl termination on the actual webserver, so all the data is passed internally. I know HAProxy allows you to do this

    • @hnasr
      @hnasr  4 ปีที่แล้ว

      That is also a good idea. Only problem I see with this scaling. You will have to scale both the web server and the tls termination which is something you won’t necessarily want to do... this also will force you to add another layer of load balancer on front probably a layer 4 or keepalived kind of configuration

  • @-haris
    @-haris 4 ปีที่แล้ว

    TLS Forward Proxy
    is this what cloudflare does?
    as cloudflare cannot decrypt data so it adds its own SSL for use between the client and cloudflare , and then uses the previous ssl certificate between cloudflare and the origin server?

    • @hnasr
      @hnasr  4 ปีที่แล้ว +2

      It depends. Are you physically specifying Cloudflare as an HTTPS proxy on your machine? If yes then yes they terminate TLS and make the request in your behalf and cache and do all those pretty stuff. But they can also in this case see the content which is something you might not want.
      If you are not using an HTTPS proxy, then you are governed by the rule of the destination server. “end to end encrypted “ cloudflare can’t see the content
      That being said, if you hosted your website on Cloudflare than they can cache your content on edge servers and yes edge servers that are closer to you must be TLS terminator s by design
      But if your website is hosted on godaddy then they can’t do much about it. They don’t see any content even if you used Cloudflare as DNS
      Hope that helps 😊

  • @geomagazine_khalid
    @geomagazine_khalid 4 ปีที่แล้ว

    Hi. Can you help me to create DLL file using Visual Studio? I have already a decompiled code from a DLL and has updated it in a txt file.

  • @raghuvallikkat3384
    @raghuvallikkat3384 3 ปีที่แล้ว

    can you please cover DoS and how to handle that DoS attack?

    • @hnasr
      @hnasr  3 ปีที่แล้ว +1

      th-cam.com/video/4I7tPW8of2g/w-d-xo.html

    • @raghuvallikkat3384
      @raghuvallikkat3384 3 ปีที่แล้ว

      @@hnasr Thanks. One piece is missing is how do we handle such attacks in server side?

  • @cabletvandinternetworldser5409
    @cabletvandinternetworldser5409 4 ปีที่แล้ว +1

    Do some new videos CGi

  • @bountyproofs
    @bountyproofs หลายเดือนก่อน

    The best name ever HUSSEIN i hope you understand

  • @husseintheprofortniteplaye4030
    @husseintheprofortniteplaye4030 4 ปีที่แล้ว

    He hass the same name as me but he has 2 s in naser

  • @funkzsnoopy
    @funkzsnoopy 25 วันที่ผ่านมา

    You repeat or get stuck with the point alot. But thanks for the tutorial.