This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

mein kleines Mini-Grid Projekt
#1
Hallo zusammen,
gerne möchte ich euch mal ein bisserl erzählen, woran ich gerade mit Opensimulator unterwegs bin.

Ich schreibe für Linux (Debian 12) ein Installer und ein kleinen Manager in Bash, was ich später zum Download anbieten möchte.
Lukas hat schon mal die erste Version in einem Video gesehen, das verlinke ich weiter unten.
Seit daher habe ich noch vieles angepasst und wie es scheint wird es noch eine Weile dauern bis zur ersten Version die ich veröffentlichen werde.

Die Grundfunktionen sind etwa folgende:

Man lädt die Scripte hoch auf den Debian Server und passt die Datei mit den Variablen für seine Installation an.
Dann gibt man den Scripten mit chmod Ausführungsrechte und meldet sich danach als root an, um einige Dinge auch wirklich als root auszuführen.
Das sind Sachen wie System Updates, Installationen diverser Pakete und die Firewall Einstellungen.

Jetzt verlässt man die root shell wieder und startet das eigentliche Installations Script.
Auch hier wird man nochmals nach dem root gefragt, damit die entsprechende Datenbanken und User auch als root gemacht werden.
Natürlich wird die Variable mit dem Kennwort dann wieder unsettet.

Es wird die Robust Instanz komplett erstellt mit Datenbank, User, die Opensim Instanz mit Robust konfiguriert und nun gehts zur Schleife, wo die einzelnen Regionen ähnlich erstellt werden.

Am Anfang habe ich in den INi Files jede Zeile mit sed angefasst, das lasse ich nun grösstenteils sein und kopiere erst angepasste Ini Dateien, wo ich nur die nötigen Konfigurationen aus der Datei mit den Variablen ändere, so Port Nummer, Grid Name, IP oder Domain und so Zeugs.

Hier überlege ich mir noch eine zentrale Config zu bauen.

Bei jedem Durchgang der Schleife wird die Region auch gleich angepasst mit terrain fill und die Grösse der Region, so das diese fixfertig bereit stehen.

Ein Mini Grid mit vier Regionen habe ich so in ca. 6 Minuten fixfertig und betriebsbereit installiert, ohne manuell was an den Konfigs zu schrauben, Dateien zu kopieren und dergleichen.

Noch habe ich aber viel zu tun.

Ich will noch eine start.sh und eine stop.sh automatisiert bauen, so das bei einem Server Neustart das Grid auch wieder selber hochfährt, oder ich das Grid herunterfahren kann.

Auch habe ich noch keine Prüfungen für Log Files während der Installation, da muss ich mir noch überlegen wie ich das mache.
Denn ich bin kein grosser Bash Scripter, das habe ich mir nun alles aus den Finger gesaugt sozusagen.

Zu guter letzt möchte ich noch einen klitzekleinen textbasierten Manager bauen mit den wichtigsten Funktionen wie Region erstellen/löschen, Backup&Restore (manuell), ein automatisches Backup der mySQL und Opensim Instanzen und noch so nützliche Sachen Smile

Auch bin ich an einer Webseite, wo das ganze dann veröffentlicht und erklärt wird.
Über die Lizenzierung muss ich mir auch noch Gedanken machen.

Mir macht das unheimlich Spass, obwohl ich es etwas unterschätzt habe.
Zum Glück finde ich hier im Forum auch guten Support und viele Erklärungen, die ich in der Konfiguration berücksichtigen kann.


Jetzt mal aber zum Video, und verzeiht mir, das die Qualität nicht so toll ist.
Es ist mein erstes Video, und ich denke der Rechner ist etwas zu schwach für solche Dinge

https://www.youtube.com/watch?v=ycnq1ft1K-g

Viele Grüße
Trawell
Zitieren
#2
Hallo Trawell,

das klingt ja ziemlich interessant.

Pass aber bitte auf das es nicht zu Sicherheitslöchern kommt in dem Credentials Nutzerübergreifend gleich sind.

Hier ein Beispiel wie es nicht machen sollte anhand des Remote Admin.

Wir alle kennen den Bereich [Network] in der opensim.in
Da wird der Remote Admin konfiguriert mit Usernamen und Passwort.

ConsoleUser = .....
ConsolePass = .....

Standardmäßig horcht der auch noch am öffentlichen Gridport.

http_listener_port = ${Const|InstancePublicPort}
    ;# {http_listener_port} {} {TCP Port for this simulator to listen on? (This must be unique to the simulator!)} {} 9000
    ;; Simulator HTTP port. This is not the region port, but the port the
    ;; entire simulator listens on. This port uses the TCP protocol, while
    ;; the region ports use UDP.

Hier solltest du unbedingt Zufallswerte eintragen!

Was aber die wenigsten wissen dürften ist das diese Werte nur die bereits davor geladenen Werte der OpenSimDefaults.ini überschreiben.

Und da kriegste graue Haare wenn du rein siehst.

[Network]
    ConsoleUser = "EIN UNSICHSERER NAME"
    ConsolePass = "EIN NOCH UNSICHERERES PASSWORT"
    http_listener_port = 9000

(Ich habe die Daten verändert damit das nicht über Suchmaschinen im Internet angezeigt wird)
Jedenfalls haben alle Installationen der gleichen Distribution hier die gleichen Werte.

Daher bitte lösche in deiner OpensimDefaults.ini diese 3 Einträge, und kümmere dich darum das in der Opensim.ini
der User und das Passwort mit Zufallswerten je Installation gesetzt wird.

