Warum ich meine Webapp nicht mit dotnet/C# und MSSQLentwickle
Eigentlich wollte ich eine Webapp „Hackinator“ mit dotnet/C# schreiben, die Installation/Konfiguration auf meinem Ubuntu 18.04 vServer wurde mir dann aber doch zu zeitaufwendig/kompliziert. Laut einer schnellen Recherche hätte ich für die Authentifizierung noch kerberos/unixodbc für Ubuntu Linux installieren/konfigurieren müssen, für mich ein absoluter Overkill, wollte doch nur mal eben schnell eine kleine Webanwendung deployen. Deshalb richte ich jetzt eine Entwicklungsumgebung mit Docker, PostgreSQL und Python ein, die fühlt sich unter Linux vermutlich wohler.
Falls ihr einen einfachen Weg kennt dotnet und MSSQL unter Linux zu betreiben schreibt es mir gerne in die Kommentare.
Die Vorgehensweise wie man eine IP Adresse ändert, variiert je nach Ubuntu Version sehr stark, hier ist ein möglicher Weg für Ubuntu 21.10 beschrieben:
ASP.NET Core Webanwendnungen kommen ohne JavaScript, das kann in pucto IT-Sicherheit ein Vorteil sein.
Benutzer-Login erstellen
Im Visual Studio „ASP.NET Core Webanwendung (Model-View-Controller / MVC)“ erstellen
bei Authentifizierung „einfache Konten“ auswählen, hiermit wird automatisiert der Quellcode einer Userverwaltung generiert
Im sog. Entity Framework steht der Quellcode zur Erstellung der Datenbank, unter „“Data – Migrations – …CreateIdentitySchema.cs“, d.h. die Datenbank und Tabellen werden im Quellcode vorbereitet (sog. „Code First Workflow“), desweiteren lässt sich die Migration wie bei einer Versionverwaltung (bspw. GIT) rückgängig machen
mit „update-database“ wird die Datenbank und Tabellen angelegt
Im „SQL Server-Objekt-Explorer“ sollten jetzt die Tabellen erscheinen
Anwendung erstellen
Was ist das MVC (Model View Controller Pattern)?
Schema/Bauplan zur Erstellung von Anwendungen.
Model ist die Programmlogik, welche Daten zum Controller transferiert.
View ist die für den User sichtbare Benutzeroberfläche (GUI).
Controller führt die Programmlogik und die Daten der View aus und ist das Bindeglied zwischen Model und View.
Seiten Routing im Controller anpassen
Durch den Parameter (String) „Index“ wird die Privacy Seite jetzt auf die Index Seite geroutet/umgeleitet.
Die Startseite kann in der Methode „app.MapControllerRoute“ angepasst werden.
Neue Seite „ProjectsWorkflows“ erstellen, hierzu erstellen wir einen separaten Controller „ProjectsWorkflowsControllers“.
Neuen Ordner und Index Seite (View) für den neuen Controller anlegen:
Quellen (sehr zu empfehlen)
Raspberry Pi und Pi-Hole installieren
Raspberry Pi mit Pi-Hole installieren
Schritt 1
Raspberry Pi Imager unter https://www.raspberrypi.com/software/ runterladen und OS auf SD Karte schreiben.
Schritt 2
SSH aktivieren in raspi-config
Schritt 3
Pi-Hole installieren:
curl -sSL https://install.pi-hole.net | bash
Schritt 4
Quad9 (DNSSEC) wählen
Nachdem der Pi-Hole fertig installiert wurde, kann er im Router als DNS Server konfiguriert werden, dann senden alle Geräte im Netzwerk die DNS Anfragen an den Pi-Hole. Alternativ kann jedes Netzwerkgerät die IP des Pi-Hole als DNS Server eintragen, dann wird nur das konfigurierte Gerät über den Pi-Hole geleitet.
Was ist IT-Sicherheit?
Virenschutz
Laut Bundesamt für Informationstechnik (BSI) ist ein Virenscanner auf einem Computer unerlässlich, da die Bedrohungslage steigt und Schadsoftware immer intelligenter wird, bspw. die Schadsoftware (Trojaner) Emoted, welcher es auf Einzelpersonen, Unternehmen und Regierungseinheiten abgesehen hat. In Windows ist bereits ein kostenloser Virenschutz namens „Defender“ integriert, welcher KI-gestützt Schadsoftware und Randsomware bekämpft, und laut PC-Magazine-Tests gute Dienste leistet.
Updates
Updates schließen Sicherheitslücken resp. Einfallstore für Schadsoftware (Maleware) und sollten regelmäßig installiert werden. Privatpersonen laden sich die Windows Updates meist direkt aus dem Internet herunter. In mittleren und großen Unternehmen erfolgt dies dagegen meist über die Windows Software Update Service (WSUS). Updates werden zunächst auf den WSUS Server geladen und die Clients beziehen diese vom WSUS, dadurch wird der Internet Traffic reduziert desweiteren lässt sich gezielt einstellen, welche Updates vom WSUS runtergeladen werden können bspw. nur Security Patches. Updates können zunächst nur an Test Computer verteilt werden etc. Sie sehen, WSUS ist ein sehr professionelles Tool zur Verteilung von Windows Updates. Neben WSUS gibt es noch viele andere Software-Anbieter für das Patchmanagement, aber in Active Directory Umgebung fügt sich WSUS nahtlos ein.
Firewall
Eine Firewall soll den Computer vor Angriffen aus dem Netzwerk schützen. Im Betriebssystem Windows ist bereits eine kostenlose Firewall integriert. Standartmäßig werden ausgehende Verbindungen und dessen eingehende Antwort zugelassen. Vom Internet kommende eingehende Verbindungen müssen explizit erlaubt werden, ansonsten werden sie von der Windows Firewall blockiert. Dies bedeuted, dass die Windows Firewall meist im Hintergrund ohne manuelle Eingriffe ihren Dienst verrichtet.
Passwörter
Passwörter sollten möglichst komplex sein und für jeden Dienst/Zugang sollte ein separates gewählt werden. Ein komplexes Passwort besteht aus mind. 10 Zeichen, Klein- und Großbuchstaben sowie Sonderzeichen und Zahlen. Das bedeuted die Bitlänge sollte möglichst lang sein, damit es nicht per Zufallsgeneratoren (sog. Bruteforce Attacken) oder Erraten geknackt werden kann. Ein Passwort sollte immer geschützt gespeichert werden, bspw. in einem Passwortmanager wie KeePass.
2-Faktor-Authentifizierung
Die Zwei-Faktor-Authentifizierung (auch Authentisierung) (2FA) ist ein Identitätsnachweis bestehdn aus zwei Komponenten (Faktoren). Meist ist der 1. Faktor das Passwort und der 2. Faktor eine Smartphone-App in der das Passwort etwas per Fingerprint bestätigt werden muss. 2FA ist heutzutage für schützenswerte Zugänge (VPN, Online Banking etc.) unerlässlich.
Backup
Daten müssen nach einem Datencrash oder Vireninfektion schnell wieder hergestellt werden können, sonst kann dies zu erheblichen finanziellen Verlusten führen.
Buchempfehlungen IT-Sicherheit
Diese Bürcher habe ich mir selbst gekauft und gelsen und kann sie empfehlen. Anbei die Werbe-Links für die Bestellung bei Amazon, wenn ihr darüber bestellt bekomme ich eine kleine Provision.