Added tcp forwarding for gitea
This commit is contained in:
@@ -14,6 +14,7 @@ require (
|
||||
require (
|
||||
github.com/dlclark/regexp2 v1.11.5-0.20240806004527-5bbbed8ea10b // indirect
|
||||
github.com/golang/snappy v0.0.4 // indirect
|
||||
github.com/inetaf/tcpproxy v0.0.0-20260515195445-c159a6051109 // indirect
|
||||
github.com/klauspost/compress v1.17.11 // indirect
|
||||
github.com/montanaflynn/stats v0.7.1 // indirect
|
||||
github.com/xdg-go/pbkdf2 v1.0.0 // indirect
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
github.com/CalebQ42/bbConvert v1.0.7 h1:dJh6S7lliotdQvcXrMbtBo4p8Afwe295/XvnKP0oj7E=
|
||||
github.com/CalebQ42/bbConvert v1.0.7/go.mod h1:UBFqtgZWSm9v/2Kl4NJDmgdSzEBZDkgON3QKoVOBC6Q=
|
||||
github.com/armon/go-proxyproto v0.0.0-20210323213023-7e956b284f0a/go.mod h1:QmP9hvJ91BbJmGVGSbutW19IC0Q9phDCLGaomwTJbgU=
|
||||
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
||||
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/dlclark/regexp2 v1.11.5-0.20240806004527-5bbbed8ea10b h1:AJKOdc+1fRSJ0/75Jty1npvxUUD0y7hQDg15LMAHhyU=
|
||||
@@ -13,6 +14,8 @@ github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeN
|
||||
github.com/google/uuid v1.2.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
|
||||
github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
|
||||
github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
|
||||
github.com/inetaf/tcpproxy v0.0.0-20260515195445-c159a6051109 h1:H3ztMPCBcyG60Ks0plTncU3Vs6jIrxhn3nEThpMEpo4=
|
||||
github.com/inetaf/tcpproxy v0.0.0-20260515195445-c159a6051109/go.mod h1:Di7LXRyUcnvAcLicFhtM9/MlZl/TNgRSDHORM2c6CMI=
|
||||
github.com/klauspost/compress v1.17.11 h1:In6xLpyWOi1+C7tXUUWv2ot1QvBjxevKAaI6IXrJmUc=
|
||||
github.com/klauspost/compress v1.17.11/go.mod h1:pMDklpSncoRMuLFrf1W9Ss9KT+0rH90U12bZKk7uwG0=
|
||||
github.com/lithammer/shortuuid/v3 v3.0.7 h1:trX0KTHy4Pbwo/6ia8fscyHoGA+mf1jWbPJVuvyJQQ8=
|
||||
|
||||
@@ -19,6 +19,7 @@ import (
|
||||
"github.com/CalebQ42/darkstorm-server/internal/blog"
|
||||
"github.com/CalebQ42/darkstorm-server/internal/cdr"
|
||||
"github.com/CalebQ42/darkstorm-server/internal/swassistant"
|
||||
"github.com/inetaf/tcpproxy"
|
||||
"go.mongodb.org/mongo-driver/mongo"
|
||||
"go.mongodb.org/mongo-driver/mongo/options"
|
||||
)
|
||||
@@ -48,10 +49,16 @@ func main() {
|
||||
}
|
||||
if !*testing {
|
||||
go func() {
|
||||
log.Println("error redirecting http traffice:",
|
||||
log.Println("error redirecting http traffic:",
|
||||
http.ListenAndServe(":80", http.RedirectHandler("https://darkstorm.tech", http.StatusPermanentRedirect)))
|
||||
}()
|
||||
}
|
||||
proxy, err := setupTCPForward()
|
||||
if err != nil {
|
||||
log.Println("error setting up tcp proxy:", err)
|
||||
} else {
|
||||
defer proxy.Close()
|
||||
}
|
||||
mux := http.NewServeMux()
|
||||
setupMongo(*mongoURL)
|
||||
setupBackend(mux)
|
||||
@@ -60,7 +67,6 @@ func main() {
|
||||
Addr: *addr,
|
||||
Handler: mux,
|
||||
}
|
||||
var err error
|
||||
if *testing {
|
||||
err = serv.ListenAndServe()
|
||||
} else {
|
||||
@@ -69,6 +75,13 @@ func main() {
|
||||
log.Println("webserver closed:", err)
|
||||
}
|
||||
|
||||
func setupTCPForward() (*tcpproxy.Proxy, error) {
|
||||
var proxy tcpproxy.Proxy
|
||||
proxy.AddRoute(":22", tcpproxy.To(":2222"))
|
||||
err := proxy.Start()
|
||||
return &proxy, err
|
||||
}
|
||||
|
||||
func setupMongo(uri string) {
|
||||
if !*testing {
|
||||
var err error
|
||||
|
||||
Reference in New Issue
Block a user