neo 11달전 | parent | favorite | on: GN⁺: HTTPS를 통한 SSH 연결(trofi.github.io)
Hacker News 의견
  • 네덜란드의 인터넷 제공업체 XS4ALL은 과거에 SSH 접속을 포트 80을 통해 제공했음. 이 기능은 호텔 와이파이 등에서 다른 포트가 차단되었을 때 유용하게 사용됨.
  • HTTPS의 보편적인 존재는 매우 제한적인 중간 장치를 통해 데이터를 전송할 수 있게 해줌. 이것이 SSL VPN이라 불리는 독점적인 VPN 프로토콜들이 HTTPS를 통해 터널을 시작하는 모드를 구현하는 주된 이유임.
  • SSH를 포트 80이나 443에 두고 다른 호스트를 통해 ProxyJump를 사용하거나, SOCKS를 통해 덜 제한된 인터넷 연결을 얻는 방법도 있음. DNS를 TLS를 통해 SSH 연결로 포워딩하는 것도 가능함.
  • Adaptive라는 회사에서는 HTTP3를 통해 SSH 및 다양한 프로토콜을 제공하는 데이터 보안 인프라를 구축 중임. 이를 통해 사용자는 외부 포트를 통해 데이터베이스, 서버 및 기타 리소스에 연결할 수 있음.
  • 실제로 대부분의 방화벽은 단순히 openssh가 포트 443에서 수신하는 것만으로도 우회할 수 있음.
  • CONNECT 메서드를 전달 프록시가 아닌 역방향 프록시처럼 생각하는 것은 흥미로운 점임. 하지만, CONNECT만으로는 충분하지 않아 웹소켓을 통해 SSH를 사용하여 기업 프록시를 우회함.
  • "새로운" 해결책에 대한 게시물의 빈번함이 불편함. 이러한 아이디어들은 새롭지 않으며, 많은 사람들이 이미 알고 있는 내용임.
  • SSH와 유사한 신원 관리 시스템이 브라우저에 내장되어 있으면 좋겠음. hobo라는 공개 키 HTTP 인증 제안에 대해 처음 읽었을 때 흥분했지만, 서버 구현이 없고 클라이언트(브라우저) 구현도 존재하지 않음을 알게 됨.
  • 약 20년 전에 기업 방화벽을 통과하기 위해 corkscrew이라는 도구를 사용했음. 이 도구에 대한 독립적인 구현과 설명이 인상적임.
  • HTTP2를 통한 터널링은 훌륭한 선택임. HTTP2 위에 구축된 RPC 프로토콜인 gRPC가 있음. HTTP2는 TCP 연결을 이용해 여러 데이터 구조를 동시에 전송하고 수신하는 데 탁월함. 그러나 HTTP3를 사용할 필요는 없을 수도 있음, QUIC 자체가 이미 멀티플렉싱을 제공하기 때문임.