Linux „Screen“ Einführung

screen

Haben Sie schon einmal die Situation erlebt, dass Sie eine lang laufende Aufgabe auf einem entfernten Rechner ausführen und plötzlich Ihre Verbindung abbricht, die SSH-Sitzung beendet wird und Ihre Arbeit verloren geht? Nun, das ist uns allen schon einmal passiert, nicht wahr? Glücklicherweise gibt es ein Dienstprogramm namens „screen„, mit dem wir die Sitzungen wieder aufnehmen können.

Einführung

Screen oder GNU Screen ist ein Terminal-Multiplexer. Mit anderen Worten, es bedeutet, dass Sie eine Screen-Sitzung starten und dann eine beliebige Anzahl von Fenstern (virtuelle Terminals) innerhalb dieser Sitzung öffnen können. Prozesse, die in Screen laufen, laufen auch dann weiter, wenn ihr Fenster nicht sichtbar ist, selbst wenn die Verbindung unterbrochen wird.

Linux GNU „Screen“ installieren

Das Bildschirmpaket ist heutzutage auf den meisten Linux-Distributionen vorinstalliert. Sie können überprüfen, ob es auf Ihrem System installiert ist, indem Sie es eingeben:

 $ screen --version
 Output: Screen version 4.06.02 (GNU) 23-Oct-17

Wenn Sie keinen Bildschirm auf Ihrem System installiert haben, können Sie ihn einfach mit dem Paketmanager Ihrer Distribution installieren.

Linux „Screen“ unter Debian und Ubuntu installieren

 $ sudo apt update && sudo apt install screen -y

Linux „screen“ unter Fedora und CentOS installieren

 $ sudo yum install screen

Linux „screen“ starten

Um eine Screen-Sitzung zu starten, geben Sie einfach screen in Ihre Konsole ein:

 $ screen

Dadurch wird eine screen-Sitzung geöffnet, ein neues Fenster erstellt und eine Shell in diesem Fenster gestartet.

Nun, da Sie eine screen-Sitzung geöffnet haben, können Sie eine Liste von Befehlen durch Eintippen erhalten:

 Strg+a ? 

Eine benannte screen-Sitzung starten:

Benannte Sitzungen sind nützlich, wenn Sie mehrere screen-sitzungen ausführen. Um eine benannte Sitzung zu erstellen, führen Sie den Bildschirmbefehl mit den folgenden Argumenten aus:

 $ screen -S session_name Es ist immer eine gute Idee, einen markanten Sitzungsnamen zu wählen.

Arbeiten mit Linux-Screen-Fenstern

Wenn Sie eine neue screen-Sitzung starten, wird ein einzelnes Fenster mit einer Shell darin erzeugt.
Sie können mehrere Fenster (Regionen) innerhalb einer Sreen-Sitzung haben.
Um ein neues Fenster mit dem Shell zu erzeugen, tippen Sie Strg+a c, ihm wird die erste verfügbare Nummer aus dem Bereich 0…9 zugewiesen.

Im Folgenden sind einige Befehle zur Verwaltung von Linux Screen Fenstern aufgeführt:

  • Ctrl+a c – Ein neues Fenster erstellen
  • Ctrl+a " – Alle Fenster auflisten/anzeigen
  • Ctrl+a 0 – Wechsele zu Fenster mit der Nr. 0 (nach Nummer)
  • Ctrl+a A – Aktuelles Fenster umbenennen
  • Ctrl+a S – Aktuelles Fenster in zwei horizontale (Regionen) Splitten
  • Ctrl+a | – Aktuelles Fenster in zwei vertikale (Regionen) Splitten
  • Ctrl+a tab – Umschalten des Eingabefokus auf das nächste gesplittete Fenster (Region)
  • Ctrl+a Ctrl+a – Umschalten zwischen dem aktuellen und dem vorherigen Fenster (Region)
  • Ctrl+a Q – Alle Fenster bis auf das aktuelle mit dem Fokus schliesen
  • Ctrl+a X – Aktuelles Fenster (Region) schliesen
  • Von der Linux screen-sitzung abkoppelnSie können sich jederzeit durch Eingabe aus der Bildschirmsitzung lösen: Ctrl+a d Das Programm, das in der Screen-Sitzung läuft, läuft weiter, nachdem Sie sich von der Sitzung gelöst haben.Wiederherstellen einer laufenden Screen-SitzungUm Ihre Bildschirmsitzung fortzusetzen, verwenden Sie den folgenden Befehl: $ screen -rFalls Sie mehrere screen-sitzungen auf Ihrem Rechner laufen haben, müssen Sie die ID der screen-sitzung nach dem -r Schalter anhängen.
    Um die screen Sitzungs-ID zu finden, listen Sie die aktuell laufenden screen-sitzungen mit auf:

     $ screen -ls 
    Output:  There are screens on:
    19635.pts-0.aveek-desktop   (Detached)
    19666.pts-0.aveek-desktop   (Detached)
    2 Sockets in /run/screens/S-aveek. Wenn Sie sie screen-sitzung 19666.pts-0 wiederherstellen möchten, geben Sie den folgenden Befehl ein:
     $ screen -r 19666

    Linux-Screen anpassen

    Wenn screen gestartet wird, liest es seine Konfigurationsparameter aus /etc/screenrc und ~/.screenrc, falls die Datei vorhanden ist. Man kann
    die Standardeinstellungen von Screen entsprechend unseren Präferenzen mit Hilfe der .screenrc-Datei ändern.

    Grundlegende Linux Screen benutzung
    Im Folgenden finden Sie die grundlegendsten Schritte für den Einstieg in Screen:

    1. Geben Sie an der Eingabeaufforderung Folgendes ein – $ screen
    2. Führen Sie das gewünschte Programm aus.
    3. Verwenden Sie die Tastenfolge Strg-a + Strg-d, um sich von der screen-Sitzung zu lösen.
    4. Um die Screen-Sitzung wieder fortzusetzen geben Sie folgendes ein – $ screen -r

    Fazit

    In diesem Tutorial haben Sie gelernt, wie man Gnu Screen benutzt.
    Jetzt können Sie mit dem Dienstprogramm Screen beginnen und aus einer einzigen Sitzung mehrere Screen-fenster erstellen, zwischen den Fenstern navigieren, screen-sitzungen lösen und wieder aufnehmen.

    Es gibt noch viel mehr über Gnu Screen auf der Seite Screen-Benutzerhandbuch zu erfahren.

    Aternative zu Screen sind Tmux oder Byobu

