Anderen Leuten erlauben, per SSH eine Portweiterleitung zu meinem Linux-VPS durchzuführen

Anderen Leuten erlauben, per SSH eine Portweiterleitung zu meinem Linux-VPS durchzuführen

Ich habe einen Ubuntu VPS, den ich manchmal als SOCKSProxy zum Surfen im Internet verwende. Ich verwende den Befehl zur dynamischen SSH-Portweiterleitung wie folgt:

ssh -fNTC -D 1080 username@vpsIP

Stellen Sie dann den Proxy meines Browsers auf localhost:1080ein SOCKS.

Ich habe einen zusätzlichen Benutzer mit dem Benutzernamen 'Kerle' auf dem VPS, damit ein paar Freunde auch eine SSH-Portweiterleitung durchführen und so etwas wie ein VPN erhalten können (den Netzwerkteil des VPN brauchen wir nicht).

Nun möchte ich meinen VPS wirklich nicht als VPN-Server betreiben und daher gerne bei der SSH-Portweiterleitung oder ähnlichem bleiben.

Wie verhindere ich dieKerleBenutzer daran hindern, eine sichere Shell zu öffnen und Probleme auf dem VPS zu verursachen?

Antwort1

Wie wäre es, die Shell des Benutzers „Dudes“ zu entfernen?

usermod -s /sbin/nologin dudes

oder wenn Ihr Betriebssystem nicht über nologin verfügt:

usermod -s /bin/false dudes

Antwort2

Es gibt einige Möglichkeiten. Aber die einfachste ist wahrscheinlich die Option ForceCommandin sshd_config. Sie lässt die Ausführung von Befehlen nicht zu und wenn sie welche ausführen möchten, wird dieser ausgeführt.

Beispielausschnitt von sshd_config:

Match User dudes  #your dudes user -- you can also match group
  ForceCommand /bin/true

Antwort3

Wenn Sie eine schlüsselbasierte Authentifizierung verwenden (was ich Ihnen dringend empfehle), können Sie über die authorized_keysDatei einschränken, was jeder Schlüssel tun darf.

Die Angabe command="/bin/false"vor dem Schlüssel würde verhindern, dass sie eine Shell oder einen anderen Befehl als den von Ihnen eingegebenen aufrufen authorized_keys.

Sie können noch weitere Einschränkungen festlegen authorized_keys. Eine vollständige Liste finden Sie auf der sshdManpage.

verwandte Informationen