JonDoDaemon for Debian

From JonDonym Wiki
Revision as of 16:50, 27 January 2012 by Cane (Talk | contribs)
Jump to: navigation, search

En2.png De2.png  Main Page (en) | Information for JonDonym users

A print version (PDF) and an e-book (EPUB) of this tutorial are ready for download too.

Contents

JonDoDaemon for Debian, Ubuntu and LMDE

For all of you who do not like those fancy GUIs we have a console proxy client. JonDoConsole may be operated by command line interface or remotly by telnet interface. Like JonDo it acts as a proxy and will forward the traffic of your internet applications encrypted to the mix cascades and hides your IP address.

The package contains 3 wrapper scripts and the Java application JonDoConsole.jar:

  • jondoconsole is a command line app. It looks for an applicable JRE (OpenJDK or Sun) to start the Java application. Logfile rotation is done by script.
  • jondodaemon is a script for running JonDoConsole in background with user permissions. It can start and stop the daemon, check the status, set a password for remote access and start the remote controler app for connection to a running daemon.
  • The sys-V-init script /etc/init.d/jondodaemon can start the JonDo daemon at boot time in background and stop it at shutdown.

Installation

You can install the package jondodaemon from our software repostitory or you may download the package from the download page and install it by hand.

Requirements:

  • A Java runtime environment is required. You may use openjdk-6-jre-headless or sun-java6-jre (non-free).
  • The package rlwrap is required.
  • The package java-wrappers is required.

First install the required packages with the package manager of your distribution. Afterwards you may install jondodaemon package by:

> sudo apptitude install openjdk-6-jre-headless java-wrappers rlwrap
> wget https://anonymous-proxy-servers.net/downloads/jondodaemon_all.deb
> sudo dpkg -i jondodaemon_all.deb

Run JonDoConsole

If you did not need a daemon but only a GUI-less console client, you may start:

$ jondoconsole
JonDoConsole> help
...
JonDoConsole> quit
$

Short explanation of some commands:

  • help will display an overview about available commands. For more detailed information try help command.
  • status will show you information about your premium account balance, the cascade you are connected and some activated or disabled features.
  • switch will change the cascade and choose a new one randomly.
  • choose and info will display a list of available mix cascades and ask you to choose a cascade for switching.
  • exit or quit close the programm without shutdown the remote connected daemon.
  • shutdown close the programm and shutdown a remote connected daemon (in case you are using the remote control interface of daemon).

How to use premium services

You may use JonDonym for free, but free mix cascades are restricted in some cases. Full speed and anonymisation features you will get only with a premium account. You may buy a coupon code at the webshop of JonDos GmbH and use the command coupon to create a premium account:

JonDoConsole> coupon
Please enter a coupon code or type <ENTER> to skip.
JonDoConsole:code> C72FA880A38E992A

Alternatively you can import premium accounts from your JonDo (GUI) configuration or from a backup file. Use the command import:

JonDoConsole> import
A JAP/JonDo configuration file was found at the path '/home/xxxx/.jap.conf'.
Would you like to import from this config file (c) or do you want to
manually (m) specify another path for importing your accounts? Type <ENTER> to skip.
JonDoConsole:choose (c) or (m)> m
JonDoConsole:file> /home/xxx/account.acc


Run JonDoDaemon in background

You can run JonDoConsole as daemon in background by using the wrapper script jondodaemon. You can start and stop the daemon and check the status (running or not running).

$ jondodaemon start | stop | status

Enable remote control port

You can start the daemon with a password secured control port to modify the behavior of a running daemon.

First set the password please. Use a password with at least 10 characters (upper and lower case) and numbers. Only strong passwords will be accepted. Stop jondodaemon first, if it was running!

$ jondodaemon passwd
Please enter a password to protect the daemon from hacking or enter 'break' to cancel.
Use at least 10 characters: letters, numbers, upper and lower case. Special characters are allowed.
JonDoConsole#password>
Please type your daemon password a second time.
JonDoConsole#password>
Exiting...

Afterwards edit the configuration file /etc/jondo/jondodaemon.conf or $HOME/.jondoconsole/jondodaemon.conf (overrules the global configuration) and enable the remote control port:

ENABLE_CONTROL_PORT="yes"
CONTROL_LISTEN_ADDRESS=localhost
CONTROL_LISTEN_PORT=4004

Now you can start the daemon again.


Run JonDoDaemon automatically