SO FINDEN SIE DNS EINTRÄGE MIT DEM DIG BEFEHL

Linux Pinguin

dig steht für „Domain Information Groper“ („Abtaster für Domain-Informationen“) und ist ein 
leistungsstarkes 
und flexibles Befehlszeilentool zum Abfragen von DNS-Nameservern.
Es führt DNS Abfragen durch und zeigt die Antworten an, die von den abgefragten Nameservern zurückgegeben wurden.
Die meisten Administratoren verwenden den Befehl dig, um DNS-Probleme aufgrund seiner Flexibilität, Benutzerfreundlichkeit und Übersichtlichkeit der Ausgabe zu beheben.
Sie können verschiedene DNS-Einträge abfragen, z.B. A, AAA, NS, MX, PTR, CNAME, SOA, TXT, SPF, DKIM usw.
Alternativ können Sie DNS-Einträge mit dem Befehl host oder dem Befehl nslookup anzeigen.

Die allgemeine Syntax für den Befehl dig lautet wie folgt:

dig [Optionen] [TYP] [Domainname.de]

So suchen Sie einen Domain-A-Eintrag (IP-Adresse) unter Linux mit dem Befehl dig

$  dig veek.it

; <<>> DiG 9.11.5-P4-5.1-Debian <<>> veek.it
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 36155
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;veek.it.			IN	A

;; ANSWER SECTION:
veek.it.		86400	IN	A	188.68.47.235

;; Query time: 106 msec
;; SERVER: 192.168.178.1#53(192.168.178.1)
;; WHEN: Sa Nov 30 22:28:00 CET 2019
;; MSG SIZE  rcvd: 52

In der ‚ANSWER SECTION‘ (ANTWORT ABSCHNITT) konnen Sie sehen das der Nameserver (NS) von veek.it die IP-Adresse 188.68.47.235 besitzt.

dig verwendete den lokalen DNS-Cache-Server (SERVER), um die angegebenen Domäneninformationen über den Port 53 abzurufen.

Verwenden Sie den Befehl dig gefolgt vom Domänennamen mit zusätzlichen Abfrageoptionen, um nur die erforderlichen Werte des Domänennamens zu filtern.

$  dig veek.it +noall +answer

; <<>> DiG 9.11.5-P4-5.1-Debian <<>> veek.it +noall +answer
;; global options: +cmd
veek.it.		85548	IN	A	188.68.47.235

So suchen Sie einen Domain Nameserver Eintrag unter Linux mit dem Befehl dig

$  dig veek.it NS +noall +answer              

; <<>> DiG 9.11.5-P4-5.1-Debian <<>> veek.it NS +noall +answer
;; global options: +cmd
veek.it.		9781	IN	NS	ns3.domainoffensive.de.
veek.it.		9781	IN	NS	ns2.domainoffensive.de.
veek.it.		9781	IN	NS	ns1.domainoffensive.de.

So benutzen Sie die DNS Rückwärtssuche (Domain Reverse DNS „PTR“) unter Linux mit dem Befehl dig

Geben Sie auch mal die IP-Adresse der Domain mit dem Befehl host ein, um den Reverse-DNS-Eintrag (PTR) der Domain zu ermitteln.

$  dig -x 188.68.47.235 +noall +answer 

