Skip to content

rofl0r/rocksocks5

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

minimalistic socks5 server.

supports no-auth and username auth.

supports CONNECT method. no bind and UDP atm.

uses only ~150 kb stack memory for 32 possible clients and 1 page of heap memory for getaddrinfo
(however dns resolution can be configured to use my firedns fork, which allocates a single stack
buffer, or to do no DNS resolution at all (only ipv4))

select() based using asynchronous sockets.

supports maximum 510 clients. ((FD_SETSIZE - 3) / 2)

installation:

cd /tmp
mkdir socksserver-0000
cd socksserver-0000/
git clone https://github.com/rofl0r/rocksocks5 socksserver
git clone https://github.com/rofl0r/libulz lib
git clone https://github.com/rofl0r/rocksock
git clone -b custom https://github.com/rofl0r/firedns firedns
git clone https://github.com/rofl0r/rcb2
export PATH=$PATH:/tmp/socksserver-0000/rcb2
ln -s /tmp/socksserver-0000/rcb2/rcb2.py /tmp/socksserver-0000/rcb2/rcb2
cd socksserver
cp dist/config.mak .

#your favorite editor here
nano config.mak

# add your prefered cflags, e.g.:
# CFLAGS = -DIPV4_ONLY -DNO_DNS_SUPPORT -DNO_LOG -DNO_DAEMONIZE -DNO_IDSWITCH

#your favorite C compiler here
export CC=gcc
make

About

simple SOCKS v5 server with minimal RAM usage

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published