Und lies dir die Passage in der default Datei mal in Ruhe durch. Da ist noch mehr im Argen.
Ich weiss nun wie neulich die Grids gehackt wurden.
Zitieren
#3
Ich verstehe das nicht wirklich:

Ein Angreifer sollte doch wissen, dass Server-Logs gelesen werden. Hinterlasst selbiger auf dem Server auch noch Elefantenspuren,

dann ist er entweder ein absoluter Troll oder ein ein hasserfüllter Mensch dem Internetkriminalität bzw. die Folgen am "A" vorbeigehen.

OpenSim ist eben lieb gewordener sozialer Wohnungsbau ohne Haustür :-)
All done!
Zitieren
#4
Hallo Lukas,

ich spreche von einem offenstehenden Scheunentor in der default Datei.
Das schaut schon fast nach Vorsatz aus.

Und mal ehrlich- wer von euch hat sich mal die Default Dateien alle durchgelesen? Und das ist nicht böse gemeint.

Das Problem von Opensim ist der Konstrukt zig Konfig Dateien nacheinander auszuwerten, wobei die neuesten Einträge jeweils die Alten überschreiben. Aber bei der schlichten Anzahl an Konfig Dateien wird schnell was übersehen.
Zitieren
#5
Die beiden Grids die gehackt wurden waren Dreamgrids von Fred. Sprichst du jetzt von Dreamgrid?
Mein Zuhause ist hier:
decadence.ddns.net:8002:big city life
decadence.ddns.net:8002:decadence
Zitieren
#6
Nicht explizit Cheryl. Deren Konfig kenne ich nicht.
Aber das Problem das ich gefunden habe ist schon in der OpensimVersion von OSG drin, was wohl die Vorlage für die Meisten darstellt.
Es ist aber sehr gut möglich das dieses Problem in den Dreamgrids existiert.

Und ich hab oben ja absichtlich nicht das Passwort geschrieben....
Unabhängig davon das es leicht auffindbar wäre, ist dessen Länge und Komplexität grottig schlecht.
Das wäre also auch ohne Kenntnis leicht zu knacken.

Meiner Meinung nach hat da jemand von den Entwickern seinen Testaccount drin vergessen.
Zitieren
#7
Ich habe mal die OpenSimDefaults.ini aus der Version 0.9.2.2 im Original hier reingetüdelt.


Angehängte Dateien
.gz   OpenSimDefaults.ini.tar.gz (Größe: 29,34 KB / Downloads: 27)
All done!
Zitieren
#8
Der Linux Opensim Manager von Trawell ist fantastisch! Ganz schön weit ausgereift. "tmux" zeigt was es kann und Robust, Regionen, IAR und Oar alles ist dabei.

Solch ein Projekt kann man nicht einfach aus der "Hose" zaubern.

Wollte nur anmerken wer kein "VPS" hat, dass "SYSTEMIP" zu Hause hinter dem Router aber nicht aufgelöst wird. Da sollte dann die url in die Regions.ini.  Noch ein Problem: Wenn es nur noch IPv6 Adressen gibt, dann ändert sich alles. OpenSim geht nur IPv4. Ich soll ja auch mal Glas bekommen, da habe ich aber bestimmt keine IPv4 dazu. OpenSim muss also auf kurz oder lang beide Adressen handeln. Das wäre doch mal eine Aufgabe für ganz schlaue Leute in diesem Land :-)

Yes
All done!
Zitieren
#9
Danke für das Lob
Ich werde noch die Infos von Tron einfliessen lassen.
Und was IPv6 betrifft, hab ich folgendes schon ein bisschen getestet.

Und zwar habe auf einer 1 Euro VPS mit Wireguard ein VPN zu meinem heimischen Rechner gebaut.
Natürlich so eingestellt, das man nur auf diesen Rechner kommt, und auch alle Anfragen von dem Rechner nur übers VPN zurückgeleitet werden.
Eine URL für Opensim zeigt auf den externen Wireguard, der alle Anfragen per IP v4 zu meinem Rechner zuhause schickt und zurück.
Was ich bisher geschafft hab war, das ich von einem Externen Grid auf mein heimischen Rechner kam.

Das Anmelden mit einem Grid Avatar funktionierte (noch), nicht.
Aus Zeitgründen damals habe ich das Thema nicht mehr weiterverfolgt, werd das aber wieder mal angehen.
Meiner Meinung muss das nämlich möglich sein.

Viele Grüße
Trawell
Zitieren
#10
Also nochmals zu Trons Input...

in der OpenSim.ini werden nun die beiden Werte Console_User und Console_PASS in jeder Instanz mit Zufallswerten überschrieben.
In der OpenSimDefaults sind die drei Zeilen gelöscht.

So wie ich das verstanden habe, wird beim Starten einer Instanz zuerst die OpensimDefaults geladen, und dann in der Opensim.ini die Werte überschrieben?
Das heisst, die Werte sind doch schon geladen, und es würde reichen, die einfach und nur in der Opensim.ini neu zu definieren? (ich hab die drei Zeilen in der Defaults nun trotzdem gelöscht)

Du schreibst auch was von Google, Du meinst sicher, das die Werte in den Ini Files der Tutorials im Internet ausgelesen werden, und nicht die den Opensim Server, oder ?

Viele Grüße
Trawell
Zitieren


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste