Anwendungen automatisch an eine Netzwerkschnittstelle binden, basierend auf dem Konto, mit dem sie gestartet wurden

1

Ich suche nach einer Möglichkeit, Anwendungen, die von verschiedenen Konten gestartet wurden, automatisch an eine bestimmte Netzwerkschnittstelle zu binden. Beispiel: Anwendungen, die mit accountA gestartet wurden, binden an eth0 und Anwendungen, die mit accountB gestartet wurden, binden an eth1. Kann ich das auf irgendeine Weise erreichen? Ich hoffe das ist leichter zu verstehen. Ich möchte dies tun, weil ich einen dedizierten Server mit jemandem teilen möchte. Es wäre von Vorteil, wenn wir kontospezifische IPs hätten, damit wir beide Dienste ausführen könnten, die denselben Port benötigen, ohne die Mühe zu haben, jede Anwendung zu binden.


quelle
Warte eine Sekunde - dies ist eine Betrugsbekämpfung einer Frage, die geschlossen wurde, ohne einen Kommentar darüber abzugeben, warum sie geschlossen wurde. Wenn wir Klarheit brauchen, lassen Sie uns danach fragen.
Paul
@ Josh, meinst du zum Beispiel, dass Firefox eth0 für user0 und eth1 für user1 verwenden würde? Können Sie in der Frage, warum Sie dies tun möchten und wie Ihr Hardware-Setup aussieht, etwas mehr Details hinzufügen?
Paul
Die Frage scheint gültig, ist aber zumindest ein bisschen inkonsistent: Eine Schnittstelle kann mehrere IP-Adressen haben, und die Bindung erfolgt normalerweise zu einer IP-Adresse, nicht zu einer Schnittstelle.
Hallo @Josh, willkommen bei Super User. Wenn Ihre Frage geschlossen ist, stellen Sie sie bitte nicht erneut. Stattdessen können Sie einfach Ihre ursprüngliche Frage bearbeiten und einen Kommentar hinterlassen, in dem Sie gefragt werden, ob Sie sie basierend auf Ihren Änderungen erneut öffnen möchten. Ich werde diese Fragen für Sie zusammenführen, nachdem Sie sie bearbeitet haben, um sie klarer zu gestalten. In Zukunft sollten Sie sie jedoch nicht erneut stellen.
nhinkle
@vtest Ich habe über virtuelle Schnittstellen gesprochen, aber es ist das Ziel, an verschiedene IP-Adressen zu binden

Antworten:

0

Zuerst müssen Sie alle Schnittstellen mit eigenen Routingtabellen konfigurieren (siehe / etc / iproute2 / rt_tables). Dann müssen Sie den Verkehr basierend auf der UID markieren. Verwenden Sie dazu das Modul ipt_owner. Fügen Sie dann Routing-Regeln für diese Marken hinzu (fwmark). Dies ist ein guter Anfang für eine solche Übung: Linux Advanced Routing & amp; Verkehrssteuerungs-HOWTO

Cougar
quelle
funktioniert das für dienste wie apache?
Es funktioniert für Apache, aber nicht für verschiedene Apache-Seiten. Apache läuft unter einer UID (normalerweise www oder wwwrun). Sie können suEXEC verwenden, um die UID Ihrer CGIs zu ändern. In diesem Fall verwenden alle über diese Skripte initiierten Verbindungen unterschiedliche Schnittstellen.
Cougar