Da immer mehr Firmen und vor allen Open-Source Projekte dazu übergehen ihre
Software über Bittorent anzubieten ist es eine nette Sache,
die Software herunterzuladen,
und einen gewissen Zeitraum noch anzubieten.
Selbstverständlich nur legale Software!
Dies ist insbesondere der Fall wenn der Rechner als Webserver benutzt wird und aus
diesen Grund ständig online ist.
Die meisten Router werden ohne Tastatur und Monitor betrieben.
Aus diesen Grund muss der Client vollständig über Netzwerk administrierbar sein.
Diese Voraussetzung bietet der Client "MLDonkey".
Downloadquellen und Hilfe bekommt man im Forum.
Um eine komfortable Oberfläche zu erhalten empfiehlt es sich noch, eine GUI
zu installieren wie sancho
Fortgeschrittene Anwender mit Erfahrung mit MySQL sollten einen Blick auf Torrentflux werfen.
Bittorrent muss auf einen Port von aussen ereichbar sein.
Es empfiehlt sich den Standardport abzuändern z.B. in den Port "35000"
Dazu verfahren wir analog zur Konfiguration des Webservers.
Folgender Eintrag in der "base.txt" aktiviert Portforwarding:
# Optional package: PORTFW #------------------------------------------------------------------------------ PORTFW_N='2' # how many portforwardings to set up PORTFW_1_TARGET='80' # example 1: forward ext. port 8080 PORTFW_1_NEW_TARGET='192.168.11.12:80' # ...to int. host 192.168.6.15 port 80 PORTFW_1_PROTOCOL='tcp' # ...using tcp #-------------------------------------------------- PORTFW_2_TARGET='35000' PORTFW_2_NEW_TARGET='192.168.11.13:35000' PORTFW_2_PROTOCOL='tcp'
Anfragen an den Port 80 werden nun an den Webserver weitergereicht, an den Port 35000 zu MLdonkey.
Der Filesharing Client muss allerdings auch Verbindungen ins Internet
aufbauen dürfen, was einen Rechner in der DMZ nicht erlaubt ist.
Aus diesen Grund muss noch eine Regel definiert werden.
Der Eintrag in der Sektion DMZ der "base.txt" sieht nun so aus:
#------------------------------------------------------------------------------ # Simple DMZ setup for dial-up based routers -- see documentation #------------------------------------------------------------------------------ OPT_DMZ='yes' DMZ_NAT='yes' DMZ_LOG='no' DMZ_RED_DEV='ppp0' DMZ_ORANGE_RED_N='1' DMZ_ORANGE_RED_1='192.168.11.13 any ACCEPT' DMZ_ORANGE_ROUTER_N='1' DMZ_ORANGE_ROUTER_1='53 ACCEPT'
Nun noch ein Remote-update von fli4l durchführen
Die Einrichtung der VM erfolgt wie in Einrichten einer DMZ beschrieben.
Weil man viele Einträge belassen kann erstellen wir eine Kopie der Konfigurationsdatei des Webservers
xen-dom0:~# cp /etc/xen/webserver /etc/xen/mldonkey
Die Namen des Hosts und der VM müssen dementsprechend angepasst werden, ebenso die IP-Adresse und Imagedateien.
Aus Sicherheitsgründen sollte der Server in der DMZ laufen.
Er erhält den Namen "mldonkey" und die IP-Adresse 192.168.110.13
Der Netzwerkeintrag in der "/etc/xen/mldonkey" sieht nun so aus:
# A name for your domain. All domains must have different names. name = "mldonkey" # Optionally define mac and/or bridge for the network interfaces. # Random MACs are assigned if not given. vif = [ 'mac=aa:00:00:00:11:13, bridge=xenintbr, vifname=mldonkey' ] dhcp="off" ip="192.168.11.13" netmask="255.255.255.0" gateway="192.168.11.11" hostname="sauger"
Für das Speichern der Dateien empfiehlt sich eine eigene Partition oder Platte.
Diese muss etwas anders als ein Image eingebunden werden:
disk = [ 'file:/vm_images/sharing.img,sda1,w','file:/vm_images/swap2.img,sda2,w', 'phy:hda9,sda3,w']
Hier wird die Partition "hda9" einer Festplatte der VM als Partition "sda3" zur Verfügung gestellt.
Dies muss auch in der "/etc/fstab" der VM eingetragen werden,die nun folgende Einträge hat:
# UNCONFIGURED FSTAB FOR BASE SYSTEM proc /proc proc defaults 0 0 /dev/sda1 / ext3 defaults 1 2 /dev/sda2 none swap sw 0 0 /dev/sda3 /opt/share ext3 defaults 0 0
Nun können wir die VM starten
xen-dom0:~# xm create mldonkey
Nach dem erfolgreichen Starten überprüfen ob sie in der DMZ ist:
xen-dom0:~# brctl show
bridge name bridge id STP enabled interfaces
xen-br0 8000.0001029b1cd7 no eth0
fli4l_green
xenintbr 8000.0001020d0403 no eth1
fli4l_orange
webservint
mldonkey
xen-dom0:~
Nach dem entpacken starten wir MLdonkey (bitte nicht als root)
user@sauger:/opt$ tar -xjf mldonkey-2.7.5.static.i686-Debian_glibc-2.3.5.tar.bz2 user@sauger:/opt$ ./mldonkey-distrib-2.7.5/mlnet.static &
Beim ersten Starten wird im home des users
das Verzeichnis ".mldonkey" automatisch angelegt.
In dieses Verzeichnis werden auch die Dateien abgelegt, was wir nicht wollen.
Wir beenden MLDonkey wieder:
user@sauger:~$ killall mlnet.static user@sauger:~$
Eine Möglichkeit ist die Pfade in der "download.ini" zu ändern.
Einfacher ist es mit Softlinks:
user@sauger:~/.mldonkey$ cp -r incoming temp torrents /opt/share/ user@sauger:~/.mldonkey$ mv incoming incoming.alt user@sauger:~/.mldonkey$ mv temp temp.alt user@sauger:~/.mldonkey$ mv torrents torrents.alt user@sauger:~/.mldonkey$ ln -s /opt/share/incoming incoming user@sauger:~/.mldonkey$ ln -s /opt/share/temp temp user@sauger:~/.mldonkey$ ln -s /opt/share/torrents torrents user@sauger:~/.mldonkey$
Als nächstes müssen die Ports und IP eingetragen werden
Dazu wird die "bittorent.ini" in .mldonkey geöffnet:
(* The port to bind the client to *)
client_port = 35000
Da wir über einen Router mit den Internet kommunizieren muss diese Adresse auch eingetragen werden.
Zu diesen Zweck wird in der "downloads.ini" folgendes eingetragen:
allowed_ips = [
"127.0.0.1";
"192.168.11.11";]
Der Client "sauger" sieht nur den Router der DMZ, aus diesen Grund muss nur diese IP eingetragen werden.
Nun können wir den ersten Test machen.
Im Webbrowser die Adresse aufrufen:
http://sauger:4080/
und ein Torrentfile hinzufügen.
Zum Beispiel:
Knoppix CD/DVD
OpenOffice
Damnn Small Linux