Skip to content

karelbilek/go-socks5

This branch is 1 commit ahead of armon/go-socks5:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

author
Karel Bilek
Apr 19, 2021
9a32788 · Apr 19, 2021

History

51 Commits
Jan 22, 2014
Jan 23, 2014
Jan 22, 2014
Jun 27, 2014
Jan 11, 2016
Jan 11, 2016
Jan 23, 2014
Jan 23, 2014
Apr 19, 2021
Apr 19, 2021
Sep 2, 2016
Jan 11, 2016
Mar 8, 2016
Mar 8, 2016
Mar 8, 2016
Mar 8, 2016
Mar 8, 2016
Jan 11, 2016

Repository files navigation

go-socks5 Build Status

Provides the socks5 package that implements a SOCKS5 server. SOCKS (Secure Sockets) is used to route traffic between a client and server through an intermediate proxy layer. This can be used to bypass firewalls or NATs.

Feature

The package has the following features:

  • "No Auth" mode
  • User/Password authentication
  • Support for the CONNECT command
  • Rules to do granular filtering of commands
  • Custom DNS resolution
  • Unit tests

TODO

The package still needs the following:

  • Support for the BIND command
  • Support for the ASSOCIATE command

Example

Below is a simple example of usage

// Create a SOCKS5 server
conf := &socks5.Config{}
server, err := socks5.New(conf)
if err != nil {
  panic(err)
}

// Create SOCKS5 proxy on localhost port 8000
if err := server.ListenAndServe("tcp", "127.0.0.1:8000"); err != nil {
  panic(err)
}

About

SOCKS5 server in Golang

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 100.0%