Skip to content

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

 

Sie haben das Recht auf Zugriff - Online Chmod Generator

Chown, chmod, chgrp sind wohl die bekanntesten Befehle, wenn es darum geht Zugriffsrechte von Dateien oder Ordnern auf Linux Systemen zu setzen.

Solche Berechtigungen werden oft direkt über die Konsole gesetzt und erfordern etwas Übung mit den Kommandos aus den coreutils, speziell mit CHMOD.

Chmod-Calculator-Chmod-Generator

CHMOD Generator - Datei Berechtigungen klicken

Im Prinzip ist das Zusammenspiel von u (Besitzer), g (Gruppe) und o (Andere) mit Lesen (4), Schreiben (2) und Ausführen (1) kein Hexenwerk, kann aber dennoch verwirren.

Damit nicht pauschal Rechte für Alles und Jeden vergeben werden (777 oder rwxrwxrwx) sollte immer darauf geachtet werden, welche Berechtigungen im System gesetzt sind oder werden.

Der CHMOD Calculator bietet hier eine gute Hilfestellung, da sich die benötigte Konfiguration einfach klicken lässt und dazu noch ausführliche Erklärungen liefert

Fallstricke wie Setuid and Setgid werden auf der Webseite ebenfalls beschrieben und sollten jedem zu einem einfacheren Umgang mit "Change Mode" verhelfen.

CHMOD Calculator

Zeig mir deine Ports - netstat oder ss

Das Netzwerkdiagnose Tool netstat gehört zum Standardrepertoire vieler Administratoren. Die Netzwerkstatistiken sind aus den 90er Jahren und ermöglichen unter Linux eine Auflistung offener Ports oder TCP/UDP Verbindungen.

Da das Tool nur auf der Kommandozeile existiert wird es jedem Windows Nutzer wohl nicht unbedingt bekannt sein (eher TCPView), aber auch hier ist es integriert und kann ähnlich wie unter Linux verwendet werden.

Folgender beispielhafte netstat Befehl zeigt unter Linux die relativ nützliche Funktion des Tools.

netstat -lnp

Zur Erklärung: Das -l listet die Verbindungen auf, wobei -p PID bzw. den Programmnamen auflistet und -n eine nummerische Ausgabe der Ports forciert

PS: Unter Windows lässt sich eine ähnliche Ausgabe mit netstat -an erreichen.

netstatWeiter möchte ich auf netstat aus dem net-tools Paket nicht eingehen. Erstens gilt es als veraltet (aber beliebt) und zweitens dürften die Funktionen den meisten bekannt sein. Darum ein kurzer Blick auf die Alternative.


ss - socket statistics

Wie bereits oben erwähnt, ist netstat schon etwas älter. Mit den socket statistics existiert ein weiteres und neueres Tool, welches ähnliche Funktionen bietet.

Die Funktionsweise ist den netstats angelehnt, was am folgenden Beispiel zu erkennen ist.

ss -ln

Hier steht das -l für alle bestehenden Verbindungen, das -n listet Portnummern statt Namen auf.

Die Verwendung von -n beschleunigt zusätzlich die Ausgabe, da keine Hostnamen aufgelöst werden müssen.

Weitere praktische Befehle sind ebenfalls möglich:

ss -lt

Dieser Befehl listet bestehende tcp Verbindungen auf.

ss -lu

Dieses Kommando listet bestehende udp Verbindungen auf, mit -lua lassen sich alle Verbindungen anzeigen.

ss -p

Wie bei netstat werden hier die Prozess IDs (PID) gelistet.

ss -s

Abschließend bietet -s einen Überblick über alle Verbindungen (siehe Screenshot)

ss

Neben diesen eher alltäglichen Befehlen bietet ss viele weitere Möglichkeiten das Netzwerk zu untersuchen.

So besteht die Möglichkeit der Filterung nach Zieladresse (ss -nt dst 192.168.11.232) oder bestimmten Ports (ss -nt '( dst :443)') bestehenden IPv4 Verbindungen (ss -t4 state established) oder nur IPv6 (ss -tl6).

ss Befehlsübersicht

Einen Überblick aller Befehle verschafft ihr euch unter man ss oder via help (siehe Screenshot). 

ss-befehl

Sollten die Socket Statistics nicht auf dem System verfügbar sein, sollte das Paket iproute2 nach installiert werden.

Fazit

Alleine schon wegen des Alters von netstat und der nicht mehr vorhandenen Paketaktualisierung rückt Socket Statistics in den Vordergrund. 
Durch die Mehrzahl an Funktionen, sollten sich auch Nostalgiker langsam aber sicher auf das moderne Tool einstellen.

Manche Funktionen kann aber auch die neue Alternative nicht ersetzen, so muss für netstat -r auf iproute umgestiegen werden, da ss dies nicht mehr unterstützt.
 

Security Distributionen - Parrot 3.7 und BackBox 5 mit Neuerungen

Nach kurzer Auszeit möchte ich euch noch die aktuellsten Security Distributions Updates nachreichen

Parrot 3.7 - Produktpflege

Frozenbox Network hat eine neue Version 3.7 veröffentlich und hautpsächlich Produktpflege betrieben.

parrot

Der Kernel wurde auf 4.11 angehoben und das Basissystem ist Debian 10 Codename Buster, welches noch nicht offiziell veröffentlicht wurde.
Allerdings steht schon wieder ein Wechsel auf Devuan im Raum (Dabei handelt es sich um einen Fork ohne systemd), hier gibts es bis zum nächsten Release noch Klärungsbedarf unter den Entwicklern.
Optisch sticht das neue ARC Theme ins Auge, des weiteren wurde der Auto Updater überarbeitet und zeigt nun System Updates an.

