Beiträge von Ringelnatz

    Ja genau, das ist ja letztlich was ich oben schrieb:

    JWT ist sinnvoll für die Verwendung zwischen verteilten Systemen, aber für eine einfache SPA unter der gleichen Domain wie die API eher Overkill.

    Warum ich so darauf herumreite: Es gibt haufenweise Tutorials im Netz die JWTs als das Mittel der Wahl für SPAs darstellen, und Entwickler denen das Konzept neu ist bauen das nach ohne zu hinterfragen. Und dann steht der Token am Ende doch im localStorage und ggf. spart man sich sogar die Refresh-Logik, was zu einer schlechten Nutzererfahrung führt, da man irgendwann plötzlich ausgeloggt wird. Oder noch schlimmer (habe ich leider schon oft genug in freier Wildbahn gesehen): Man verpasst dem Token kein Ablaufdatum. Dann hat man Tokens verteilt die man nicht revoken kann (außer natürlich man ändert das Secret für alle Tokens).


    Insgesamt ist Authentifizierung mittels JWT deutlich komplexer und es ist auch schwerer das sicher und vollständig zu implementieren, daher meine Empfehlung wenn man einfach nur einen normalen User-Login umsetzen möchte und PHP nutzt (in anderen Sprachen wie JS/NodeJS gibt es auch diverse Frameworks die das können): Sessions nutzen :)

    Okay, logisch. Aber dann sehe ich in dem Einsatz von JWT gegenüber Sessions eigentlich nur noch Nachteile (z.B. JWT verlängert sich nicht automatisch sondern muss refreshed werden mit Hilfe eines zweiten Tokens ...)

    Aber nicht in einem Http-only Cookie, sonst kommt der Client ja nicht mehr dran. Und wenn du vom JavaScript-Code aus drankommst kann dir der Token halt per XSS geklaut werden. Das Session-Cookie hat das Problem nicht.

    Wobei ich anmerken möchte, dass eine simple PHP-Session in den meisten Fällen absolut ausreicht und theoretisch auch sicherer umgesetzt werden kann (über ein HttpOnly-Cookie vs. den JWT z.B. im localStorage des Browsers).


    JWT ist sinnvoll für die Verwendung zwischen verteilten Systemen, aber für eine einfache SPA unter der gleichen Domain wie die API eher Overkill. Alleine weil man Token refreshing noch ordentlich umsetzen muss.

    Also diese Anleitung ist etwas konfus.

    Zitat

    you want your root domain (your A record)

    Zitat

    you want your subdomains (your CNAME records)

    Ob Root- oder Subdomain hat nichts mit dem Record Type zu tun. Wenn der Shop nur auf shop.xyz.com erreichbar sein soll solltest du auch nur für die Subdomain "shop" Records anlegen. Dann kann nichts kaputt gehen. Letztlich sollte der Schritt mit dem CNAME-Record auf "shop" wie von dir erledigt ausreichen.

    mem89 “Modernere“ Passwortmanager wie 1Password oder Bitwarden können problemlos mit mehreren und auch Teil-URLs (*.domain.de) umgehen. Ich fülle auf Webseiten zu 99% Zugangsdaten per Tastenkombination aus und auch auf dem Smartphone geht das mittlerweile sehr komfortabel. Kann ich nur jedem empfehlen!

    Hi,


    du solltest auf gar keinen Fall SQL-Statements vom Client zulassen. Sobald ein Angreifer einmal in deinem Quellcode gesehen hat wie's geht kann er ja sonst auch mit anderen Tools solche Abfragen auf deine Datenbank starten.


    Stattdessen sollte dein PHP-Code die Anfragen selbst formulieren und nur einzelne Informationen vom Client darin mit aufnehmen. Diese Daten sollten auch escaped werden, um dich vor SQL Injection zu schützen, bzw. am besten werden prepared statements verwendet.


    Wenn dir das noch nicht weiterhilft, zeig doch vielleicht mal ein bisschen Code, dann kann man konkretere Tipps geben :)

    ich installiere und administrieren alle meine server ausschließlich mit bash scripten. [...] das geht mit andible sicher genau so gut, wenn nicht sogar besser

    Mit Sicherheit. Ich habe mich vor 2-3 Jahren mit ansible beschäftigt und meine Installationen in Configs gegossen, seitdem diverse Server damit in Sekunden neu aufgesetzt. Jetzt seit Debian Buster klappts auf einmal nicht mehr, irgendwelche unterschiedlichen/falschen Python-Versionen kommen sich in die Quere, nichtssagende Fehlermeldungen und vor Monaten bestellte netcup-Server liegen immer noch ausgeschaltet rum weil ich noch nicht die Zeit hatte alles wieder gradezubiegen. Achso, irgendwann müsste ich auch die drölf Deprecation-Warnings mal angehen die seitdem munter aufgetaucht sind. Mit anderen Worten, am besten ich mache wohl alles noch mal neu ||


    Oder steige auf Bash-Skripte um. Manchmal ist der einfache Weg vielleicht doch der bessere. Als Software-Entwickler kenne ich es nur zu gut, dass sich eingesetzte Sprachen und Frameworks weiterentwickeln und man hin und wieder Anpassungen vornehmen muss. Als hauptberuflicher Sysadmin würde ich das sicher auch problemlos mit ansible machen. Bin aber keiner, also brauche ich vielleicht ein Tool, das besser zu mir passt.

    wollte mir aber vorerst kein neues Smartphone besorgen und ggf. auf die neuen iPhones warten.

    Dienstag ist ja schon die Keynote. Über die neuen iPhones ist so gut wie alles wichtige schon geleaked und man wird vermutlich ab nächste Woche irgendwann bestellen können. An den bekannten Details der iPhones kannst du ja festmachen ob du dir eines kaufen möchtest und dementsprechend die Watch Sinn macht ?

    Heute wollte ich von der Firma aus Internetarbeitet, wo die Firma Domains hat, auf den Markt begleiten und bekomme dauernd Wolkenflimmern 522 Seite oder Timeouts zu sehen.

    Die twitterten gestern was von einem DDoS-Angriff auf deren Systeme. Wird sicher damit zusammenhängen.

    Ich finde den Clickbait des Buttons "alle zulassen" schon extrem. Die Option für, "meine aktuelle Auswahl zulassen" sucht man immer vergebens, teilweise ist das nur ein Textlink oder ein roter Button.

    Ich war neulich auf einer Seite, die tatsächlich 20-30 Sekunden (!) gebraucht hat, um meine Auswahl, nur die notwendigen Cookies zu setzen, abzuspeichern (ja, das war ganz sicher aus technischen Gründen so notwendig)... Andere Seiten lassen sich gar nicht erst mehr benutzen wenn man in der Cookie-Abfrage diese Auswahl trifft, lassen einem aber gütigerweise die Option offen seine Entscheidung noch abzuändern. Es ist so absurd.

    Letztens habe ich auch die Nameserver geändert und musste dabei zunächst auch den DNSSEC-Eintrag löschen. Ende vom Lied war, dass kurzzeitig die neuen Nameserver eingetragen waren, dann aber wieder plötzlich die alten. Obwohl bei netcup im CCP die neuen Nameserver standen.

    Frage in die Runde: Findet ihr sowas nicht auch ein wenig ... bedenklich? Ich hatte letztens auch den Fall, dass eine Nameserveränderung nicht übernommen wurde (von netcups Servern hin zu eigenen). Die Zone wurde bei netcups Nameservern trotzdem abgeschaltet, Folge: Domain nicht mehr erreichbar. Der Support meinte daraufhin sinngemäß "Sorry, kann passieren". Ich bin eigentlich der Meinung, dass das ein No-Go ist. Solche Probleme sollten sich durch saubere technische Umsetzung ausräumen lassen. Oder sehe ich das zu kritisch? Bei anderen Anbietern hatte ich solche Probleme nie.


    Die Konsequenz ist halt, dass ich mich auf die Angaben im CCP nicht verlassen kann. Über die Reseller-API könnte ich mir jetzt ein Monitoring realisieren, sprich: Ein regelmäßiger Abgleich der NS im CCP mitden tatsächlich hinterlegten NS der Domain. Bei Kontakt-Handles hatte ich das Problem aber auch schon, und da wird das Monitoring schwieriger, da ich z.B. bei der denic gar nicht an die Kontaktinformationen komme wenn mir die Domain nicht selbst gehört.

    Zum Thema Snapshots habe ich auf Anhieb folgendes gefunden: https://forum.netcup.de/admini…pshot-behalten/#post77176

    Sprich, wenn der Server mittels ISO-Mount manuell neu installiert wird bleiben die Snapshots, ansonsten nicht.

    Gitlab und Nextcloud sollte kein Problem sein da diese (noch) ohne Docker laufen.
    Bei Docker muss ich mich noch einlesen wie ich volumes + container exportiere.

    Ehrlich gesagt finde ich die Migration von Services, die in Docker laufen, wesentlich einfacher als sonst. Bei klassischen Installationen gibt es Abhängigkeiten auf Dienste, die auf dem Zielsystem aufgrund von anderer Distro oder Version unterschiedlich sein könnten, und die Configs und Daten sind über das ganze System verstreut. Mit Docker-Setups ist das anders, selbst ein komplexes System wie Mailcow mit diversen Diensten ist mit wenigen Anweisungen auf ein anderes System kopiert und lässt sich dort einfach starten. Ich habe selbst vor nicht allzu langer Zeit das in der Mailcow-Doku beschriebene Verfahren angewandt, das ist wirklich einfach und schnell gemacht.

    Im nächsten Schritt würde ich den Server herrunterfahren und ein Snapshot erstellen.

    Snapshots dürften beim Neuinstallieren des Servers gelöscht werden soweit ich mich erinnere.


    Ich würde mir bei so einem Umzug grundsätzlich pro Anwendung die Doku anschauen wie eine Migration empfohlen/beschrieben wird. Mailcow hat z.B. etwas dazu in der Doku, GitLab und Nextcloud bestimmt auch.

    gestern haben wir die Domain umgezogen

    steht, dass ich keine Mailkonten hätte. Vorher waren da mehrere Mailkonten.

    Wir sehen nicht ein, netcup für diesen schlechten Service noch zu bezahlen.

    Ich fasse zusammen:

    1. Domain wird von netcup weg zu einem anderen Anbieter umgezogen
    2. Man wundert sich, dass die Domain und zugehörige Daten auch tatsächlich in netcups Systemen gelöscht werden (weil ein Mailkonto ja ohne die entsprechende Domain so viel Sinn macht ...)
    3. netcup ist schuld (natürlich)

    Hab ich das richtig verstanden? Dann sitzt das Problem ja ziemlich eindeutig Zuhause vorm Monitor und nicht bei netcup. Unabhängig davon kann ich empfehlen, von Daten die man nicht verlieren möchte hin und wieder eine Sicherungskopie anzulegen ... das kann auch beim neuen Anbieter, wer immer das ist, nicht schaden ;)

    Ich nehme an es geht um Webhosting? Falls ja, sind die Mailkonten noch in der Verwaltungsoberfläche für E-Mails sichtbar? Wenn ja sollten die Mails auch noch da sein. Wenn nicht (sprich wenn die Daten beim Umziehen der Domain gelöscht wurden) würde ich mich an den Support wenden, evtl. gibt es ein Backup der Daten.

    Witzig, ich suche derzeit eine Wohnung um innerhalb Aachens umzuziehen. Wohne derzeit in Burtscheid und würde am liebsten hier auch bleiben wenn sich was passendes findet.

    monster010 Ich wäre dann interessiert an Erfahrungsberichten ob's geklappt hat. Ich kann mir nämlich nicht vorstellen, dass eine daemon-lose Lösung wirklich funktioniert. Auch bei der genannten Lösung mit der Endlosschleife wird der Prozess ja je nach Umgebung in Timeouts laufen.

    Es gibt auch gut funktionierende Möglichkeiten über SSE als Alternative zu WebSockets, wenn PHP verwendet wird braucht man dafür allerdings einen zusätzlichen, permanent laufenden, Prozess (damit würde das z.B. nicht auf einem netcup Webhosting laufen). Siehe z.B. https://github.com/dunglas/mercure

    Man sendet dann über einen POST-Request vom PHP-Skript aus die Nachricht an diesen Server und der schickt es an alle verbundenen Clients weiter.