• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Nur ausgehende Verbindungen für ein Program blockieren

sgn

Newbie
Hallo,

ich suche eine Möglichkeit nur ausgehende Verbindungen für nur ein bestimmtes Programm zu blockieren. Ich habe mit ufw angesehen, finde da aber zunächst keine Lösung. Da das ganze auf einem Raspberry Pi-Server funktionieren soll, will ich nicht wild herumexperimentieren um meine SSH-Verbindung nicht auszusperren. Weiß einer wie/ob das möglich ist?

Konkreter Fall: Ich möchte per Kommandozeile Uploads zu Google Drive machen, Grive2 synchroisiert aber zwingend einen Ordner auf dem Rechner mit dem Google Drive-Konto.
 

abgdf

Guru
sgn schrieb:
Konkreter Fall: Ich möchte per Kommandozeile Uploads zu Google Drive machen, Grive2 synchroisiert aber zwingend einen Ordner auf dem Rechner mit dem Google Drive-Konto.
Dann eben den Ordner so anlegen, wie das Google Drive-Konto aussehen soll?

Alternativ die Quellen von grive2 ändern (C++). Vielleicht hat der Entwickler Lust, Dir dabei zu helfen.

Was wäre übrigens mit der Option "--ignore arg"?
 
OP
S

sgn

Newbie
abgdf schrieb:
Dann eben den Ordner so anlegen, wie das Google Drive-Konto aussehen soll?

Das geht so nicht. Das würde bedeuten, dass ich immer alles so in einem Ordner haben muss wie im Google Drive-Konto und das geht hier nicht. Ich lad die Sachen ja nicht grundlos in eien Cloud.

abgdf schrieb:
Alternativ die Quellen von grive2 ändern (C++). Vielleicht hat der Entwickler Lust, Dir dabei zu helfen.

Ist das nicht etwas übertrieben? Denke der Entwickler hatte Grund warum ER das so für richtig hielt. Das muss ja aber ich nicht gut finden.

abgdf schrieb:
Was wäre übrigens mit der Option "--ignore arg"?

Es gibt in Grive2 keine Möglichkeit nur den Upload durchzuführen. Über --ignore kann man Dateien von der Synchronisation, das heißt up- sowie download ausschließen, aber nicht von einem von beiden.
_____

Ich muss aber auch zugeben, dass ich nicht weiß ob mein Vorgehen funktionieren wird. Ist nur ein Versuch.
 

abgdf

Guru
sgn schrieb:
abgdf schrieb:
Was wäre übrigens mit der Option "--ignore arg"?
Es gibt in Grive2 keine Möglichkeit nur den Upload durchzuführen. Über --ignore kann man Dateien von der Synchronisation, das heißt up- sowie download ausschließen, aber nicht von einem von beiden.
Ich gebe zu, ich kann mir das Szenario nur bedingt vorstellen. Ich dachte daran, alle Dateien, die Du nicht neu hochladen willst, vom Upload auszuschließen und alle Dateien, die Du nicht synchronisieren willst, vom Download oder vom Löschen auszuschließen. Dann dürfte nur der Upload der Dateien übrigbleiben, die Du hochladen willst. Vielleicht. :???:
 
sgn schrieb:
Hallo,

ich suche eine Möglichkeit nur ausgehende Verbindungen für nur ein bestimmtes Programm zu blockieren....

Für ein bestimmtes "Programm" gibt es keine Möglichkeit unter Linux.

Sollte dein client ausgehend ein bestimmtes port verwenden oder sich nur mit einem bestimmten Server verbinden, dann ist die Sperre mit iptables einfach realisierbar. Dazu braucht es keine
weitere Erläuterung.

Ist das nicht der Fall, aber dein client wird unter einem bestimmten user gestartet,
dann kann iptables den traffic mit Hife von extended packet matching
mit dem modules "owner" abhängig von username bzw uid und/oder groupname bzw. gid regeln.
Siehe dazu
# iptables -m owner --help

Geht das auch nicht, dann bietet extended packet matching viele andere Möglichkeiten wie
connlimit, conntrack, usw. Da ist sicher das Passende dabei.
Ich würde die Pakete aber nicht ausgehend sperren, sondern eingehend umleiten, so das
der Server glaubt, die Aufgabe wurde wunschgemäß abgeschlossen.

Gruß
Gräfin Klara
 

marce

Guru
für den konkreten Fall dürfte das aber nicht funktionieren, da das Programm ja sicherlich auch eine Auth beim Server durchführt - und schon das ist ja eine ausgehende Verbindung.

... und der Datenverkehr an sich dürfte auch nicht nur unidirektional stattfinden, selbst man keine Daten hochladen will.
 
Oben