; <<>> DiG 9.11.5-P4-5.1-Debian <<>> -x 188.68.47.235 +noall +answer
;; global options: +cmd
235.47.68.188.in-addr.arpa. 84851 IN	PTR	a2feb.netcup.net.

So finden Sie alle möglichen Datensätze für eine Domain unter Linux mit dem Befehl dig

$  dig veek.it ANY +noall +answer

; <<>> DiG 9.11.5-P4-5.1-Debian <<>> veek.it ANY +noall +answer
;; global options: +cmd
veek.it.		84440	IN	A	188.68.47.235
veek.it.		86352	IN	MX	10 mxext1.mailbox.org.
veek.it.		86352	IN	MX	10 mxext2.mailbox.org.
veek.it.		86352	IN	MX	20 mxext3.mailbox.org.
veek.it.		8840	IN	NS	ns2.domainoffensive.de.
veek.it.		8840	IN	NS	ns1.domainoffensive.de.
veek.it.		8840	IN	NS	ns3.domainoffensive.de.

So suchen Sie nur einen Domain MX-Eintrag unter Linux mit dem Befehl dig

$  dig veek.it MX +noall +answer

; <<>> DiG 9.11.5-P4-5.1-Debian <<>> veek.it MX +noall +answer
;; global options: +cmd
veek.it.		86246	IN	MX	10 mxext1.mailbox.org.
veek.it.		86246	IN	MX	10 mxext2.mailbox.org.
veek.it.		86246	IN	MX	20 mxext3.mailbox.org.

So suchen Sie mit einem bestimmten Nameserver (quad9nach einem Domainnamen

$  dig 9.9.9.9 veek.it          

; <<>> DiG 9.11.5-P4-5.1-Debian <<>> 9.9.9.9 veek.it
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 14209
;; flags: qr rd ra ad; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;9.9.9.9.			IN	A

;; AUTHORITY SECTION:
.			500	IN	SOA	a.root-servers.net. nstld.verisign-grs.com. 2019113002 1800 900 604800 86400

;; Query time: 1 msec
;; SERVER: 192.168.190.1#53(192.168.190.1)
;; WHEN: Sa Nov 30 23:06:45 CET 2019
;; MSG SIZE  rcvd: 111

;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 11718
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;veek.it.			IN	A

;; ANSWER SECTION:
veek.it.		84075	IN	A	188.68.47.235

;; Query time: 0 msec
;; SERVER: 192.168.190.1#53(192.168.190.1)
;; WHEN: Sa Nov 30 23:06:45 CET 2019
;; MSG SIZE  rcvd: 52
$  host 9.9.9.9      
9.9.9.9.in-addr.arpa domain name pointer dns9.quad9.net.

Ich hoffe ich konnte ihnen einen kleinen Überblick über die DNS Abfragemöglichkeiten geben. Wenn Sie auf der CLI (Command-Line Interface) man dig eingeben, werden Sie weitere Möglichkeiten entdecken um dig auszureizen.

SO ERSTELLEN SIE EINEN SUDO-BENUTZER UNTER DEBIAN

Debian 10 Buster

Der Befehl sudo (kurz für Super-User do) ist ein Programm, mit dem Benutzer Befehle mit den Sicherheitsberechtigungen eines anderen Benutzers ausführen können, standardmäßig des Root-Benutzers.

Hier zeige ich Ihnen auf der CLI (Command-line Interface / Kommandozeile), wie Sie einem Benutzer sudo-Zugriff gewähren.

Sie können dieses Benutzerkonto verwenden, um Verwaltungsbefehle auszuführen, ohne sich als Root-Benutzer bei Ihrem Debian-Server anmelden zu müssen.

Fügen Sie als root den Benutzer der sudo-Gruppe hinzu

Standardmäßig erhalten Mitglieder der Gruppe ‚ sudo ‚ auf Debian-Systemen sudo-Zugriff. Um einen Benutzer zur sudo-Gruppe hinzuzufügen, verwenden Sie den Befehl ‚ usermod ‚

$  usermod -aG sudo Benutzername

Testen Sie den sudo-Zugriff

Wechseln Sie zum hinzugefügten Benutzer:

$  su - Benutzername

Verwenden Sie nun den Befehl sudo, um den whoami Befehl auszuführen:

$  sudo whoami

Wenn der hinzugefügte Benutzer sudo Zugriff bekommen hat, lautet die Ausgabe des whoami Befehls – root –

Wie benutzt man sudo?

Um sudo zu verwenden, stellen Sie dem Befehl einfach sudo und Leerzeichen voran:

$  sudo apt update

Wenn Sie sudo zum ersten Mal in einer Sitzung verwenden, werden Sie aufgefordert, das Benutzerkennwort einzugeben:

[sudo] password for Benutzername:

Fazit:

Sie haben gelernt, wie Sie einen Benutzer zur Gruppe sudo hinzufügen. Sie können sich jetzt mit diesem Benutzerkonto bei Ihrem Debian-Server anmelden und sudo verwenden, um Verwaltungsbefehle auszuführen.