Ich besitze einen Computer mit SSH, auf den ich meinen Freunden Zugriff gewähren möchte, möchte jedoch nicht, dass sie meine Internetverbindung über SSH-Tunnel nutzen (obwohl ich dies gerne selbst tun würde). Gibt es eine Möglichkeit, ein Protokoll darüber zu führen, wann SSH-Tunnel erstellt werden und von welchen (lokalen) Benutzern oder, falls dies nicht möglich ist, nur einigen Benutzern dies zu ermöglichen?
13
Antworten:
Wenn Ihre Freunde in der Lage sind, SSH auf Ihren Computer zu übertragen, belegen sie einen Teil Ihrer Bandbreite und können den Zugriff auf Ihre Internetverbindung daher nicht vollständig blockieren.
Abgesehen davon besteht eine Lösung darin, zu begrenzen, was Ihre Freunde mit Ihrer Verbindung tun können. Sie könnten eine Firewall einrichten, die die IPs Ihres Freundes auflistet und alles andere auf die schwarze Liste setzt. Auf diese Weise könnten Ihre Freunde SSH auf Ihren Computer übertragen, aber von dort aus könnten sie keine andere IP als ihre eigene erreichen.
Ich habe nie eine benutzerspezifische Setup Firewall selbst, aber ich glaube , dass es möglich ist , mit erreichen IPTables . Denken Sie auch daran, dass Ihre Benutzer immer noch viel Bandbreite verbrauchen können, indem Sie große Dateien auf Ihren Server hochladen. Wenn Sie dies ausdrücklich verhindern möchten, müssen Sie die Bandbreite pro Benutzer begrenzen .
quelle
Sie möchten sicherstellen, dass / etc / ssh / sshd_config enthält
und dann am Ende der Datei setzen
Auf diese Weise können Sie und nur Sie nach Herzenslust weiterleiten, aber wie João sagte, können Sie nicht verhindern, dass sie ihre eigenen Programme ausführen, es sei denn, Sie deaktivieren auch den Shell-Zugriff.
quelle
Beachten Sie, dass Sie zwar die TCP-Weiterleitung per sshd deaktivieren können, aber noch viel weiter gehen müssen, um die ausgehenden Aktivitäten Ihrer Benutzer einzuschränken. Ihnen eine Muschel zu geben bedeutet, ihnen viel Kraft zu geben.
Wenn sie beispielsweise Dateien auf dem Server scpen und Dateien in / home ausführen können, können sie einfach eine pppd-Binärdatei hochladen und damit PPP über SSH ausführen. Wenn Sie eingehende Verbindungen zulassen, können sie
/usr/sbin/sshd -p 9999 -f special_sshd_config
Ihren Server einfach über diese SSHD ausführen und verwenden.Möglicherweise möchten Sie sich mit dem Eigentümer-Modul von iptables (man iptables, suche nach Eigentümer) und den Chroot-Gefängnissen befassen, aber dies ist wirklich schwer zu lösen, ohne die Shell-Erfahrung zu beeinträchtigen.
quelle
Ich habe nur die Möglichkeit, das Tunneln auf Systemebene zu deaktivieren.
Bearbeiten Sie / etc / ssh / sshd_config und ändern Sie / add
Beachten Sie, dass Benutzer beim Shell-Zugriff nicht daran gehindert werden können, ihre eigenen Binärdateien zum Weiterleiten von Verbindungen zu verwenden.
quelle
Dies wurde auch bei serverfault angefragt /server/181660/how-do-i-log-ssh-port-forwards und es gibt einen Patch: http://blog.rootshell.be/2009/ 03/01 / weiterleitung von ssh im auge /
quelle
Erste Iteration:
Deaktivieren Sie die ssh-Weiterleitung für sie. in ssh
Sie aktivieren IPSec für sich und VPN für Ihren Server. IPSec befindet sich auf Netzwerkebene und wird daher von den SSH-Anwendungseinstellungen nicht beeinflusst.
quelle