Zum Inhalt springen

Shellinabox/Konfiguration

Aus Foxwiki
Version vom 31. März 2025, 22:07 Uhr von Dirkwagner (Diskussion | Beiträge) (Textersetzung - „„“ durch „"“)

Shellinabox/Konfiguration

Beschreibung

By default, shellinaboxd listens on TCP port 4200 on localhost

  • For security reasons, I change this default port to a random (i.e. 6175) to make it difficult for anyone to reach your SSH box

Also, during installation, a new self-signed SSL certificate is automatically created under "/var/lib/shellinabox” to use HTTPS protocol

Standardmäßig lauscht shellinaboxd auf TCP-Port 4200 auf localhost

  • Aus Sicherheitsgründen ändere ich diesen Standardport in einen zufälligen (z. B. 6175), um es für jeden schwierig zu machen, auf Ihre SSH-Box zuzugreifen

Außerdem wird während der Installation automatisch ein neues selbstsigniertes SSL-Zertifikat unter "/var/lib/shellinabox" erstellt, um das HTTPS-Protokoll zu verwenden

sudo editor /etc/default/shellinabox

Nehmen Sie die Konfigurationsänderungen wie unten dargestellt vor

# Should shellinaboxd start automatically
SHELLINABOX_DAEMON_START=1

# TCP port that shellinboxd's webserver listens on
SHELLINABOX_PORT=6175

# Parameters that are managed by the system and usually should not need
# changing
# SHELLINABOX_DATADIR=/var/lib/shellinabox
# SHELLINABOX_USER=shellinabox
# SHELLINABOX_GROUP=shellinabox

# Any optional arguments (e.g.extra service definitions). Make sure
# that that argument is quoted
#
# Beeps are disabled because of reports of the VLC plugin crashing
# Firefox on Linux/x86_64
SHELLINABOX_ARGS="--no-beep"

# specify the IP address of an SSH server
OPTS="-s /:SSH:192.168.0.140"

# if you want to restrict access to shellinaboxd from localhost only
OPTS="-s /:SSH:192.168.0.140 --localhost-only"

Sobald Sie die Konfiguration abgeschlossen haben, können Sie den Shellinabox-Dienst neu starten und überprüfen, indem Sie die folgenden Befehle eingeben

sudo systemctl restart shellinabox
sudo systemctl status shellinabox

Lassen Sie uns nun mit dem Befehl netstat überprüfen, ob Shellinabox auf Port 6175 läuft.

sudo netstat -nap | grep shellinabox

Stellen Sie sicher, dass Sie Ihre Shellinabox auf der Firewall sichern und den Port 6175 für eine bestimmte IP-Adresse öffnen, damit Sie aus der Ferne auf Ihre Linux-Shell zugreifen können.

sudo ufw allow 6175/tcp
sudo ufw allow from 192.168.0.103 to any port 6175

Dateien

Bei Verwendung der im letzten Abschnitt beschriebenen SysV-Init-Skripte befindet sich die Konfiguration in der Datei `/etc/default/shellinabox` sowie im eigentlichen Init-Skript `/etc/init.d/shellinabox`

  • Die Funktion der einzelnen Variablen sollte dank der Kommentare selbsterklärend sein

SSL-Verschlüsselung

Warnung

Das Abschalten der SSL-Verschlüsselung führt dazu, dass alle Ein- und Ausgaben (einschließlich Passwörter) unverschlüsselt zwischen Server und Client übertragen werden

  • Es sollte nur erfolgen, wenn andere Mittel zur Absicherung eingesetzt werden

Shellinabox ist so programmiert, dass es immer versucht, eine verschlüsselte Verbindung aufzubauen, wenn dies nicht explizit über die Option `--disable-ssl` ausgeschaltet wird

  • Das dabei selbst generierte Zertifikat führt in der Regel zu Warnungen in Webbrowsern, die nicht überall erwünscht sind
  • Um diese Warnungen zur vermeiden, kann ein gültiges Zertifikat bereitgelegt werden (in der Standardkonfiguration als Datei `certificate.pem` im Verzeichnis `/var/lib/shellinabox`)

Mehr Informationen zur Beschaffung von SSL-Zertifikaten bieten die Wikiseiten zu CA:Zertifizierungsstellen und TLS-Zertifikate:TLS-Zertifikaten

  • Darüber hinaus bietet auch die Manpage zu shellinabox-Option `--cert` weitere Details zur Einbindung der Zertifikatsdateien


Anhang

Siehe auch