Blockieren Sie das SSH-Tunneling zu IP und lassen Sie nur bestimmte Benutzer zu

7

Ich muss SSH einrichten, um den gesamten Zugriff auf eine bestimmte IP an Port 555 zu blockieren. Nur eine kleine Gruppe von Benutzern sollte zu dieser IP tunneln dürfen. Derzeit habe ich die folgenden Sachen in meiner sshd_config

Match User bob
        PermitOpen 1.2.3.4:555 5.6.7.8:555

Die Frage, die ich habe, ist, wie ich allen anderen Benutzern den Zugriff auf diesen Tunnel verweigere. Ich sehe kein Denyopen- oder Restrictopen-Ding in sshd_config.

Pratik Amin
quelle

Antworten:

6

Sie können dies mit einer Firewall auf der SSH-Box tun:

iptables -A OUTPUT -p tcp -d 1.2.3.4 --dport 555 -m owner --uid-owner bob -j ACCEPT
iptables -A OUTPUT -p tcp -d 1.2.3.4 --dport 555                          -j REJECT
MadHatter
quelle
Einfach ausprobiert, funktioniert!. Vielen Dank!
Pratik Amin
+1 Dies ist sogar noch besser als die SSH-Lösung, die nur SSH einschränkte und keine Programme, die über SSH ausgeführt wurden.
Lekensteyn
11

Deaktivieren Sie TcpForwarding standardmäßig für alle Benutzer:

AllowTcpForwarding No

Und machen Sie eine Ausnahme für den Benutzer bob:

Match User bob
        AllowTcpForwarding Yes
        PermitOpen 1.2.3.4:555 5.6.7.8:555
Lekensteyn
quelle
Ich denke, das OP möchte das Tunneln an einen anderen Ort als diesen zulassen.
Geekosaurier
Von man sshd_config: "PermitOpen: Gibt die Ziele an, an die die TCP-Portweiterleitung zulässig ist. [..] Mit dem Argument" any "können alle Einschränkungen aufgehoben und Weiterleitungsanforderungen zugelassen werden. Standardmäßig sind alle Portweiterleitungsanforderungen zulässig. ", Das ist meine Interpretation seiner Frage.
Lekensteyn
Richtig, aber meine Interpretation ist, dass das OP PermitOpen !1.2.3.4:555standardmäßig nicht will AlloqTCPForwarding off. Ich denke, wir warten auf die Klärung.
Geekosaurier
Entschuldigung, ich möchte also: Alle Benutzer können überall tunneln, AUSSER für 1.2.3.4.5: 555. Nur bestimmte Benutzer sollten dort tunneln dürfen. Das Problem bei dieser Lösung ist, dass wenn ich dann Match User mache {alle Benutzer hier eingeben} AllowTCPForwarding Ja Sie haben auch Zugriff auf diese IP. Davon abgesehen ist es immer noch eine sehr gute Antwort :) Es könnte sehr wohl Firewall-Regeln auf der anderen Seite brauchen.
Pratik Amin