You may start the jondodaemon at boot time or if a network was connected. In these cases only the configuration files in /etc/jondo are used.

Run JonDoDaemon at boot time

This is done by using the sys-V-init script:

$ sudo update-rc.d jondodaemon defaults

Run JonDoDaemon with network connection established

For laptops and netbooks it is not a good solution to start the daemon at boot time. Time by time you may be not connected to network. JonDoDaemon tries and tries and tries... to connect to the mix cascades and will reduce your battery operation time. You can start JonDoDaemon if a network connection was established by the following shell script jondodaemon in /etc/network/if-up.d

#!/bin/sh
set -e
[ "$IFACE" != "lo" ] || exit 0
/etc/init.d/jondodaemon start

Stop the Daemon with by the following shell script jondodaemon in /etc/network/if-down.d

#!/bin/sh
set -e
/etc/init.d/jondodaemon stop

Make both scripts executable:

$ sudo chmod +x /etc/network/if-up.d/jondodaemon
$ sudo chmod +x /etc/network/if-down.d/jondodaemon

Enable remote control port

You can start the daemon with a password secured control port to modify the behavior of a running daemon.

First set the password please. Use a password with at least 10 characters (upper and lower case) and numbers. Only strong passwords will be accepted. Stop jondodaemon first, if it was running!

$ sudo invoke-rc.d jondodaemon stop  (if it was running)
$ sudo invoke-rc.d jondodaemon passwd
Please enter a password to protect the daemon from hacking or enter 'break' to cancel.
Use at least 10 characters: letters, numbers, upper and lower case. Special characters are allowed.
JonDoConsole#password>
Please type your daemon password a second time.
JonDoConsole#password>
Exiting...

Afterwards edit the global configuration file /etc/jondo/jondodaemon.conf and enable the remote control port:

ENABLE_CONTROL_PORT="yes"
CONTROL_LISTEN_ADDRESS=localhost
CONTROL_LISTEN_PORT=4004

Now you can start the daemon again.

$ sudo invoke-rc.d jondodaemon start

Using Premium cascades with auto started JonDoDaemon

For using premium cascades, you have to stop the jondodaemon, run jondoconsole with root permissions and import a premium account or coupon code. You can create the premium account only with JonDo GUI client. You can import a coupon code directly. Afterwards you start jondodaemon again and you will connect to premium services.

$ sudo invoke-rc.d jondodaemon stop
$ sudo jondoconsole
JonDoConsole> import
...
JonDoConsole> quit
$ sudo invoke-rc.d jondodaemon start


Remote control of a running daemon

If the daemon is running with remote control enabled, you can connect it via telnet to log in with your password and you can interact like JonDoConsole. A suitable telnet client is part of JonDoConsole. You can start it simple with:

$ jondodaemon control             (start the remote controller application)
JonDoConsole> 

Because the remote control interface is a simple telnet interface, you may connect with telnet too:

$ telnet localhost 4004
Connected to localhost.
Escape character is '^]'.
Type 'login' to log into JonDoConsole.
.
JonDoConsole> login
Received login request! Please wait some seconds for the authentication request...
Please enter the daemon password or type 'break' to cancel.
JonDoConsole#password> <passwort>
You are logged in...
.
JonDoConsole> status
State:CONNECTED, AutoSwitch:ON, ServiceFilter:'Default Filter', HTTPFilter:ON
...
JonDoConsole> exit
$


More Features

Enable anti-censorship forwarder

China and other countries enforce their Internet censorship. The JonDo program has a built-in function for circumventing some of these blockades. Those who run an anti-censorship server themselves may help to forward affected Internet surfers to JonDonym cascades.

Enable anti-censorship forwarder by edit /etc/jondo/jondodaemon.conf:

ENABLE_FORWARDER="yes"
FORWARDER_LISTEN_PORT=4005

Make sure, your forwarder listen port is reachable from the Internet. Sometimes you have to set port forwarding on your router.

If you want to run only an anti-censorship forwarder and no JonDonym proxy for local access, you can disable the local proxy in jondodaemon.conf.

ENABLE_JONDONYM="no"

Enable proxy usage for outgoing traffic

If it is necessary for you to use a proxy for outgoing traffic, you can edit /etc/jondo/jondodaemon.conf:

USE_PROXY="yes"
PROXY_HOST=server.tld
PROXY_PORT=8080

Authentication can be set by:

USE_PROXY_AUTH="yes"
PROXY_USER="username"
PROXY_PASS="password"
Personal tools