Ssh funktioniert, kann aber nicht scp verwenden. Wie?

462
David

Wir haben die Anforderung, dass wir möglicherweise über SSH miteinander kommunizieren können, aber wir können keine Dateien mit SCP vom anderen Computer kopieren.

Zum Beispiel haben wir 2 Computer, Computer 1 und 2. Wir können tatsächlich unter Verwendung von SSH miteinander kommunizieren (getestet mit dem Terminal, Ping unter Verwendung der IP-Adresse des anderen Computers oder umgekehrt). Und wir können die Dateien des anderen auch mit SCP kopieren. Dann hatten wir jedoch die Anforderung, dass computer1 KEINE Datei abrufen oder von / an computer2 senden kann. Und dennoch können Sie sich gegenseitig mit IP-ADRESSEN (über das Terminal) gegenseitig pingen. Und Computer2 ist wie der Mastercomputer in der Lage, Dateien von Computer1 abzurufen oder zu senden, während Computer1 Computer2 über die IP-Adresse anpingen kann, aber keine Dateien von Computer1 senden oder empfangen kann.

Kann uns jemand bei dieser Anforderung helfen? Ich suche überall im Internet und kann trotzdem keine Lösung finden.

Und welche Codes sollte ich verwenden?

Unser Thema ist alles über IPTABLES, aber dann kann ich nicht die Logik der Verwendung von IPTABLES sehen oder vielleicht weiß ich nicht, wie ich es konfigurieren soll, oder gibt es vielleicht andere Lösungen, die Sie vorschlagen können?

BETRIEBSSYSTEM: Linux Centos für beide Computer

Vielen Dank. Das wäre eine große Hilfe für mich.

