Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Update README

  • Loading branch information...
commit 47ff4cdd96ff33a4e827aa71e89025c549b98848 1 parent 8331a2d
@msantos authored
Showing with 28 additions and 39 deletions.
  1. +28 −39 README → README.md
View
67 README → README.md
@@ -1,56 +1,58 @@
-WHAT IS IT?
+## WHAT IS IT?
sods is a socket over dns server that uses the DNS to tunnel data. sods
includes a small, portable client (sdt) and ds, a utility to scan for
DNS servers that support recursion.
The protocol is interoperable with OzymanDNS
-(http://lmgtfy.com/?q=OzymanDNS).
+(<http://lmgtfy.com/?q=OzymanDNS>).
-WHAT DO I NEED TO BUILD IT?
+## WHAT DO I NEED TO BUILD IT?
Not much. OpenSSL is optional, if your OS doesn't support
arc4random().
sods has been built on Ubuntu Linux, Maemo, OpenWRT, Mac OS X and
-Solaris 8.
+Solaris.
-HOW DO I BUILD IT?
+## HOW DO I BUILD IT?
-# Server
-cd sods
-./configure
-# adjust the Makefile
-make
+### Server
-# Client
-cd sdt
-./configure
-# adjust the Makefile
-make
+ cd sods
+ ./configure
+ # adjust the Makefile
+ make
+### Client
-HOW DO I RUN IT?
+ cd sdt
+ ./configure
+ # adjust the Makefile
+ make
-# In the sods directory
-sudo ./sods -vvvv -d /tmp -L 127.0.0.1:22 a.example.com # if you have an SSH server on localhost
-# In the sdt directory
-ssh -o ProxyCommand="./sdt -r 127.0.0.1 sshdns.a.example.com" 127.0.0.100
+## HOW DO I RUN IT?
-# As a TCP proxy
-./sdt p 23233 -r 127.0.0.1 sshdns.a.example.com
-ssh -p 23233 localhost # for OpenSSH
+ # In the sods directory
+ sudo ./sods -vvvv -d /tmp -L 127.0.0.1:22 a.example.com # if you have an SSH server on localhost
+
+ # In the sdt directory
+ ssh -o ProxyCommand="./sdt -r 127.0.0.1 sshdns.a.example.com" 127.0.0.100
+
+ # As a TCP proxy
+ ./sdt p 23233 -r 127.0.0.1 sshdns.a.example.com
+ ssh -p 23233 localhost # for OpenSSH
The sods client works best with GNU screen installed on your shell
server (see the scripts directory for an example of a script to
reconnect if the connection is dropped).
-WHY WOULD I WANT TO USE IT?
+## WHY WOULD I WANT TO USE IT?
sods is tiny, easily ported and fast. Well, sort of fast, for a
tunnel going over DNS. Which means not really very fast.
@@ -71,7 +73,7 @@ connections on secure networks
* have fun with anyone doing traffic analysis on your network usage
-FEATURES
+## FEATURES
* use TXT, CNAME or NULL records to encapsulate data
@@ -86,21 +88,8 @@ FEATURES
* client can use be used as a pipe (for OpenSSH) or as a TCP proxy (for other ssh clients)
-TODO
+## TODO
* remove hardcoded options and use define, e.g., nobody/nogroup
-* re-write the sods server in Erlang, using the native SSH
-support. Reliable, fault tolerant DNS and ssh server for an unreliable
-protocol!!
-
-* write an Erlang client
-
* multiplex connections to the TCP proxy
-
-* allow the client to specify a host/port
-
-For example, if the client requests "mysshserver.com.sshdns.s.example.com",
-the request would cause the sods server to open a port to
-"mysshserver.com" on port 22. To specify a port, the client could
-embed the port, maybe: mysshserver.com-2222.sshdns.s.example.com
Please sign in to comment.
Something went wrong with that request. Please try again.