feat: close connection if no tunneling request is specified
All checks were successful
Docker Build and Push / build-and-push (push) Successful in 7m18s

This commit is contained in:
2025-10-20 12:28:52 +00:00
parent 659b2b82ec
commit e02b7ed937
7 changed files with 82 additions and 66 deletions

View File

@ -63,7 +63,7 @@ var allowedCors = make(map[string]bool)
var isAllowedAllCors = false
func init() {
corsList := utils.Getenv("cors_list")
corsList := utils.Getenv("CORS_LIST")
if corsList == "*" {
isAllowedAllCors = true
} else {
@ -86,11 +86,11 @@ func NewHTTPServer() error {
}
}
listener, err := net.Listen("tcp", ":80")
listener, err := net.Listen("tcp", fmt.Sprintf(":%s", utils.Getenv("HTTP_PORT")))
if err != nil {
return errors.New("Error listening: " + err.Error())
}
if utils.Getenv("tls_enabled") == "true" && utils.Getenv("tls_redirect") == "true" {
if utils.Getenv("TLS_ENABLED") == "true" && utils.Getenv("TLS_ENABLED") == "true" {
redirectTLS = true
}
go func() {
@ -129,7 +129,7 @@ func Handler(conn net.Conn) {
if redirectTLS {
conn.Write([]byte("HTTP/1.1 301 Moved Permanently\r\n" +
fmt.Sprintf("Location: https://%s.%s/\r\n", slug, utils.Getenv("domain")) +
fmt.Sprintf("Location: https://%s.%s/\r\n", slug, utils.Getenv("DOMAIN")) +
"Content-Length: 0\r\n" +
"Connection: close\r\n" +
"\r\n"))

View File

@ -16,7 +16,7 @@ import (
)
func NewHTTPSServer() error {
cert, err := tls.LoadX509KeyPair(utils.Getenv("cert_loc"), utils.Getenv("key_loc"))
cert, err := tls.LoadX509KeyPair(utils.Getenv("CERT_LOC"), utils.Getenv("KEY_LOC"))
if err != nil {
return err
}

View File

@ -2,11 +2,12 @@ package server
import (
"fmt"
"golang.org/x/crypto/ssh"
"log"
"net"
"net/http"
"tunnel_pls/utils"
"golang.org/x/crypto/ssh"
)
type Server struct {
@ -16,12 +17,12 @@ type Server struct {
}
func NewServer(config ssh.ServerConfig) *Server {
listener, err := net.Listen("tcp", fmt.Sprintf(":%s", utils.Getenv("port")))
listener, err := net.Listen("tcp", fmt.Sprintf(":%s", utils.Getenv("SSH_PORT")))
if err != nil {
log.Fatalf("failed to listen on port 2200: %v", err)
return nil
}
if utils.Getenv("tls_enabled") == "true" {
if utils.Getenv("TLS_ENABLED") == "true" {
go func() {
err := NewHTTPSServer()
if err != nil {