Skip to content

Übersicht wichtiger und praktischer Postfix Befehle und Sicherheitseinstellungen

Zum Wochenende eine kleine Übersicht praktischer Postfix Befehle, damit es mit dem eigenen Mailserver oder Mailrelay besser klappt.

postfix

Übersicht Postfix Befehle

Installierte Version anzeigen

sudo postconf mail_version

Eigene Konfiguration anzeigen

sudo postconf -n

Standard Konfiguration anzeigen

sudo postconf -d

Mailwarteschlage anzeigen

sudo mailq

Anzahl der Mails in der Warteschlange anzeigen

sudo mailq | tail -1

Mailqueue abarbeiten

sudo postqueue -f

Einzelne Mails löschen

sudo postsuper -d QueueID

Alle Mails aus der Queue löschen (Vorsicht walten lassen)

sudo postsuper -d ALL

Mails in tabellenform anzeigen

sudo qshape

Einzelne Mail ansehen

sudo postcat -q QueueID

Bestimmte Mails einer Adresse löschen

postqueue -p|grep 'email@beispiel.de'|awk {'print $1'} | grep -v "(host"|tr -d '*!'|postsuper -d -

Postfix Logs ansehen (Ubuntu)

sudo tailf /var/log/mail.log

Mail Queue in Textdatei umleiten

sudo mailq > /tmp/mailtext.txt

Postfix Konfiguration neu laden

sudo systemctl reload postfix

Mails auswerten und Statistiken erstellen

Hier Verweise ich auf den Pflogsumm Artikel, welcher immer noch Gültigkeit hat.

sudo apt install pflogsumm 

qshape

Sicherheit und Härtung der Postfix Einstellungen

Damit die Konfiguration passt, hier eine Übersicht sinnvoller Einträge für die main.cf.

#SMTP daemon absichern - Mailempfang
 smtpd_tls_security_level = may
 smtpd_tls_mandatory_ciphers = high
 smtpd_tls_mandatory_protocols = !SSLv2, !SSLv3
 smtpd_tls_protocols = !SSLv2 !SSLv3
 smtpd_tls_exclude_ciphers = aNULL, eNULL, EXPORT, DES, RC4, MD5, PSK, aECDH, EDH-DSS-DES-CBC3-SHA, EDH-RSA-DES-CBC3-SHA, KRB5-DES, CBC3-SHA
#SMTP absichern - Mailsender
 smtp_tls_protocols = !SSLv2, !SSLv3
 smtp_tls_security_level = may
 smtp_tls_mandatory_ciphers = high
 smtp_tls_mandatory_protocols = !SSLv2 !SSLv3
#Einstellungen für relaying
  smtp_sasl_auth_enable = yes
  smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
  smtp_sasl_security_options = noanonymous
#Verify wird nicht benötigt
  disable_vrfy_command=yes
#Interface auf lokal schalten
  inet_interfaces=127.0.0.1
#Ipv6 abschalten wenn nicht benötigt
  inet_protocols = ipv4
#Serverbegrüßung einschalten
  smtpd_helo_required=yes


 Logjam in Postfix verhindern

Um die Logjam Lücke zu schließen, muss der Diffie Hellmann Key Exchange neu konfiguriert werden. Dazu wird folgendes generiert.

sudo openssl dhparam -out /etc/postfix/dhparams.pem 2048

Danach muss der Parameter nur noch in die main.cf eingetragen werden.

smtpd_tls_dh1024_param_file = /etc/postfix/dhparams.pem

Sind alle Einstellungen gesetzt und die Konfiguration neu geladen kann getestet werden.

posttls-finger

Verschlüsselte Verbindung eines Postfix Servers testen

Um eine Verbindung zu überprüfen bietet sich das Tool posttls-finger an, damit erspart sich ein Admin eventuell das Anpassen von Logeinstellungen oder die Verwendung von Telnet.

sudo posttls-finger smtp.testserver.de

 

apt vs. apt-get - Was ist der Unterschied?

Nicht erst seit Ubuntu 16.04 dürfte der apt Befehl bekannt sein, allerdings hat er seit dem einen höheren Bekanntheitsgrad erreicht.

Doch wo genau liegen die Unterschiede von apt und apt-get?

Beide basieren auf dpkg, dem Paketmanagement von Debian (Debian Package Manager).

APT (Advanced Package Tool) ist nichts weiter als ein Kommandozeilen Tool, welches mit dpkg interagiert. 

aptitude-apt-get-apt-Commands

Um Benutzern die Arbeit mit Paketen einfacher zu machen, wurde apt-get ins Leben gerufen, eine Weiterentwicklung davon ist apt. Beide können als Frontends für dpkg angesehen werden.


Das neuere apt bietet grafische Elemente (es lebe der farbige Fortschrittsbalken) und soll Kommandos wie apt-cache und apt-get unter einem Hut vereinen.

apt-fortschrittsbalken

Überblick apt Befehle

Einen Überblick der alten und neuen Befehle habe ich euch unten zusammengestellt.

apt vs. apt-get
apt Kommando apt-get Kommando Funktion
apt install apt-get install Pakete installieren
apt remove apt-get remove Pakete deinstallieren
apt list --upgradable -- Anstehende Updates anzeigen
apt list dpkg list Pakete auflisten
apt purge apt-get purge Pakete und Konfiguration entfernen
apt update apt-get update Repository aktualisieren
apt upgrade apt-get upgrade Anstehenden Pakete aktualisieren
apt full-upgrade apt-get dist-upgrade Anstehenden Pakete aktualisieren und deinstallieren
apt autoremove apt-get autoremove Nicht benötigte Pakete deinstallieren
apt search apt-cache search Pakete suchen
apt show apt-cache show Paketdetails anzeigen
apt edit-sources -- sources.list editieren

 