0
Was meinst du mit "gegenseitig mit SSH pingen"? Was ist mit "ComputerX kann das oder das"? Ich frage, weil Sie im Zusammenhang mit SSH lieber einen * Benutzer * (identifiziert durch sein Login) blockieren oder gewähren. Beachten Sie auch, dass selbst wenn Sie SFTP- und SCP-Subsysteme irgendwie blockieren, die Möglichkeit, "cat" oder einige andere Tools auf der Remote-Seite auszuführen, ausreichend ist, um alle Dateien zu erhalten, auf die Sie Lesezugriff haben. Ein Benutzer, der eine Verbindung von Computer1 zu Computer2 herstellt, sollte für Computer2 sehr eingeschränkt sein, um keine Datei abzurufen. Daher sollte "in der Lage sein, sich miteinander zu verständigen". Bitte [bearbeiten] die Frage. Kamil Maciorowski vor 6 Jahren 1
Ich habe es jetzt schon für genauere Details bearbeitet. Ich erkläre hier, dass der andere Computer daran gehindert werden muss, Dateien von dem anderen Computer zu erhalten / zu senden. Ich weiß nicht, wie ich dieses Ding konfigurieren soll. David vor 6 Jahren 0
SCP verwendet SSH, es ist wie eine Erweiterung / ein Modul von SSH. Alles wird über SSH gemacht. Was Sie versuchen, ist mit iptables unmöglich, da scp denselben Port wie ssh verwendet und ob Sie beides oder keinen blockieren können. Eine andere Lösung ist die Konfiguration von `sshd_config`. Fanatique vor 6 Jahren 1
`iptables` auf Computer2 kann Computer1 blockieren, wenn versucht wird, eine SSH-Verbindung zu Computer2 herzustellen. Es wird jede solche Verbindung blockieren; Sie können SCP nicht einfach alleine blockieren, da die SSH-Verbindung standardmäßig verschlüsselt ist und Sie nicht von außen erkennen können, welches Subsystem verwendet wird. Dadurch wird auch der Teil des "Anderen" in der "Fähigkeit, durch SSH miteinander zu kommunizieren" ungültig, was auch immer es bedeutet. Kamil Maciorowski vor 6 Jahren 0
Sehr schön erklärt. Was empfehlen Sie, welche Art von Konfiguration sollte ich aus der obigen Erklärung verwenden? David vor 6 Jahren 0
Ist das ein echtes Problem oder eine Aufgabe? Ich kann mir eine Reihe anderer Möglichkeiten zum Kopieren von Dateien zwischen einer Fernbedienung und meinem Computer vorstellen, wenn ich `ssh` ohne` scp` verwenden kann (z. B. mit netcat oder mit tar). Wenn das Ziel darin besteht, das Kopieren von Dateien zu verhindern, während `ssh 'Zugriff gewährt wird, ist dies nahezu unmöglich - es gibt zu viele Lücken, um sie alle zu verstopfen. dirkt vor 6 Jahren 0

1 Antwort auf die Frage

0
Lewis M

Ich möchte hier noch einmal darauf eingehen, dass ich Sie verstehe.

Computer2 muss in der Lage sein, in Computer1 zu ssh.

Computer2 muss in der Lage sein, Dateien auf Computer1 abzulegen und Dateien von Computer1 mithilfe von scp abzurufen.

Computer1 darf nicht in Computer2 einbinden können.

Computer1 darf nicht in Computer2 scpfen können.

Wenn die obigen Angaben zutreffend sind, haben Sie mehrere Optionen.

Eine Option ist die Verwendung von SSH-Tasten. Nehmen Sie an, dass die gleiche Benutzeranmeldung sowohl auf Computer1 als auch auf Computer2 verwendet wird, und erstellen Sie ein öffentliches / privates Schlüsselpaar für user-foo auf Computer2. Führen Sie als Benutzer-foo auf Computer2 den folgenden Befehl aus:

ssh-copy-id Computer1 

Sie werden aufgefordert, das Kennwort von user-foo auf Computer1 einzugeben. Sobald dies jedoch erledigt ist, kann user-foo von Computer2 aus in Computer1 wechseln, ohne nach einem Kennwort gefragt zu werden.

Sie können die Kennwortauthentifizierung für Computer2 durch Festlegen deaktivieren

PasswordAuthentication no 

in der sshd_config-Datei von Computer2 und starten Sie den sshd-Dienst neu.

Die andere Option besteht darin, eine Firewall-Regel auf Computer2 einzurichten, um ssh-Verbindungen von Computer1 zu verhindern.

Hoffe das hilft

Computer2 muss in der Lage sein, in Computer1 zu ssh. Computer2 muss in der Lage sein, Dateien auf Computer1 abzulegen und Dateien von Computer1 mithilfe von scp abzurufen. *** Computer1 MUSS in der Lage sein, in Computer2 einzusteigen. *** Computer1 darf nicht in Computer2 scp. Dies ist die richtige Aussage aus meiner ganzen Erklärung. Können Sie mich bei der Konfiguration dieses Handbuchs unterstützen und welche Konfiguration sollte ich verwenden? Danke im Voraus David vor 6 Jahren 0
Wie Fanatique sagte, ist scp auf ssh aufgebaut. Und wie Kamil Maciorowski sagte, gibt es mehrere Möglichkeiten, Dateien zu übertragen, für die scp nicht erforderlich ist. Wenn Sie zum Beispiel verhindern möchten, dass Benutzer @ Computer1 die Datei / etc / passwd von Computer2 durch Deaktivieren von scp kopiert, kann Benutzer @ Computer1 weiterhin ausgeführt werden Lewis M vor 6 Jahren 0
Entschuldigung, ich wollte das nicht bald posten. :) Lewis M vor 6 Jahren 0
Müssen Kommentare herausfinden. :) Jedenfalls kann Benutzer @ Computer1 "ssh Computer2 cat / etc / passwd> / local / copy / of / Computer2 / passwd" ausführen und trotzdem eine Kopie davon erhalten. Wenn man also scp verhindert, aber trotzdem ssh zulässt, scheint man sich nichts zu kaufen. Lewis M vor 6 Jahren 0
Okay, ich verstehe, danke für diese informative Antwort .. Was können Sie empfehlen, Dateien mit Einschränkungen vom anderen PC zu übertragen? David vor 6 Jahren 0