Hi, I've posted about it yesterday and now after digging bit more, I am more precise about the source of the errors I am receiving. In short, I am willing to deploy on my server an SSH daemon which I can control what commands can be executed, and by who. I started with samples found on the web and at Twisted docs, and continue from there. I only tried to run git commands over SSH so far and the weird thing is that it sometimes work, and sometimes not. e.g. I type: 'git clone ssh://localhost:port/path/to/repo' I sometimes get error, and sometimes not at http://gist.github.com/37446 I pasted the server.py code. which is a modification of what I've found at: http://twistedmatrix.com/projects/conch/documentation/examples/sshsimpleserv... below is the console output on the client side #first attempt tzury@regulus:~$ git clone ssh://tzury@localhost:5022/home/tzury/devel/ice/snoip/freespeech clone-repo7 Initialized empty Git repository in /home/tzury/clone-repo7/.git/ remote: Counting objects: 347, done. remote: Compressing objects: 100% (232/232), done. Receiving objects: 100% (347/347), 91.75 KiB, done. remote: Total 347 (delta 234), reused 177 (delta 114) fatal: The remote end hung up unexpectedly Resolving deltas: 100% (234/234), done. error: waitpid (async) failed fatal: error in sideband demultiplexer #second attempt tzury@regulus:~$ git clone ssh://tzury@localhost:5022/home/tzury/devel/ice/snoip/freespeech clone-repo7 Initialized empty Git repository in /home/tzury/clone-repo7/.git/ remote: Counting objects: 347, done. remote: Compressing objects: 100% (232/232), done. Receiving objects: 100% (347/347), 91.75 KiB, done. remote: Total 347 (delta 234), reused 177 (delta 114) Resolving deltas: 100% (234/234), done. tzury@regulus:~$ -- Tzury Bar Yochay -- Tzury Bar Yochay