[TUT] Retro Hotel auf Linux Server erstellen! | 2018

  • Moin.

    Hier ein kleines Tutorial, wie man ein Habbo Retro Hotel kostengünstig auf einem Linux vServer betreiben kann.

    Vorteile von Linux gegenüber Windows:

    1. Open-Source, keine Lizenz notwendig
    2. Verbraucht weniger Ressourcen
    3. Günstiger



    Zuerst braucht ihr einen Linux vServer. Ich empfehle den Anbieter VULTR, da dieser Anbieter sehr günstig ist und stündlich abgerechnet wird (eignet sich somit sehr gut zum testen).

    1. Bestell einen Linux VPS mit 64-bit Ubuntu 16.04 OS (Beispiel)
    2. Lade dir Bitvise SSH Client herunter
    3. Verbinde dich via SSH mit dem VPS --> Klick!

    Du bist nun mit dem Linux Server verbunden. Um einen Webserver zu installieren, führe nacheinander folgende Befehle aus:


    Code
    1. apt-get update
    2. cd /root
    3. wget https://www.apachefriends.org/xampp-files/5.6.36/xampp-linux-x64-5.6.36-0-installer.run
    4. chmod +x xampp-linux-x64-5.6.36-0-installer.run
    5. ./xampp-linux-x64-5.6.36-0-installer.run


    Lasse den Installer laufen und bestätige alles mit Y.

    Wenn du nun im Browser deine IP eingibst und "Welcome to XAMPP..." erscheint, hast du alles richtig gemacht!


    Weiter gehts, gehe zurück in das Terminal!


    Nun musst du eine Datei anpassen, die es dir erlaubt, deinen MySQL Server über den Browser aufzurufen.


    Code
    1. nano /opt/lampp/etc/extra/httpd-xampp.conf (Bitte eintippen, nicht kopieren!)

    Es sollte so aussehen: Klick

    Drücke STRG+X und bestätige das Speichern mit Y.


    Jetzt kannst du deinen MySQL Server über http://SERVER-IP/phpmyadmin aufrufen.

    Nun musst du ein Passwort festlegen. Gehe in den Tab SQL und führe folgenden Query aus:


    SQL
    1. UPDATE mysql.user SET Password=PASSWORD('dein_neues_passwort') WHERE User='root'; FLUSH PRIVILEGES;


    Nun musst du noch eine Datei konfigurieren, damit du dich unter /phpmyadmin einloggen kannst.


    Code
    1. cd /opt/lampp/phpmyadmin
    2. nano config.inc.php

    Verändere die zwei markierten Zeilen folgendermaßen: Klick!

    Drücke STRG+X und bestätige das Speichern mit Y.

    Du hast nun erfolgreich einen XAMPP Webserver installiert und kannst dich unter /phpmyadmin einloggen.


    Als nächstes legst du eine Datenbank an und importierst folgende Datei:

    http://www.mediafire.com/file/…6yj0wg/Brain_Arcturus.sql


    Bevor wir uns nun um das CMS deines Hotels kümmern, müssen wir erst noch ZIP und JAVA installieren!


    Code
    1. apt install zip unzip
    2. apt-get update
    3. apt-get install default-jre
    4. apt-get install default-jdk


    Nun kümmerst du dich um das CMS deines Hotels!

    Gehe dazu in den Ordner /opt/lampp:


    Code
    1. cd /opt/lampp
    2. und lösche den Inhalt des Ordners htdocs mit:
    3. rm -rf /htdocs/*


    Nun downloadest du das CMS, den Emulator und die SWF. Das tust du folgendermaßen:


    Code
    1. cd /root
    2. wget https://transfer.sh/ehE8x/BrainCMS-1.8.8.zip (CMS)
    3. wget https://transfer.sh/hHa04/Tutorial_Retrotown.zip (SWF + EMU)
    4. Jetzt entpackst du beide .zip-Archive
    5. unzip BrainCMS-1.8.8.zip
    6. unzip Tutorial_Retrotown.zip


    Jetzt musst du diese ganzen Dateien in den Ordner /opt/lampp/htdocs (dort ist der Webserver) befördern.



    Code
    1. mv -v /root/BrainCMS-1.8.8/* /opt/lampp/htdocsmv -v /root/Tutorial_Retrotown/* /opt/lampp/htdocs
    2. cd /opt/lampp/htdocs


    Jetzt musst du das CMS, den Emulator und die SWF konfigurieren. Ich empfehle hierfür die einzelnen Dateien per SFTP zu bearbeiten, da dies einfacher und schneller ist als im Terminal.

    Geh zurück in den Bitvise SSH Client und klicke auf "New SFTP window"


    Folgende Dateien musst du nun konfigurieren:


    /opt/lampp/htdocs/system/brain_config.php

    --> Gib den Namen der Datenbank und dein vorhin festgelegtes MySQL Passwort ein.

    --> 127.0.0.1 austauschen durch die IP deines VPS.

    --> bei furnidata.xml musst du arcturusxml.xml hinschreiben

    --> bei PRODUCTION-201701242205-837386173 musst du RETRO-PRODUCTION hinschreiben

    --> bei Habbo.swf musst du habbo_retrotown.swf hinschreiben


    /opt/lampp/htdocs/swf/gamedata/external_variables.txt

    /opt/lampp/htdocs/swf/gamedata/override/external_override_variables.txt

    --> Achte auf die korrekten Verlinkungen, wie schon in der brain_config.php!


    Kommen wir nun zum Emulator. Es handelt sich hierbei um den Arcturus Emulator: http://arcturus.pw/


    Gehe zurück in das Terminal und gehe in den Ordner des Emulators:


    Code
    1. cd /opt/lampp/htdocs/ArcturusEmulator_1.14.0


    Bearbeite die config.ini


    Code
    1. nano config.ini


    Verändere nur die Datenbank Einstellungen, drücke STRG+X und speichere mit Y.


    Starte nun den Emulator mit:


    Code
    1. java -jar Habbo-1.14.0-jar-with-dependencies.jar

    Das ganze sollte dann so aussehen: Klick


    Nun kannst du dein Hotel unter der IP-Adresse aufrufen, dich registrieren und dich mit dem Client verbinden: Klick


    Sollten bei dir die Katalog-Icons nicht laden, ändere den Namen des Ordners /opt/lampp/htdocs/swf/dcr/hof_furni/icon zu icons (hänge bloß ein s an)


    Viel Spaß beim Nachmachen und Geld sparen!


    Fragen und Probleme beantworte ich gerne hier im Thread.



    banner_3.png

    Dieser Beitrag wurde bereits 5 Mal editiert, zuletzt von Sombra ()

  • Fp35bzy.png



    Du kannst die Sachen von Mediafire nicht Hotlinken.
    Lad die Archive entweder via FileZilla (sftp://IPdesServers Benutzername: root Passwort: Root_Passwort Port: 22(SSH)) hoch oder lad diese auf transfer.sh rauf.


    Außerdem empfiehlt es sich bei Linux gleich auf NGINX zu setzen, da der Webserver deutlich performanter agiert.

  • Vielen Dank für den Hinweis. Die Links sind überarbeitet.

  • Warum bevorzugst du den Bitvise Client über PuTTY und/oder WinSCP?

    Ich bevorzuge den Bitvise Client, da dieser es mir erlaubt, einfach Server Profile zu speichern und nebenbei eine SFTP Funktion gleich integriert ist. PuTTY gefällt mir nicht und das Speichern / Laden von Profilen funktioniert dort bei mir nicht so gut. WinSCP habe ich noch nie verwendet.


    Vielen Dank für die netten Rückmeldungen.


    UPDATE: Um die Sicherheit deines Servers ein bisschen zu erhöhen, solltest du den Alias von PhpMyAdmin ändern.

    Dies tust du folgendermaßen:


    Code
    1. nano /opt/lampp/etc/extra/httpd-xampp.conf

    fsuYoiu.png

    Verändere das pink markierte in irgendetwas anderes. Speichere mit STRG + X, bestätige mit Y und starte anschließend deinen LAMP Server neu:


    Code
    1. /opt/lampp/lampp restart


    PhpMyAdmin erreichst du nun über http://IP/von_dir_ausgesucht


    Mir ist aufgefallen, dass in dem verlinkten BrainCMS die notwendige .htaccess fehlt. Hier kannst du sie downloaden:

    Sorg dafür, dass sie im Ordner /opt/lampp/htdocs landet

    Dieser Beitrag wurde bereits 3 Mal editiert, zuletzt von Sombra ()

  • Es ist zwar nett das du hier Tutorials machst, und dann sogar noch auf GNU/Linux Basis :thumbup:, dass ist allerdings etwas blöd wenn du dich für die falsche Software entscheidest.


    1. Warum in aller Welt ein Ubuntu auf dem Server?! Lieber die Debian minimal Version. Und da brauchst du auch nicht den Punkt "Systemwerkzeuge installieren" bei der Installation auswählen. Es reicht ein relativ mageres Base System, was du brauchst kannst du dir ja selbst installieren.


    Würg.. XAMPP?!?!? Wie kommst du denn auf diese Schnapsidee? Lieber nginx (aus dem offiziellen nginx repo, das von debian ist etwas naja.. oldstable) und php 7.1

    PS: du hast vergessen zu erwähnen die Installationsdatei wieder zu löschen.



    apt-get install default-jre
    apt-get install default-jdk

    Ich würde um sicher zu gehen, dass keine proprietären Pakete von Oracle geladen werden lieber direkt openjdk etc. angeben. PS: du kannst auch einfach `apt install paketa paketb paketc` schreiben, dass nimmt er auch. Erspart Arbeit.

    und lösche den Inhalt des Ordners htdocs mit:
    rm -rf /htdocs/*

    Oh, ich glaube hier hat sich ein Tippfehler eingeschlichen. Ich bezweifle, dass es /htdocs gibt.

    Auch hier fehlt wieder der Hinweis, dass diese Dateien gelöscht werden können.


    -------


    Zu guter letzt:

    Bestell einen Linux VPS

    https://www.gnu.org/gnu/linux-and-gnu.de.html

    Nenne es bitte Korrekt, es handelt sich um GNU/Linux.

  • Wenn man sich für nginx entscheidet, würde Ich gerne was erweitern.


    Installation von PHP7.2

    Code
    1. sudo add-apt-repository ppa:ondrej/php -y && sudo apt-get update -y && sudo apt-get install -y php7.2 php7.2-fpm php7.2-curl php7.2-mbstring php7.2-xml php7.2-zip php7.2-mysql php7.2-pdo

    Konfiguration von NGINX für PHP7.2 (php-fpm)

    Code
    1. location ~ \.php$ {
    2. include snippets/fastcgi-php.conf;
    3. fastcgi_pass unix:/run/php/php7.2-fpm.sock;
    4. }

    bzw. den Part ausklammern (die Zeilen ohne #)

    Code
    1. # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    2. #
    3. location ~ \.php$ {
    4. include snippets/fastcgi-php.conf;
    5. #
    6. # # With php5-cgi alone:
    7. # fastcgi_pass 127.0.0.1:9000;
    8. # # With php5-fpm:
    9. fastcgi_pass unix:/var/run/php7.2-fpm.sock;
    10. }

    ggf. mit nginx -t prüfen, ob alles geklappt hat und anschließend nginx neustarten mit sudo service nginx restart

  • include snippets/fastcgi-php.conf;

    Das gibts in der Form nichtmehr. Die Konfigurationsdateien und Template zwischen der nginx repo Version unterscheiden sich deutlich von denen, der Debian repo Version. Ist ein bisschen aufwändiger geworden. :)


    Dennoch empfiehlt sich m.M.n. die nginx repo Version.

  • Das gibts in der Form nichtmehr. Die Konfigurationsdateien und Template zwischen der nginx repo Version unterscheiden sich deutlich von denen, der Debian repo Version. Ist ein bisschen aufwändiger geworden. :)


    Dennoch empfiehlt sich m.M.n. die nginx repo Version.

    Hat für mich bisher keine Probleme ergeben.. bei Problemen gibts ja immer noch Google.

  • Ich bevorzuge den Bitvise Client, da dieser es mir erlaubt, einfach Server Profile zu speichern und nebenbei eine SFTP Funktion gleich integriert ist. PuTTY gefällt mir nicht und das Speichern / Laden von Profilen funktioniert dort bei mir nicht so gut. WinSCP habe ich noch nie verwendet.

    http://www.9bis.net/kitty/ - ^^

    + wurde den Leuten empfehlen lieber NGINX zu nutzen inkl. vhosts (DigitalOcean hat schöne Tutorials für sowas)