This tarball compiles under Linux and Mac OS X.
version 2.3 (2010/07/09): assh-2.3.tgz
version 2.2 (2010/04/01): assh-2.2.tgz
Assh (Anonymous Secure SHell) is a ssh client which uses SSL proxies to establish anonymous connections. This tool can be usefull for people who want to keep anonymity when they connect to public servers or, for people who work on restricted LAN networks that do not authorize connection to destination port tcp/22 (for example, behind a firewall). See README included in the tarball file for further details.
The Anonymous Secure SHell program has been made under GPL licence and use a Corckscrew module.
Download the last version from http://assh.sf.net.
$ gzip -dc assh-<version>.tgz | tar xf - ; cd assh-<version> $ make
Once compiled, to copy both assh and corkscrew binary files into /usr/bin/, type "make install" as root user.
Before connecting to ssh servers, you will need to make Assh retrieve and build a list of working SSL proxies, this is called the initialization mode ("-i" option). After this step, you will be able to connect servers anonymously by using common OpenSSH options, this is called the connection mode. Those two modes are described bellow:
To generate a list of working proxies, assh will parse this web page and try a CONNECT
resquest on each proxies. On request success, proxy's ip and port will be stored
in a configuration file (
~/.assh/proxy.lst). For example, if you
$ assh -i hostname
Assh parses proxies from a list retrieved from Internet, check them with a
CONNECT hostname:22 request and store the proxies that authorize
If you already have your own proxies informations stored in a file (
"ip_address:port" per line), you can tell assh to check this list better
than parsing the default url as above. This can be done by typing:
$ assh -i -f your_own_proxy_file.txt hostname
To fill the file "your_own_proxy_file.txt", you can manualy copy a lot of
proxy informations from this
link and then paste them into your file. Keep in mind that this file must
respect a specific format, one couple "
ip_address:port" per line.
The required "hostname" argument must be a server that run sshd and it is not
necessary that you have a shell account on it. It is only used in CONNECT
requests during proxies checking. So it can be your own ip address or any server
on Internet that provides sshd service. But to preserve anonymity, this must not
be the ssh server you want to connect to !
Anonymous connection to sshd servers can be done by using common OpenSSH options. The difference is that assh will transparently use a SSL proxy randomly choosen from your proxies configuration file (previoulsy generated during initialization mode).
For example, to get connected anonymously on host.domain.com, where sshd service is listening on port 2222, use:
$ assh -4x -p2222 host.domain.com
Note: If you want to pass a "-o" parameters, remind that the double quotes character (") must be replaced by \" in Assh.
For example, the ssh command:
$ ssh -4 -o "StrictHostKeyChecking no" remote.hostname.com
will become for Assh:
$ assh -4 -o \"StrictHostKeyChecking no\" remote.hostname.com
Feel free to send any comments or bugs to authors: vladz <firstname.lastname@example.org> and Lorenzzz <email@example.com >
Last updated: 2010/07/09