Menu

Tree [r14] /
 History

HTTPS access


File Date Author Commit
 COPYING 2008-05-14 gringoli [r3]
 FAQ 2008-05-14 gringoli [r8]
 INSTALL 2008-05-14 gringoli [r8]
 Makefile.in 2008-06-16 gringoli [r12]
 README 2008-05-14 gringoli [r8]
 configure 2008-05-27 gringoli [r10]
 configure.ac 2008-05-27 gringoli [r10]
 gw_bckend_list.cpp 2008-05-14 gringoli [r4]
 gw_bckend_list.h 2008-05-13 gringoli [r1]
 gw_common.cpp 2008-05-27 gringoli [r10]
 gw_common.h 2008-06-16 gringoli [r12]
 gw_conntrack.cpp 2008-06-16 gringoli [r12]
 gw_conntrack.h 2008-06-16 gringoli [r12]
 gw_list.cpp 2008-05-13 gringoli [r1]
 gw_list.h 2008-05-13 gringoli [r1]
 gw_list_test.cpp 2008-05-13 gringoli [r1]
 gw_list_test2.cpp 2008-05-13 gringoli [r1]
 gw_main.cpp 2008-06-16 gringoli [r12]
 gw_netio.h 2008-06-16 gringoli [r12]
 gw_netio_linux.cpp 2008-06-16 gringoli [r13]
 gw_netio_osx.cpp 2008-06-16 gringoli [r12]
 gw_netio_test.cpp 2008-06-16 gringoli [r12]
 gw_netio_test2.cpp 2008-06-16 gringoli [r14]
 gw_packet.cpp 2008-06-16 gringoli [r12]
 gw_packet.h 2008-06-16 gringoli [r12]
 gw_packet_test.cpp 2008-05-13 gringoli [r1]
 gw_signal.cpp 2008-05-13 gringoli [r1]
 gw_signal.h 2008-05-13 gringoli [r1]
 gw_ssh.cpp 2008-05-27 gringoli [r10]
 gw_ssh.h 2008-05-27 gringoli [r10]
 gw_tcb.cpp 2008-05-13 gringoli [r1]
 gw_tcb.h 2008-06-16 gringoli [r12]
 patchopenssh 2008-05-27 gringoli [r11]

Read Me

SSHgate is a small daemon that transparently routes packets across SSH
encrypted tunnels. 

SSHgate daemon transforms the hosting server into a special, security targeted,
router. TCP packets with selected destinations are transparently tunneled into
SSH channels between the host running SSHgate and a remote OpenSSH
server. Whenever a SYN packet toward one of the selected destinations is
received by SSHgate, a new SSH connection is established: the new SSH
connection is properly configured to tunnel packets in such a way that the
remote SSH server can send them to the actual destinations. SSH connections are
managed by SSHgate without user intervention: to enable concurrent transparent
tunneling of several TCP sessions, packets are masqueraded by SSHgate before
they are sent on the encrypted SSH tunneling channel. To limit the number of
different SSH channels, TCP sessions toward the same pair (IP, Port) are
multiplexed inside a unique SSH channel. The SSH enabled router set up by
SSHgate can route both packets generated on the LAN by neighboring hosts or
locally generated. 

At this stage of the development, SSHgate runs on Linux 2.6 and OSX Leopard. On
both architectures it runs exclusively in user space using no kernel facilities
for packet masquerading and manipulation. On Linux packets are received through
a PF_PACKET socket; on OSX, instead, BPF sockets are used. Packets are sent
using a PF_INET, SOCK_RAW socket on both architectures. 

Please send questions to:

  sshgate@ing.unibs.it

Regards,
Francesco Gringoli