update: use raw TCP for HTTP server
This commit is contained in:
@ -1,14 +1,11 @@
|
||||
package server
|
||||
|
||||
import (
|
||||
"crypto/tls"
|
||||
"fmt"
|
||||
"golang.org/x/crypto/ssh"
|
||||
"log"
|
||||
"net"
|
||||
"net/http"
|
||||
httpServer "tunnel_pls/http"
|
||||
"tunnel_pls/utils"
|
||||
)
|
||||
|
||||
type Server struct {
|
||||
@ -23,16 +20,12 @@ func NewServer(config ssh.ServerConfig) *Server {
|
||||
log.Fatalf("failed to listen on port 2200: %v", err)
|
||||
return nil
|
||||
}
|
||||
go httpServer.Listen()
|
||||
if utils.Getenv("tls_enabled") == "true" {
|
||||
cert, err := tls.LoadX509KeyPair(utils.Getenv("cert_loc"), utils.Getenv("key_loc"))
|
||||
go func() {
|
||||
err := NewHTTPServer()
|
||||
if err != nil {
|
||||
log.Fatal("Failed to load key pair:", err)
|
||||
log.Fatalf("failed to start http server: %v", err)
|
||||
}
|
||||
|
||||
tlsConfig := &tls.Config{Certificates: []tls.Certificate{cert}, NextProtos: []string{"h2"}}
|
||||
go httpServer.ListenTLS(tlsConfig)
|
||||
}
|
||||
}()
|
||||
return &Server{
|
||||
Conn: &listener,
|
||||
Config: &config,
|
||||
|
||||
Reference in New Issue
Block a user