minimal docker image aprox 3mb
This commit is contained in:
@@ -1,28 +1,34 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"github.com/armon/go-socks5"
|
||||
"os"
|
||||
"fmt"
|
||||
"log"
|
||||
"os"
|
||||
|
||||
"github.com/armon/go-socks5"
|
||||
)
|
||||
|
||||
func main() {
|
||||
creds := socks5.StaticCredentials{
|
||||
os.Getenv("PROXY_USER"):os.Getenv("PROXY_PASSWORD"),
|
||||
}
|
||||
cator := socks5.UserPassAuthenticator{Credentials: creds}
|
||||
// Create a SOCKS5 server
|
||||
|
||||
conf := &socks5.Config{
|
||||
AuthMethods: []socks5.Authenticator{cator},
|
||||
Logger: log.New(os.Stdout, "", log.LstdFlags),
|
||||
}
|
||||
server, err := socks5.New(conf)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
Logger: log.New(os.Stdout, "", log.LstdFlags),
|
||||
}
|
||||
|
||||
// Create SOCKS5 proxy on localhost port 8000
|
||||
if err := server.ListenAndServe("tcp", "0.0.0.0:1080"); err != nil {
|
||||
panic(err)
|
||||
if os.Getenv("PROXY_USER")+os.Getenv("PROXY_PASSWORD") != "" {
|
||||
creds := socks5.StaticCredentials{
|
||||
os.Getenv("PROXY_USER"): os.Getenv("PROXY_PASSWORD"),
|
||||
}
|
||||
cator := socks5.UserPassAuthenticator{Credentials: creds}
|
||||
conf.AuthMethods = []socks5.Authenticator{cator}
|
||||
}
|
||||
}
|
||||
|
||||
server, err := socks5.New(conf)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
|
||||
fmt.Println("Start listening ...")
|
||||
if err := server.ListenAndServe("tcp", ":1080"); err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user