[{"data":1,"prerenderedAt":367},["ShallowReactive",2],{"project-8923092":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":10,"maker":11,"posted_at":12,"year":13,"points":14,"comments":15,"rank_in_year":16,"shown_in_year":17,"top":18,"tier":19,"category":20,"subcategory":21,"format":22,"keywords":23,"reception":29,"sentiment":30,"stance_mix":31,"scored_comments":36,"aspects":37,"strip":44,"post_text":45,"what":46,"said":73,"maker_in_thread":147,"shape":149,"grid":154,"attempts":329,"same_week":330,"maker_shows":43,"maker_hidden":359,"reader_version":360,"card":361},"8923092","switcher","Run SSH and HTTP(S) on the same port","title","Show HN: Run SSH and HTTP(S) on the same port","https:\u002F\u002Fgithub.com\u002Fjamescun\u002Fswitcher?readme","github.com","jamescun",1421849214,2015,165,65,118,2565,5,"notable","infrastructure","protocol multiplexer","cli",[24,25,26,27,28],"ssh","https","port multiplexing","go","reverse proxy","curious",-0.097,{"positive":32,"neutral":33,"mixed":34,"critical":35},4,13,3,6,26,{"idea":38,"execution":39,"performance":42},{"positive":32,"critical":34},{"positive":40,"critical":41},0,1,{"positive":40,"critical":43},2,[34,40,40,40,40,40,40,41,40,18,40,34,40,40,40,40,40,41,34,18,40,34,40,34,40,40,40,34,34,18,41,34,40,40,40,34,34,40,41,41],null,{"problem":47,"audience":45,"pricing":45,"motivation":45,"time_to_build":45,"stack":59,"openness":71,"stage":72,"team_size":72},{"value":48,"source":49,"evidence":50},"Serving SSH and HTTP(S) on one port so SSH works through firewalls that only allow web ports","inferred",[51,55],{"id":52,"by":53,"text":54},"8925751","jzila","From the repo the project creator linked in the README (https:\u002F\u002Fgithub.com\u002Fyrutschle\u002Fsslh): \"A typical use case is to allow serving several services on port 443 (e.g. to connect…",{"id":56,"by":57,"text":58},"8926043","geofft","MIT's SSH server pool (athena.dialup.mit.edu) listens on port 443 for both web-based login using a JS terminal and for actual SSH, using sslh as the multiplexer. SSH on port 443…",[60],{"value":61,"source":49,"evidence":62},"Go",[63,67],{"id":64,"by":65,"text":66},"8925967","AceJohnny2","``` > apt-cache search ssh http [...] sslh - ssl\u002Fssh multiplexer ``` http:\u002F\u002Fwww.rutschle.net\u002Ftech\u002Fsslh.shtml I mean, it's cool that you got the exercise of implementing this in…",{"id":68,"by":69,"text":70},"8926912","jsd1982","Nice! I wrote my own version of this in Go about 7 months ago. It's running in production and has been very reliable. You can find it here on my github account:…","open_source","unknown",{"praise":74,"objections":84,"requests":100,"questions":115,"alternatives":123},[75],{"value":76,"source":77,"evidence":78},"Useful for getting SSH through restrictive firewalls","commenter",[79,80],{"id":56,"by":57,"text":58},{"id":81,"by":82,"text":83},"8927517","h43k3r","Can this help me to ssh to my servers on DO. I am behind my institute squid proxy which is a HTTP proxy. All the ports are blocked, all connections has to be through proxy. For…",[85,93],{"value":86,"source":77,"evidence":87},"Existing tools like sslh already do this",[88,89],{"id":64,"by":65,"text":66},{"id":90,"by":91,"text":92},"8928979","blueskin_","It's a nice idea, but far from the only implementation. sslh is nice as it doesn't need go, and is packaged for most distros: http:\u002F\u002Fwww.rutschle.net\u002Ftech\u002Fsslh.shtml",{"value":94,"source":77,"evidence":95},"Unclear practical advantage over VPN for internal access",[96],{"id":97,"by":98,"text":99},"8927506","yeukhon","I still don't get the practical advantage of this. As someone said below he\u002Fshe wrote one and running similar setup in production. Just why? Typicall you access internal stuff…",[101,108],{"value":102,"source":77,"evidence":103},"Use splice() for better performance",[104],{"id":105,"by":106,"text":107},"8928206","est","it could perform better by using splice() kernel calls.",{"value":109,"source":77,"evidence":110},"Set TCP nodelay",[111],{"id":112,"by":113,"text":114},"8927218","mkj","It doesn't appear to set tcp nodelay, as with most of these forwarders. https:\u002F\u002Fgithub.com\u002Fstealth\u002Fsshttp does it at the kernel level, much better.",[116],{"value":117,"source":77,"evidence":118},"How nmap version detection would report the port",[119],{"id":120,"by":121,"text":122},"8928322","ponytech","Anyone knows how nmap -sV (Version detection) would report the open port? HTTP, SSH or neither ?",[124,132,139,143],{"value":125,"source":77,"evidence":126},"sslh",[127,128],{"id":64,"by":65,"text":66},{"id":129,"by":130,"text":131},"8925903","fluidcruft","sslh [1] (which is packaged and included in may linux and BSD distributions) has grown to support HTTP, SSL, SSH, OpenVPN, tinc, XMPP from the same port. It claims it can be…",{"value":133,"source":77,"evidence":134},"haproxy",[135],{"id":136,"by":137,"text":138},"8925938","slyall","You can also do this with haproxy. I ran it for a while (I think it was for git). Here is a page about how to do it: https:\u002F\u002Fdgl.cx\u002F2010\u002F01\u002Fhaproxy-ssh-and-ssl-on-same-port ```…",{"value":140,"source":77,"evidence":141},"sslmux",[142],{"id":68,"by":69,"text":70},{"value":144,"source":77,"evidence":145},"sshttp",[146],{"id":112,"by":113,"text":114},{"comments":40,"answered":40,"key":148},[],{"commenters":150,"max_depth":151,"maker_replies":40,"first_comment_mins":152,"lifespan_hours":153},47,8,414,54,[155,157,161,164,167,170,172,174,176,178,181,184,186,190,193,196,200,203,205,208,211,214,217,219,221,224,226,228,231,233,236,237,240,243,245,249,252,254,257,259,261,263,266,268,272,274,278,279,280,283,285,289,292,295,297,299,303,306,308,312,314,317,319,323,326],[136,40,34,156,137,40],"project\u002Fneutral\u002Fidea",[158,40,40,159,160,40],"8926534","other\u002Fneutral\u002Fnone","shanemhansen",[162,40,40,159,163,40],"8927103","IgorPartola",[165,40,40,159,166,40],"8928136","jimktrains2",[168,40,40,159,169,40],"8928328","pricechild",[171,40,40,159,163,40],"8929535",[173,40,40,159,166,40],"8929941",[175,40,40,159,163,40],"8931760",[177,40,40,159,166,40],"8935615",[179,40,40,159,180,40],"8928249","sandGorgon",[182,40,40,159,183,40],"8928416","senko",[64,41,41,185,65,40],"project\u002Fcritical\u002Fidea",[187,41,40,188,189,40],"8928811","commenter\u002Fneutral\u002Fnone","zeendo",[191,41,40,188,192,40],"8929007","Hello71",[194,41,34,156,195,40],"8929251","bmn_",[197,43,18,198,199,40],"8928342","project\u002Fpositive\u002Fidea","leni536",[201,43,40,159,202,40],"8929725","userbinator",[68,34,34,204,69,40],"project\u002Fmixed\u002Fexecution",[206,32,40,159,207,40],"8925974","hardwaresofton",[209,32,40,159,210,40],"8925998","ams6110",[212,32,40,159,213,40],"8926530","vhost-",[215,32,40,159,216,40],"8926806","stock_toaster",[218,32,40,159,65,40],"8926012",[220,32,40,159,207,40],"8926290",[222,32,40,159,223,40],"8926363","vertex-four",[225,32,40,159,223,40],"8926546",[227,32,40,159,163,40],"8927113",[229,32,40,159,230,40],"8929245","adnanh",[112,18,41,232,113,40],"project\u002Fcritical\u002Fperformance",[234,35,34,156,235,40],"8925747","petercooper",[129,35,40,159,130,40],[238,35,18,198,239,40],"8926320","tombrossman",[241,35,40,159,242,40],"8926658","iancarroll",[244,35,40,159,239,40],"8928032",[246,247,34,156,248,40],"8927101",7,"antoaravinth",[250,247,40,159,251,40],"8927282","thedufer",[253,247,40,159,248,40],"8928275",[255,247,34,156,256,40],"8927363","dfox",[258,247,40,188,248,40],"8928279",[260,247,40,188,202,40],"8929149",[262,247,40,188,248,40],"8929849",[264,247,40,188,265,40],"8932578","nickcano",[267,247,40,188,248,40],"8933508",[269,151,34,270,271,40],"8926091","project\u002Fmixed\u002Fidea","alexchamberlain",[81,273,34,156,82,40],9,[275,276,34,156,277,40],"8925738",10,"jasonlfunk",[52,276,34,156,53,40],[56,276,18,198,57,40],[281,276,34,156,282,40],"8926328","RubyPinch",[97,284,41,185,98,40],11,[286,287,40,159,288,40],"8926752",12,"gbuk2013",[290,33,34,156,291,40],"8925846","rustyconover",[293,33,40,159,294,40],"8925976","falcolas",[296,33,40,159,160,40],"8926508",[298,33,40,188,294,40],"8929113",[300,301,40,159,302,40],"8926044",14,"spullara",[120,304,34,305,121,40],15,"project\u002Fneutral\u002Fnone",[307,304,34,305,230,40],"8929288",[309,310,18,198,311,40],"8926013",16,"ZeWaren",[90,313,41,185,91,40],17,[315,313,40,188,316,40],"8929047","nodata",[105,318,41,232,106,40],18,[320,321,34,204,322,40],"8926507",19,"Pinn2",[324,321,34,305,325,40],"8927649","sethammons",[327,321,41,328,322,40],"8937088","project\u002Fcritical\u002Fexecution",[],[331,335,340,344,349,354],{"id":332,"name":333,"points":334,"category":20},"8907801","dogmedicationdb",252,{"id":336,"name":337,"points":338,"category":339},"8893593","duoco.de",155,"languages",{"id":341,"name":342,"points":343,"category":339},"8911217","Silicon",140,{"id":345,"name":346,"points":347,"category":348},"8893238","Timeline.com",123,"productivity",{"id":350,"name":351,"points":352,"category":353},"8918463","Griddle",122,"dev_tools",{"id":355,"name":356,"points":357,"category":358},"8923824","tld-list.com",101,"web_saas",false,"v2",{"id":362,"name":5,"line":6,"ai":359,"cat":20,"year":13,"points":14,"comments":15,"rec":29,"s":363,"top":18,"kw":364,"maker":11,"domain":10,"tier":19,"attempts":40,"strip":365,"url":9,"mix":366,"praise":76,"objection":86,"sub":21},8923092,-0.1,[24,25,26,27,28],"3000000105030000013503030003351300033011",[32,33,34,35],1794036527534]