Allgemein

Beiträge, die Allgemein zur IT-Sicherheit gehören.

Vim als einfache IDE nutzen

Vim bringt eigentlich schon alles mit um es als IDE zu nutzen.

Vim bringt eigentlich schon alles mit um es als IDE zu nutzen.

Eine IDE installieren und nutzen kann jeder, aber vim als IDE nutzen? Ich zeige ein paar Einstellungen, Shortcuts und Funktionen von vim, die es zu einer IDE machen. Dabei werde ich keine Plugins und keine Magie nutzen, denn vim kann bereits alles nötige.

Das sind die Funktionen, die ich zeige und um die ich die Standard Konfiguration erweitern werde:

  • Bedienung, die vim schon kann:
    • Standard zeug: Öffnen, speichern, schließen, …
    • Dateiexplorer
    • Tabs öffnen und nutzen
    • Bildschirm teilen
  • Navigation, die vim schon kann:
    • Suchen, ersetzen,
    • Springen (z.B. zum nächsten Vorkommnis, zur Definition, …)
  • Software bauen (build & run)
    • Debugging
  • Mit Anpassungen an vim:
    • Zeilennummern, Syntax highlighting, Cursor-Zeile hervorheben, …
    • Autovervollständigung mit drop-down Menü

Mehr Anpassungen sind das auch nicht.

Grundlegende Bedienung von vim

Das mit dem Modi sollte man schon drauf haben. Hier auch nur ganz kurz das Wichtigste:

  • Datei öffnen (ohne Tabs): :e /path/to/file
  • Datei speichern: :w
  • Datei schließen: :q und wenn du nicht vorher speichern möchtest: :q!
  • Hilfe anschauen: :help Befehl

Eingebauter Dateiexplorer

(mehr …)

CLI-Argumente in Bash-Scripten parsen

Argumente zu parsen ist nicht schwer. Auch nicht in Bash-Scripten.

Argumente zu parsen ist nicht schwer. Auch nicht in Bash-Scripten.

Es gibt viele Möglichkeiten Parameter, die an ein Bash Script übergeben wurden, zu verarbeiten. Hier zwei ähnliche Varianten, die das Parameterschema -o /foo/ und --output=/foo/ behandeln können. Das zweite Beispiel zeigt zudem noch die Verwendung von Kommandos.

String Manipulation mit Bash-Hausmitteln

