package main import ( "log" "os" "tunnel_pls/server" "tunnel_pls/utils" "golang.org/x/crypto/ssh" ) func main() { sshConfig := &ssh.ServerConfig{ NoClientAuth: true, ServerVersion: "SSH-2.0-TunnlPls-1.0", PasswordCallback: func(conn ssh.ConnMetadata, password []byte) (*ssh.Permissions, error) { return nil, nil }, } log.SetOutput(os.Stdout) log.SetFlags(log.LstdFlags | log.Lshortfile) privateBytes, err := os.ReadFile(utils.Getenv("SSH_PRIVATE_KEY")) if err != nil { log.Fatalf("Failed to load private key : %s", err.Error()) } private, err := ssh.ParsePrivateKey(privateBytes) if err != nil { log.Fatal("Failed to parse private key") } sshConfig.AddHostKey(private) app := server.NewServer(*sshConfig) app.Start() }