Download Parrot

BackBox 5 - Neuer Auftritt

backbox5

BackBox wurde nach einigen Monaten Entwicklungszeit ein neues Logo und eine neue Versionsnummer geschenkt, was zusammen mit dem neuen Kernel 4.8 aber auch schon die größten Änderungen sind.
Mitgelieferte Tools und Programme wurden natürlich auf einen aktuellen Stand gebracht. Basis bleibt das nicht mehr ganz aktuelle Ubuntu 16.04.2 LTS.

Download Backbox


Bleibt noch die aktualisierte Übersicht, der hier bereits erwähnten Systeme.

Übersicht forensische Distributionen 08/17

 

Name Version Tools Besonderes Basis GUI
Autopsy 4.0 ??? The Sleuth Kit Windows  
BackBox 5 70+ eigenes Repo Ubuntu Xfce
BlackArchLinux 2017-03 1700+ ArchLinux ArchLinux Gnome
CaINE 5 100+ WinUFO Ubuntu Mate
DracOS 2.1 100+ CLI LFS DWM
DEFT Zero 250+ Dart2 Lubuntu 14.04 Lxde
Kali Linux 2017.1 300+ ARM fähig Debian Multi
LionSec 5.0 ???   Ubuntu  
Matriux v3 RC1 300+ out of date Debian Gnome
NST 24 ??? Server integriert Fedora  
NetSecLOS 6.0 50+   OpenSuse Lxde
Paladin 6.0 30+   Ubuntu  
Parrot Security 3.7 700+ Cloud fähig Debian Jessie MATE
Pentoo 2015.0 RC5 ??? 64bit Gentoo Xfce
Ronin   150+ out of date Lubuntu Lxde
Sans SIFT 3.0 20+   Ubuntu  

ssh_scan – Sicherheits- und Konfigurationsscanner für SSH Einstellungen

Mit SSH Audit hatte ich bereits vor einiger Zeit ein Tool im Programm, welches SSH auf Einstellungen und Konfiguration testet (Artikel).

Mozilla hat mit ssh_scan ein ähnliches Tool im Portfolio. Das Tool bezieht sich auf die eigenen SSH Guidelines und prüft hinterlegte Ciphers, MACs, und Kex Algorithmen.

Laut eigener Aussage zählt zu den Vorteilen des Tools die einfache Installation ohne allzu viele Abhängigkeiten. Das Programm ist portabel, lässt sich mit eigenen Regeln konfigurieren und wirft am Ende einen Report im JSON Format aus.

Zunächst muss ssh_scan aber erst einmal den Weg auf die Festplatte finden.

Installation unter Ubuntu 16.04 LTS

Für die Installation steht neben einem ssh_scan gem Paket auch ein Docker Container zur Verfügung.

sudo apt-get install ruby gem
sudo gem install ssh_scan

oder via Docker

docker pull mozilla/ssh_scan
docker run -it mozilla/ssh_scan /app/bin/ssh_scan -t example.com

oder froM Source

git clone https://github.com/mozilla/ssh_scan.git
cd ssh_scan

gem install bundler
bundle install

./bin/ssh_scan

SSH Scan im Einsatz

Die SSH-Prüf-Anwendung ist denkbar einfach zu bedienen, es lassen sich einzelne Host scannen, ganze Ranges oder weitere Parameter angeben.

Eine IP scannen

ssh_scan -t ip-addresse

Mehrere IPs scannen

ssh_scan -t ip-addresse1,ip-addresse2,ip-addresse3

ssh_scan

Adressen aus einer Datei scannen

ssh_scan -f ip-addressen.txt

IP Adressen mit bestimmten Port scannen

ssh_scan -t ip-addresse -p 666

Eigene Policy verwenden

ssh_scan -P intermediate -t ip-addresse

In den Standardeinstellungen wird die Mozilla Modern Policy als Prüfvorlage verwendet. Es lässt sich aber mit der oben erwähnten Option P auch auf Intermediate oder andere Richtlinien prüfen.

Hier als Beispiel die Intermediate Richtlinie:


cat intermediate

# Host keys the client accepts - order here is honored by OpenSSH
HostKeyAlgorithms ssh-ed25519-cert-v01@openssh.com,ssh-rsa-cert-v01@openssh.com,ssh-ed25519,ssh-rsa,ecdsa-sha2-nistp256-cert-v01@openssh.com,ecdsa-sha2-nistp521-cert-v01@openssh.com,ecdsa-sha2-nistp384-cert-v01@openssh.com,ecdsa-sha2-nistp521,ecdsa-sha2-nistp384,ecdsa-sha2-nistp256

Alle SSH_scan Befehle lassen sich über die Hilfe einsehen

ssh_scan -h

 

Fazit

Mozilla bietet mit ssh_scan eine praktische Methode um SSH Einstellungen zu prüfen und zu härten. Dank eigener Policies und vieler weiterer Optionen, wie Reports würde ich das Tool vorziehen, alleine weil das eingangs erwähnte SSH-Audit seit 2016 nicht mehr aktualisiert wurde.

Allerdings empfinde ich die Masse an Paketen, welche mit ruby gem auf dem System landen nicht unerheblich, da ist ein einfaches Python Script schon handlicher. 
Zusätzlich setzt ssh_scan wohl weiterhin auf NIST Kurven wie ecdh-sha2-nistp521,ecdh-sha2-nistp384 und ecdh-sha2-nistp256 welchen ich eher kritisch gegenüber stehe.

Schlussendlich sollte bei solchen Tests immer das Ergebnis genau hinterfragt werden. Das Prüfen von SSH Konfigurationen vereinfachen beide Programme dennoch merklich.

 

ssh_scan