Linux - Der Shutdown Befehl

Zum Montag ein wenig Linux Grundwissen, quasi leichte Kost zum Wochenanfang.

Heute will ich euch die wichtigsten Befehle zum optimalen Herunterfahren, Neustarten oder zeitgesteuerten Abschalten von Ubuntu Systemen zeigen.

Der Shutdown Befehl

Das System sofort und dauerhaft anhalten

sudo shutdown -h now

Das System herunterfahren und die Abschaltung erzwingen (100%)

sudo shutdown -P now

Das System neu starten

sudo shutdown -r now

Alternativ geht auch 

sudo reboot

Neustarten des Systems und eine Nachricht 10min vor dem Neustart einblenden

shutdown -r +10 "Server wird bald neu gestartet, bitte abmelden"

Das System in zwei Stunden herunterfahren

sudo shutdown -h 120

Das System zu einer bestimmten Uhrzeit herunterfahren

sudo shutdown -h 23:00

Den Shutdowntimer vorzeitig beenden

sudo shutdown -c

Einen Remote Server neustarten

ssh root@server.de /sbin/shutdown -r now

Die letzten Neustarts des Systems anzeigen

last shutdown

oder

last reboot 

Nun sollte eigentlich Nichts mehr schief gehen

Linux - Dstat Monitor vereint netstat, vmstat, iostat und ifstat

Aktuelle Messdaten sind bei jedem System interessant, egal ob Linux oder Windows. Bei ersterem gibt es für eine schnelle Überprüfung diverser Messwerte nützliche Kommandozeilen Tools.

Da wäre vmstat für RAM und CPU Werte, iostat für Schreib- und Lesezugriffe, netstat für den Netzwerkverbindungen und ifstat für den Netzwerkdurchsatz.

Beim Einsatz aller Tools erhält der Anwender verschiedene und verteilte Ausgaben. Viel praktischer wäre eine Gesamtausgabe alle überwachten Daten.

Dstat 

Hier kommt Dstat ins Spiel. Das kleine Programm vereint wichtige Tools unter einer Haube und erlaubt es den Überblick über die Systemwerte zu behalten.

Installiert ist das Programm mit einem Befehl

sudo apt-get install dstat 

Gleiches gilt für den ersten Start, hier müssen nicht zwingend weitere Parameter angegeben werden, ein einfaches "dstat" genügt

dstat

Neben der Standardausgabe beherrscht das Tool noch einiges mehr. Die volle Befehlspalette kann mit "dstat --help" abgerufen werden. Hier ein paar Befehle in der Übersicht

  • -l  --> load stats aktivieren
  • -m --> memory stats aktivieren
  • -s --> swap stats aktivieren
  • -nocolor --> no colors
  • -s --> swap stats aktivieren
  • --socket --> socket stats aktivieren
  • --tcp --> tcp stats aktivieren
  • --udp --> udp stats aktivieren
  • --unix --> unix stats aktivieren
  • --vm --> vm stats aktivieren
  • --output --> in Datei speichern

Neben üblichen Kommandos stehen Plugins zur Verfügung, welche wichtige Funktionen bündeln. Plugins lassen sich mit "ls -l /usr/share/dstat" auflisten. Brauchbare wären beispielsweise

  • -top_mem
  • -top_cpu
  • -freespace
  • -disk-util

So lassen sich schnell einfache Befehle zusammenstellen, die für den Alltag nützlich sind. Hier zwei Beispiele

dstat -c -s -l --proc-count --top-mem

dstat –output stats.csv -cdnm

3 gute Quellen für Linux Befehle, Beispiele oder Codeschnipsel

Im Linux Bereich zählt nicht der Klick auf irgendwelche Fenster, sondern eher der Konsolenbefehl. Oft kommt es vor, dass die Shell Befehle nicht sofort parat sind oder die Ausführung eines Kommandos durchaus lang und verwirrend wird.

Wie so oft im Leben, machen es in diesem Fall Beispiele dem Anwender oftmals leichter, den Ausdruck nachvollziehen zu können. Darum möchte ich hier drei Webseiten vorstellen, die Codebeispiele für Shellbefehle auflisten, das Kommando selbst erklären oder einfach als Nachschlagewerk dienen.

So praktisch diese folgenden Tipps auch sein mögen, der gute "man" Befehl führt in den meisten Fällen am schnellsten zum Erfolg.

commandlinefu

Die Webseite commandlinefu.com versteht sich als Sammelstelle für die häufigsten und praktischsten Shell Befehle.  Die Anwender können ihre besten Kommandos einstellen oder für vorhandene voten.

So entstehen nützliche Best of Listen. Der beliebteste Befehl zurzeit ist "sudo !!", dieser führt den letzten Befehl mit root Rechten aus.

commandlinefu

ExplainShell

Bei ExplainShell handelt es sich in diesem Sinne nicht um ein User Repository, sondern eine visuelle Aufschlüsselung der vorhandenen Manuals. So lassen sich lange Befehlsketten in die einzelnen Kommandos aufschlüsseln. Um die Sammlung möglichst vollständig zu halten, wurden 29761 Manpages eingelesen.

explainshell

linux-commands-examples

Eine weitere Seite, welche zahlreiche Linux Befehle samt Beispielen listet, ist linux-commands-examples.com. Hier kann entweder nach dem gewünschten Begriff, inklusive Beispiel, gesucht oder per Liste auf die zahlreichen Beispiele zugegriffen werden.

Linux_befehle_beispiele