Installation [DE] - HackerHarry/mffbashbot GitHub Wiki
- Windows mit Cygwin
- Debian-basierte GNU/Linux Distributionen
- Windows 10 Subsystem für Linux
- Android mit Termux
Windows mit Cygwin
Getestet unter Windows 7 SP1 x86 und Windows 10 x64
Lade eines der Setup-Programme herunter und starte es.
Im Verlauf der Installation wird Cygwin, die Basis des Bots, installiert.
Anschliessend wird der Bot innerhalb Cygwin installiert.
Windows könnte im Verlauf der Installation danach fragen, ob lighttpd.exe
durch die Firewall gelassen werden darf. Dies bitte erlauben.
Nach Abschluss der Installation kannst Du dem Bot mitteilen, welche Farmen bearbeitet werden sollen.
Das kannst Du im Browser unter der Adresse http://localhost/mffbashbot/ machen.
Benutze dazu einfach den + Farm
Knopf. Der Bot wird im Browser auch konfiguriert.
Über die passenden Ikonen im Startmenü oder auf dem Desktop kann der Bot gestartet und gesteuert werden.
Zum manuellen Einstellen von Passwort, Servernummer, etc. siehe Hinweise im Linux-Installationsbereich.
Weitere Hinweise zum Starten des Bots stehen im Manual.
Debian-basierte GNU/Linux Distributionen
Grundsätzliches Linux-Wissen wird an dieser Stelle vorausgesetzt. Erklärungen darüber, wie man sich z.B. anmeldet, oder Dateien editiert sind nicht Teil dieser Dokumentation.
Pakete wie sudo, sed, wget, (p)grep und so weiter sollten schon installiert sein. Und wie der Name schon vermuten lässt, muss auch die Bash an Bord sein. ;)
Starte ein Terminal und setze folgende Befehle ab:
wget https://raw.githubusercontent.com/HackerHarry/mffbashbot/master/install.sh
chmod +x install.sh
./install.sh
oder, falls Du Dich heute mutig fühlst, benutze diesen Einzeiler:
bash -c "$(wget https://raw.githubusercontent.com/HackerHarry/mffbashbot/master/install.sh -O -)"
Ab hier erledigt das heruntergeladene Skript einige Arbeit. Bitte beachte, dass der verwendete Webserver lighttpd Port 80 belegen wird. Sollte dort schon ein anderer Dienst laufen, wirst Du hoffentlich genug Fachwissen haben, um einen der Dienste umzuziehen.
Füge nach Abschluss der Installation Farmen in Deinem Browser hinzu.
Verwende hierzu die u.a. localhost-Adresse und benutze den + Farm
Knopf.
Solltest Du die config.ini von Hand anpassen ist darauf zu achten, dass die
Leerschritte vor und nach dem Gleichheitszeichen erhalten bleiben. Das erste
Zeichen des Passwortes darf kein Ausrufezeichen !
sein! Auch das Hochkomma '
sollte innerhalb des Passwortes vermieden werden.
Im Prinzip ist der Bot nun fertig installiert. Wie man den Bot startet, steht im Manual.
Die GUI zum steuern des Bots erreichst Du dort, wo Dein lighttpd Webserver läuft. Dort unter http://<IP oder Hostname>/mffbashbot/ oder wenn er auf Deinem lokalen Rechner läuft http://localhost/mffbashbot/
Windows 10 Subsystem für Linux
Getestet unter Windows 10 x64 Version 1703
Die Installation der WSL wird hier nicht erklärt. Es gibt zahlreiche Anleitungen im Internet, welche die Installation anschaulich darstellen. Zum Beispiel hier oder hier.
In meinen Tests gab es das WSL 2 noch nicht; die WSL 1 sollte demnach ausreichen.
Sobald das WSL installiert ist, starte es und fahre fort bei Debian-basierte GNU/Linux Distributionen.
Hinweis: Der lighttpd Server startet nicht automatisch zusammen mit der Bash.
Du mußt also ggf. einen Befehl wie
sudo service start lighttpd
absetzen, damit der Webserver gestartet wird.
Der Webserver stellt die Oberfläche zur Konfiguration im Browser bereit.
Android mit Termux
Getestet auf einem nicht gerooteten Samsung Galaxy Tab A6 (SM-T580) mit Android 8.1 und Termux v0.118.3
Die Installation unter Termux ist als experimentell anzusehen. Support kann ich hier wenig bis gar nicht leisten. Der Weg, den ich im Folgenden beschreibe, hat für mich funktioniert, kann aber vermutlich nicht als universelle Blaupause zur Installation auf anderen Geräten herhalten. Es wird davon ausgegangen, dass Du weißt, wie man 3rd Party Apps unter Android installiert. Auch der Gebrauch der Kommandozeile darf Dir nicht fremd sein.
Los geht's! Du hast ein altes Handy oder Tablet rumliegen und willst auf diesem den Bash Bot laufen lassen? Dann bringt diese Anleitung hoffentlich den Erfolg!
Lade Dir Termux auf Dein Android-Gerät und installiere es.
Starte Termux und führe pkg update && pkg upgrade
aus.
An dieser Stelle empfehle ich OpenSSH zu installieren, da die Tipperei per SSH
deutlich leichter fällt, als am Mobilgerät. pkg install openssh
ist Dein Freund.
Vergib ein Paßwort mit passwd
und starte dann den SSH Daemon mit sshd
.
Sodann kannst Du Dich (als root
) per SSH auf dem Mobilgerät (Port 8022
) anmelden.
SSH ist naklar optional. Wer den sshd
automatisch mit Termux starten will,
kann pkg install termux-services
und sv-enable sshd
ausführen. Letzterer
Befehl warf in meinen Tests jedoch einen Fehler aufgrund eines Bugs.
Als nächstes wird proot-distro mit pkg install proot-distro
installiert. Es
folgt das Debian-Paket mit proot-distro install debian
. In meinem Fall wurde
debian-bookworm-aarch64-pd-v4.17.3
installiert. Melde Dich nun mit proot-distro login debian
an.
Innerhalb dieser ..nunja.. Debian-Emulation aktualisierst und installierst Du nun einige Pakete.
apt-get update && apt-get upgrade
apt-get -qq install wget sudo dialog apt-utils
Jetzt fügst Du mit adduser bot
einen neuen Benutzer hinzu.
Jetzt genehmigst Du dem neuen Benutzer großzügige sudo
Rechte.
echo "bot ALL= NOPASSWD: ALL">/etc/sudoers.d/bot-no-sudo-password
Dann führst Du hash -r
aus und verlässt die Debian-Umgebung mit exit
.
Sodann meldest Dich erneut mit proot-distro login --user bot debian
an und
bereitest die Bot-Installation vor.
wget https://raw.githubusercontent.com/HackerHarry/mffbashbot/master/install.sh
chmod +x install.sh
Da Port 80 für nicht-gerootete Geräte nicht verfügbar ist, änderst Du den Port
des Webservers in der Datei install.sh
.
# change lighty's listening port
sed -i "/echo \"Configuring lighttpd...\"/a sudo sed -Ei 's/server.port\\\s+= 80/server.port = 8080/' \$LCONF" install.sh
Jetzt kannst Du den Bot (endlich) installieren: ./install.sh
Erstelle das Socket-Verzeichnis für screen
:
mkdir /tmp/bot
chmod 700 /tmp/bot
Das hat den Hintergrund, daß der Pfad zur Socket-Datei nicht länger als 108 Zeichen sein darf. Mehrere Stunden debugging waren übrigens erforderlich, um zur Erkenntnis zu gelangen, daß hier die Pfadlänge der Android-Welt maßgeblich ist.
Jetzt kannst Du unter http://<IP oder Hostname>:8080/mffbashbot/ Farmen hinzufügen und den Bot konfigurieren. Naklar geht das auch auf dem Tablet oder Handy selbst: http://localhost:8080/mffbashbot/
Zuguterletzt änderst Du das Socket-Verzeichnis für screen
und startest den Bot mit export SCREENDIR=/tmp/bot/; cd; ./startallbots.sh
.
Wer den Bot auf der Konsole des Mobilgeräts laufen lassen will, muß ihn natürlich dort in der Debian-Umgebung starten und nicht in der SSH Sitzung.