Falls du mit String Manipulation (z.B. ${var#=*} oder Ähnliches) noch nicht vertraut bist, rate ich dir hier weiter zu lesen. In den folgenden Scripten holen wir uns aus Strings immer einen Teilstring. Der Befehl dabei sieht immer wie folgt aus: ${<VARIABLE><SPLIT-CHARS><REGEX>}

Die Split-Chars definieren was hinterher raus kommt, denn das Ergebnis ist immer ein zusammenhängender String. Von denen gibt es vier verschiedene: (mehr …)

Von Windows zu Linux: Vorurteile und angebliche Hürden

Tux ist das Maskottchen von Linux

Das ist Tux. Tux ist das Maskottchen von Linux

Immer wieder höre ich Leute sagen „Ich steig nicht auf Linux um, das ist mir alles viel zu kompliziert!“ oder „Ne lass ma, Linux ist nur was für Hacker!“. Ich werde hier Aspekte beschreiben, bei denen sich Windows und Linux am meisten unterscheiden. Beim Umstieg werden einem wahrscheinlich diese Punkte und Fragen am ehesten auffallen.

Ich betrachte dabei Distributionen wie Ubuntu, Linux Mint oder Fedora, also benutzerfreundliche Desktop-Systeme. Bei anderen Distributionen kann das natürlich anders aussehen (Arch, Gentoo, etc.).

Dieser Beitrag ist eher für nicht-Techies, als für die Hacker da draußen gemacht (die wahrscheinlich eh schon Linux nutzen).

Ganz kurz: Technische Aspekte bei Linux

Keine Angst, es tut nicht weh.

Linux ist an sich nur der innere Kern vom Betriebssystem (sog. „Kernel„) und heißt eigentlich auch „GNU/Linux“ (bei Windows heißt er „NT“) aber das ist eine andere Geschichte.

Eine Distribution packt dann den Kernel, Programme und ggf. eine Benutzeroberfläche zusammen und vertreibt dieses dann als vollwertiges Betriebssystem, was man sich installieren kann.

Weiterhin alle Programme/Dokumente nutzen?

Viele Programme, die man kennt, gibt es auch für Linux

Viele Programme, die man kennt, gibt es auch für Linux

Ein Kritikpunkt ist immer wieder: „Es gibt ja gar kein Office/Outlook/Skype/dies/das/jenes für Linux!“ Das ist manchmal auch wahr: Microsoft Office zum Beispiel gibt es nicht für Linux. Was aber nicht stimmt ist, dass man dadurch keine docx-Dokumente mehr öffnen kann. LibreOffice ist da dein Freund 😉

Generell gilt: Für viele (wenn nicht sogar alle) Software aus dem Alltag gibt es Alternativen für Linux. Klar, bei Spezialsoftware kann es schwierig werden. Auch aus dem Hause Microsoft gibt es natürlich wenig Unterstützung (was sich so langsam ändert).

Doch jetzt kommts: Man kann auch Windows-Software unter Linux laufen lassen. Es gibt das Programm „wine“ welches es ermöglicht zum Beispiel Photoshop oder auch etwas ältere Spiele laufen zu lassen. Bei mir läuft zum Beispiel Skyrim problemlos unter wine.

Spiele spielen

(mehr …)

Von Frameworks und dem Rad neu erfinden

Man sagt ja immer, dass man nicht jedes mal das Rad neu erfinden soll. Das ist auch gar nicht verkehrt, denn das Rad neu erfinden birgt viele Risiken.

Jedes mal, wenn man eine gewisse Funktion neu implementiert kann es zu Fehlern kommen. Nicht umsonst gibt es bei Sicherheitskritischer Software (z.B. Bibliotheken zur Verschlüsselung) die Regel: Benutzt „abgehangene“ Bibliotheken, schreibt keine eigenen!

Wenn man jedes mal eine neue Implementation anfertigt, ist auch fraglich ob die Performance, Code-Qualität oder Anzahl an Features einer langjährig gepflegten Bibliothek das Wasser reichen kann.

Es kann allerdings auch zum gegenteiligen Effekt kommen: Software, die lange abhängt, ist ggf. in veralteter Technologie geschrieben und vielleicht nicht so effizient wie neuere Bibliotheken, Frameworks, … (mehr …)

FFmpeg: Videos in Vivaldi schauen

Probleme mit Vivaldi ind FFmpeg lassen sich recht leicht lösen.

Probleme mit Vivaldi ind FFmpeg lassen sich recht leicht lösen.

Wer den relativ neuen auf Chromium basierenden Browser Vivaldi benutzt, der wird oftmals das Problem haben, dass Videos nicht abgespielt werden. Öffnet man die Browser eigene Konsole, so erscheint oft nur der Fehler net::ERR_BLOCKED_BY_CLIENT. Dieser weist darauf hin, dass Vivaldi das Video nicht öffnen kann. Meist liegt das an einem veralteten oder fehlenden FFmpeg, genauer gesagt an der Datei libffmpeg.so.

FFmpeg in Vivaldi installieren

Ich habe ein gist angelegt, in dem ich die Schritte bereits beschrieben habe. Hier aber nochmal die Anleitung:

Die Dateien nehme ich aus den Ubuntu-Repository und sind im Paket chromium-codecs-ffmpeg-extra versteckt. Wer also eine auf Debian/Ubuntu basierende Distribution fährt, kann dies Paket installieren und vielleicht löst sich das Problem bereits dort. (mehr …)